If - Funktion Erfolgreich?!?
Michael
- php
1 ChrisB0 Der Martin0 Edgar Ehritt
Hallo,
Ich will ne funktion machen die irgendwie so aussehen soll:
if( * )
{
echo "erfolgreich";
}
else
{
echo "fehlgeschlagen";
}
* Hier soll das da hin: setcookie("cookie", "Wie gehts?");
Die if funktion soll darauf reagieren ob das cookie gespeichert worden sit.
Wie mach ich das am besten?
Also praktisch: If-Cookie gespeichert -> Erfolgreich
If-Cookie nich gespeichert -> Fehlgeschlagen
Hi,
* Hier soll das da hin: setcookie("cookie", "Wie gehts?");
Die if funktion soll darauf reagieren ob das cookie gespeichert worden sit.
Das kann sie gar nicht - weil das PHP-Script zur Laufzeit gar nicht wissen kann, ob der Client den Keks haben moechte oder nicht.
(Wie der Rueckgabewert von setcookie aussieht, verraet dir das Handbuch - und die Tatsache, dass du obigen Schluss daraus natuerlich nicht ziehen kannst, haette es dir ebenfalls schon sagen koennen.)
Wie mach ich das am besten?
Beim naechsten Request durch den Client (der vom aktuellen natuerlich absolut unabhaengig ist), kannst du dir anschauen, ob er dir einen Cookie mitgesendet hat oder nicht.
MfG ChrisB
Hi,
if( * )
{
echo "erfolgreich";
}
else
{
echo "fehlgeschlagen";
}* Hier soll das da hin: setcookie("cookie", "Wie gehts?");
Die if funktion soll darauf reagieren ob das cookie gespeichert worden sit.
das ist prinzipbedingt nicht möglich. Mit setcookie() erreichst du ja nur, dass ein entsprechender HTTP-Header generiert wird. Dieser wird erst beim Client interpretiert, *lange nachdem* das PHP-Script zu Ende gelaufen ist. Erst wenn derselbe Client *noch einmal* eine Ressource von deinem Server anfordert, weißt du, ob er das vorher angebotene Cookie angenommen hat.
Also praktisch: If-Cookie gespeichert -> Erfolgreich
If-Cookie nich gespeichert -> Fehlgeschlagen
Hier liegt ein grundlegender Denkfehler. Im Request x kannst du ein Cookie setzen, aber erst im Request x+1 kannst du überprüfen, ob's auch angenommen wurde.
So long,
Martin
Hallo,
if( * )
{
echo "erfolgreich";
}
else
{
echo "fehlgeschlagen";
}
wenn ich Dich richtig verstanden habe, ist Dein '*' (Ausdruck), nach dem Du suchst: ![link:http://de3.php.net/manual/de/function.empty.php@title=empty]([link:http://de3.php.net/manual/de/reserved.variables.cookies.php@title=$_COOKIE])
Gruß aus Berlin!
eddi