$php_self

Hi,
ich habe hier ein kleines Problem mit $PHP_SELF.

function func\_stichwort\_form (){
echo " 



";
}

hier kennt er das $PHP\_SELF nicht. Warum?
"Undefined variable: PHP\_SELF"

dann habe ich das $PHP\_SELF mit übergeben also:


    function func\_stichwort\_form ($PHP\_SELF){


und



    
    function func\_neu($stichwort) { 
     ...
     func\_stichwort\_form($PHP\_SELF); ...
    }




das ging auch nicht. zwar hat er nicht mehr in der Funktion gemeckert, sondern im Aufruf, dass er $PHP\_SELF nicht kennt


Ideen?
Liebe Gruesse
Steffi 

Dein Code kopiert…

<?php function func_stichwort_form ($temp){<br /> echo " 
";
}

func_stichwort_form($PHP_SELF);
?>




...ergibt bei mir folgenden Quelltext









Ohne explizite Uebergabe funktioniert es bei mir auch
nicht, allerdings bekomme ich keine Fehlermeldung!?

Gruss
Patrick

das ist dann ja auch ok, aber ich will diese Fkt dann aufrufen. aber das klappt dann nicht. dann bekomme ich beim aufruf einen fehler.
also mit uebergabe von PHP_SELF:

function func\_stichwort\_form ($PHP\_SELF){

function andere\_Funktion($stichwort) { 
 ... 
 func\_stichwort\_form($PHP\_SELF); 
und das verstehe ich nicht!!

steffi




> ...ergibt bei mir folgenden Quelltext

Ohne explizite Uebergabe funktioniert es bei mir auch
nicht, allerdings bekomme ich keine Fehlermeldung!?

Gruss
Patrick

Ich verstehe nicht so ganz was Du machen willst, daher
kann ich den Fehler auch nicht reproduzieren.

Hier rufst Du in einer Hauptfunktion eine Funktion auf, die
wiederum die Hauptfunktion aufruft?!

function func\_stichwort\_form ($PHP\_SELF){

function andere\_Funktion($stichwort) {
 ...
 func\_stichwort\_form($PHP\_SELF); 

Vielleicht kannst Du ja nochmal etwas deutlicher machen,
an welcher Stelle Du wie die Funktionen aufrufst, sodass
man versuchen kann den Fehler selbst zu sehen.

Gruss
Patrick

Lass Dir mal in der Funktion phpinfo() ausgeben.
Dann wirst Du sehen, dass PHP_SELF gar nicht mehr definiert ist.

Eine Moeglichkeit waere das:

function func\_stichwort\_form ($PHP\_SELF){
 echo " 

";
}

function andere\_func($stichwort, $PHP\_SELF) {
 func\_stichwort\_form($PHP\_SELF);
 phpinfo();
}




andere\_func($stichwort, $PHP\_SELF);

HTH
Patrick

ok, ich versuche es mal ein wenig ausführlicher:

ich habe ein php-script in dem ich mehrere Forms bearbeiten möchte.
also zb. wenn auf ‚neu‘ gedrückt wird, soll die funktion func_neu laufen
hier wird nun überprüft, ob der datensatz schon existiert, wenn ja, soll das ausgegeben werden und dann soll ein textfeld darunterstehen, wo man wieder einen neuen versuch machen kann.
wenn der DS nicht existiert wird er in die DB geschrieben und das textfeld soll auch wieder erscheinen.
diese unterschiedlichen „unterscripte“ muessen jetzt gehandelt werden.
also dachte ich, dass ich das textfeld mit zugehörigen Form in eine Funktion schreibe und die dann nur aufrufen muss. hierbei muss natuerlich der scriptname aufgerufen werden…also mit PHP_SELF hab ich gedacht…leider geht das nun ja nicht wirklich…

hm, verstanden?

steffi

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Okay, dann habe ich es einigermassen richtig nachvollzogen.
Aber den Fehler kann ich partout nicht reproduzieren.
Da steckt der Teufel wohl im Detail.

Wenn Du willst kannst Du mir Deinen Code ja mal
schicken. Vielleicht sehe ich was, was Du nicht
siehst (Vier-Augen-Prinzip).
Werde ihn auch nicht fuer meine Zwecke missbrauchen. :wink:

Ansonsten, sorry.
Gruss
Patrick

Setz einfach zu Beginn in die Funktion ein

global $PHP_SELF;

rein, dann sollte es gehen, wenn ich das alles so richtig verstanden habe. :wink:

Gruss
Patrick

danke, das wars.
Aber warum kann ich nicht einmal die variable global setzen,
damit sie im script erkannt wird. irgentwie bloed.
naja, jetzt weiss ich wenigstens, wies geht :smile:
steffi

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]