Mailinglisten-Archive |
Hallo Dirk, hallo Liste,
> die Zeile $this->url() liefert mir die Fehlermeldung "Object this not
> found".
>
> Ich habe lediglich einen Ausschnitt aus loginform.ihtml (aus der phplib)
> in meine
> eigene Seite hineinkopiert. Die Seite fängt also mit page_open, etc. an.
>
> Kann die Fehlermeldung daher kommen, oder woran liegt das?
Die Datei loginform.ihtml wird normalerweise durch die Funktion
auth_loginform() aufgerufen.
Diese Funktion ist ein Teil der Klasse Auth. Und in PHP ist die
Variable $this innerhalb eines Objektes eine Referenz auf sich selbst.
Da Du die Funktion vermutlich ausserhalb eines Objektes verwendest,
kann PHP sie nicht finden. Damit sie das tut, muss also
$objekt->url() aufgerufen werden .
Konkret: die Funktion $this->url() ist in loginform.ihtml eine
Referenz auf $auth->url(). Wenn also Deine Seite mit
page_open(array("sess"=>..., "auth"=> geöffnet wurde, kannst
Du die Funktion mit $auth->url() aufrufen.
track_vars - Egon hat natürlich recht, dass das in der (deutschen)
Doku steht (wer sich in der Doku so gut auskennt wie Egon
erwirbt hiermit den Anspruch auf ein Lüpi, einzulösen in
Lüneburg).
"track_vars boolean
Wenn dieser Schalter aktiviert ist, werden GET, POST und Cookie
- Werte in den Umgebungsvariablen-Arrays $HTTP_GET_VARS,
$HTTP_POST_VARS und $HTTP_COOKIE_VARS abgelegt."
PHP importiert im Regelfalle ja alle Variablen aus diesen
Variablenräumen in die globalen Variablen. Und die PHPlib
unterstützt zusätzlich noch einen Session- bzw. User-
Variablenraum. Und damit diese sich nicht konsequent
gegenseitig überschreiben, möchte die PHPlib gerne den
Schalter track_vars aktiviert haben. Verständlich, finde ich.
Grüße, johann
ps: ich hatte Dir als PM gemailt, weil die Liste eh schon
soviel Traffic hat. Aber Du hast schon recht, vielleicht
interessierts auch andere.
php::bar PHP Wiki - Listenarchive