Hallo Markus, Tuesday, July 22, 2003, 10:19:22 AM, you wrote:
MH> ich will folgendes: MH> Der Client soll ein cookie bekommen: MH> darin soll die session_id, lifetime, domain, und ein counter MH> gespeichert sein. MH> Diese Daten soll der Benutzer auf der ersten Seite vor dem ausfüllen MH> eines Forms bekommen. -->> form.php : MH> in etwa so MH> <?PHP MH> ini_alter("session.use_cookies","1"); MH> ini_alter("session.cookie_lifetime","31536000"); MH> ini_alter("session.use_trans_sid","1"); MH> ini_alter("session.cookie_domain","www.wetterbote.de"); MH> $time = mktime()+31536000; MH> session_start(); MH> session_register("time","SessionID"); MH> $SessionID=session_id(); MH> session_set_cookie_params(31536000,"/tmp",$time ); MH> session_set_cookie_params(int lifetime [, string path [, string MH> ... MH> nach dem ausfüllen des Forms werden die Daten MH> Submited und mit $_POST nach danke.php übergeben, MH> und in eine mySQL Datenbank geschrieben. MH> Im Augenblick bekomme ich nur MH> lifetime: 0 MH> path: / MH> domain: MH> secure: MH> bzw nur die SessionID zurück. MH> in die Tabelle mysite_access_tbl sollte MH> nun auch die cookie vars geschrieben werden MH> anstatt auf /tmp zu landen. MH> Als erstes will ich dann testen ob der Benutzer MH> bekannt ist und innerhalb der letzten x Sekunden schon mal was hier abgesendet MH> hat.(was wiederum einfach ist wenn ich das mit den cookies geschnallt habe) MH> Sinnvoll fände ich auch, dass der Benutzer bei weiteren Besuch MH> den alten Cookie überschrieben bekommt, oder ist MH> das Standard? MH> Grüße Markus Also um ganz ehrlich zu sein, wozu willst du die Sessionhash bitte als Cookie versenden? Mach es per "trans_sid" und gut ist! Dann hast du auch keine Probleme mit Clients die überhaupt keine Cookies akzeptieren, was eine ganze Menge ist! Und wie ich schon in meiner vorherigen Mail geschrieben habe, machst du dir das hier ziemlich schwer! Man kann die Werte der Session direkt in dem Array schreiben < $_SESSION['key'] = "value" >. Da muss man nix definieren oder sonst was, es spart Zeit und nerven! Vorher sollte man aber, wenn es noch nicht geschehen ist, < session_start() > ausführen! Ich habe in meinen PHP Programmen immer ein < ob_start() > als ersten Befehl, da ob_start den kompletten output dann buffert und Cookies und der gleichen immer noch oben in den Header setzt, egal wann und wo du die Cookies in deinem Code setzt! Außerdem brauchst du dich nicht um die Session-ID zu kümmern, da diese automatisch generiert und ebenso automatisch zugewiesen wird! Das heißt du hast nach deinem Dateiwechsel einfach alle Variablen verfügbar - fertig! Das heißt ich würde wenn überhaupt nur den Counter als Cookie absetzen und den Rest per Session über trans_sid ( Also als Anhang an der Datei ) verwalten. Außerdem würde ich auch nichts an der Lifetime der Session ändern, da es unsinnig ist, meiner Meinung nach, eine Session länger als 15 Minuten ohne Aktivität gültig zu halten. Das würde so aussehen, als Beispiel: <?php ob_start(); session_start(); $_SESSION['var1'] = "value1"; $_SESSION['var2'] = "value2"; [...] restlicher Code ?> -- Best regards, Sascha mailto:[EMAIL PROTECTED]
smime.p7s
Description: S/MIME Cryptographic Signature