PHP-Funktionen in Modulen

Gesperrt
jensfriedr
Beiträge: 6
Registriert: Fr 7. Jan 2005, 12:09
Kontaktdaten:

PHP-Funktionen in Modulen

Beitrag von jensfriedr » Fr 7. Jan 2005, 12:32

Im Suchmodus habe ich keinen entspr. Eintrag gefunden, deshalb das Thema als Hoffnung.

Meine Frage:
Habe im Modul mehrere DB-Abfragen und möchte sie deshalb in Funktionen auslagern. Leider funktionieren in diesen Funktionen die Abfragen nicht mehr.

Liegt es vielleicht daran, dass die Funktionen die Contenido-Variablen ($client, $lang etc.) nicht kennen?

Wie kann ich dem Entgegenwirken?

Vielen Dank für Eure Hilfe!!!

emergence
Beiträge: 10645
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Fr 7. Jan 2005, 12:33

wie sieht den deine funktion aus ?
was soll sie machen ?
wie soll das ergebniss sein ?

vielleicht hilft dir auch das weiter
-> http://www.contenido.org/forum/viewtopi ... 4776#34776
*** make your own tools (wishlist :: thx)

jensfriedr
Beiträge: 6
Registriert: Fr 7. Jan 2005, 12:09
Kontaktdaten:

Beitrag von jensfriedr » Fr 7. Jan 2005, 12:55

Die Funktion bekommt zwei Parameter übergeben. Diese werden in die Select-Abfrage integriert. Danach wird der Datensatz aus dem Object-Statement ($db) ausgelesen und aus der Fkt. gegeben. Eine Var.-Initialisierung ($var) bekommt die Rückgabe.
Nur leider funktioniert dies nicht. Die $var wird nicht initialisiert. Ohne Funktion (also sequenziell) klappt es einwandfrei. Entschuldige, dass die Code-Syntax nicht einwandfrei ist. Habe sie, da ich gerade in der Schule am Computer bin, aus dem Kopf gegriffen.

<?php

function Abfrage_1 ($param1, $param2){

$query="Select *
From ".$cfg["tab"]["content"]." "
Where "".&client." ... "$param1.".....".$param2."....;";

$db=....
while(){
$UPunkt=$db->f("value");
}

return $UPunkt;
}

$var=Abfrage_1("2","40");

?>

emergence
Beiträge: 10645
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Fr 7. Jan 2005, 13:00

also du brauchs auf alle fälle in der funktion ein
global $cfg;
die db klasse solltest du auch initialisieren...
eventuell mittels
$db = new Db_Contenido();

siehe obrigen link
*** make your own tools (wishlist :: thx)

jensfriedr
Beiträge: 6
Registriert: Fr 7. Jan 2005, 12:09
Kontaktdaten:

Beitrag von jensfriedr » Fr 7. Jan 2005, 13:27

Mmmh ... erscheint logisch!

Vielen Dank!

Werde es nachher gleich ausprobieren.

Gesperrt