ips und cookies?

hallo schon wieder :).

habe jetzt ein problem mit cookies. wie immer funktioniert es auf meinen webseiten, nur im ipsymcon nicht.

ich versuche folgendes:

<?php
$AktuellesDatum = date(„d.m.Y H:i:s“);
$Gueltigkeit = time()+86400;
setcookie(„ErsterBesuch“, $AktuellesDatum, $Gueltigkeit);
?>

aber es wird kein cookie erstellt. hat jemand von euch eine idee?!?

kann es sein, das ipsymcon immer eine session braucht um cookies nutzen zu können?

Hallo,

Diese Gueltigkeiten verlegt man nicht auf des Users Festplatte, damit wird es manipulierbar. Was meinst Du, warum ich in den Auth / Session Klassen genau das anders handhabe? Aber erfinde das Rad ruhig neu.

Gruss Torro

mir geht es darum ein paar informationen zwischenzuspeichern, das wenn ich wieder auf die seite komme, diese geladen und verwendet werden.

ich beschreibe dir mal was ich vorhabe, wenn du einen besseren weg kennst, dann nur her damit. ich lerne gerne dazu ;).

wenn ich auf die seite komme und mich anmelde, dann werde ich authtifiziert und die session gestartet. dazu wird ein cookie abgelegt das die daten (benutzername und passworthash) ablegt.

beim nächsten aufruf der seite wird geschaut, ob der cookie da ist. wenn ja, dann wird mit den zwischengespeicherten daten angemeldet und die session gestartet.

wenn kein cookie da ist, dann wird halt der logon angezeigt.

hast du eine bessere idee und ein paar infos dazu?

danke …

Habe es gerade ausprobiert:


setcookie("ErsterBesuch", "aaa", time()+600);

Klappt prima. Habe das Cookie im LiveHTTPHeader Addin vom Firefox gesehen und auch in meiner Cookieliste ist es drin.

Um nochmal auf die Bedenken von Torro einzugehen. Die Sache mit der Zeit, die du mit übergibst, ist wie er schon zu Recht gesagt hatte manipulierbar. Wenn du dadurch einen Timeout von z.B. 1 Tag realisieren wollen würdest, könnte jeder das Cookie vor dem Anmelden verändern und deinen Hash somit immer gültig machen, ohne ein Passwort zu haben. Meistens wird das ganze über Sessions gelöst, die übrigens auch automatisch Cookie setzen können, die dann wiederum im Backend (z.B. DB) rückgespeichert werden mit RemoteIP/Agent ect. um solche Sachen wie Session/Cookie Stealing zu unterbinden. Dazu gibt es aber im Netz sehr viele Beispiele/Tutorials und dafür ist das Forum hier auch etwas falsch.

paresy

gut, um die zeit usw. geht es erstmal nicht. kommt später noch alles. das war eh eher zufall das, das da drin war - das war nur ein beispiel aus dem web.

wenn ich es so mache wie du beschrieben hast pareys, dann klappt das. jedoch bekomme ich das cookie nicht mit:

echo($_COOKIE[‚ErsterBesuch‘]);

ausgelesen. ich bekomme da die fehlermeldung:

Notice: Undefined index: ErsterBesuch in E:\programme\IP-Symcon\web est.php on line 6

klingt so als wenn die daten hier in einen array zurückkommen sollen und ich das falsch anspreche. wie wird das richtig angesprochen?

@peibling

RTFM [b]www.php.net[/b]

Und wenn du dir dort mal alles zu den Cookies in der PHP Doku durchliest (ja, dazu gehören auch die Kommentare) wirst du bestimmt verschiedene Abfragemöglichkeiten finden… und es wird sicherlich irgendeine dabei sein die funktioniert… auch mit dem Webinterface von IPS.

bevor ich in der community post, schaue ich in der tat auch bei php.net vorbei - ja ich nutze sogar google!

man stelle sich vor, zuvor nutze ich sogar die boardsuche und das wiki.

ich gehe grundsätzlich davon aus, das das was ich machen möchte vielleicht mal nicht so ganz abgedreht ist und auch schon andere sich damit auseinadergesetzt haben. dafür ist ja die große onlinebibliothek - wie hieß die noch gleich?!? achja, google. genau, dafür ist die ja perfekt.

du wirst lachen, fast alles von dem habe ich sogar schon etliche hundertmal gemacht und man stelle sich vor, es funktioniert sogar!

doch, wenn man mal meine letzten postings liest und dann eins und eins zusammenzieht, wird man sich schon denken können an was ich gerade bastel. genau hier ist mein problem, unter ips ist irgendwie alles anders. ich kann es mir nicht genau erklären, denke es liegt daran, das viele der webserver für die ich schon webinterface gebaut habe php 4.x einsetzen und ips schon die 5er version.

das ich immer nachfragen muß nervt mich genauso, vor allem unterbricht es massiv den arbeitsfluss. du kannst dir sicher sein, das ich nicht frage weil ich keine lust habe mich damit auseinanderzusetzen, sondern weil ich ein problem habe.

danke für dein/euer verständnis!

p.s.: meintest du einen bestimmten kommentar, oder hast du eine idee?

p.p.s.: ich suche mir auch schon gerade ein buch für php5 und mysql5 raus ;).

Nun… Olli meint bestimmt dieses Konstrukt:

echo($_COOKIE[‚ErsterBesuch‘]);

Wenn du Array + Ausgeben zusammengezählt hättest bei google wärst du bei Eintrag 3 auf folgendes gestoßen:

was dir sagt, dass du mit folgendem besser beraten wärst.

print_r($_COOKIE); oder print_r($_SERVER);

Und schon würdest du sehen, dass IPS garnicht so anders ist, weil IPS genau dasselbe PHP verwendet wie jeder WebServer. Das einzige ist, dass du kein Multipart/Formdata via POST mit IPS empfangen kannst. Alles andere geht.

Aber du kannst ja gerne in deiner Apache/PHP Combo deinen Code testen und uns dann des besseren belehren :wink:
Ist nicht böse gemeint… aber wie Olli sagte… ein wenig Google befragen klappt meistens, wie du hier und hier ja gezeigt hast :smiley:

paresy

nicht ganz, ich meinte dieses Konstrukt in Verbindung mit IPS:

print_r($_SERVER[‚HTTP_COOKIE‘]);

cool. danke olli. genau das war es. dann komme ich endlich weiter. das hatte ich aber nirgendwo gefunden (oder vielleicht überlesen).

ich hatte mir aber sowas schon fast gedacht. paresy hatte ja den tip mit dem firefox die cookies zu untersuchen, da habe ich mir des developertool vom firefox runtergeladen und mir die cookies angeschaut und auch das mit HTTP_COOKIE gesehen, ich hatte dann aber $SERVER[‚HTTP_COOKIE‘] versucht (dummerweise ohne unterschtrich), habe auch beispiele gefunden die auch $_HTTP_COOKIES zeigten, aber alles funktionierte bei mir nicht.

hätte eigentlich klar sein müssen das das mit unterstrich ist. auf jeden fall danke für deine hilfe.

p.s.: wo hattest du das gefunden? auf php.net unter cookies habe ich das nicht gefunden?