Homepage selbermachen 7.852 Themen, 35.619 Beiträge

cookies Setzen unter Php mit Setcookie

ich-esel / 5 Antworten / Baumansicht Nickles

Ich kann mit PHP über setcookie Cookies Setzen.


Wie kann ich nun auf der Selben Seite sehen das der Cookie überhaupt angenommen worden ist.


Sprich wie kann ich sehen ob der Browser Cookies haben will.

bei Antwort benachrichtigen
philipps ich-esel „cookies Setzen unter Php mit Setcookie“
Optionen

Effektiv hat die SetCookie Methode nur die Funktion den Cookie Header zu dem HTTP reply für Dein Skript hinzuzufügen. Sie hat also die gleich Funktion wie das manuelle hinzufügen des Headers via das Headers array.

Merke: HTTP ist ein statusloses Protokoll, deswegen ist es nicht möglich IM SELBEN ARBEITSGANG zu überprüfen ob der Cookie nicht blockiert wurde. Im darauffolgenden Skript musst Du einfach überprüfen ob der Cookie vom Browser zurückgesandt wird, oder eben nicht.

bei Antwort benachrichtigen
ich-esel Nachtrag zu: „cookies Setzen unter Php mit Setcookie“
Optionen

Das habe ich mir gedacht danke für die klare absage.
Gibt es keine möglichkeit. Ein bit ne abfrage oder sonst irgent eine Scheiß mit dem ich das festellen kann. ob ich cookies setzen kann
so änlich wie bei java

nojava und ich weis das es kein Java gibt.

Danke

bei Antwort benachrichtigen
philipps ich-esel „cookies Setzen unter Php mit Setcookie“
Optionen

Doch es gibt eine Möglichkeit, diese wird Dich jedoch nicht weiter bringen, da sie den eigentlich Zweck verfehlt und außerdem auf Client-Seite stattfindet.

Mit Hilfe von JavaScript kannst Du einen Cookie setzen und GLEICH DANACH checken ob er im Browser gespeichert wurde. Wie gesagt, das bringt Dich aber nicht weiter, da Du ja in einem Skript wissen musst, ob der Cookie angekommen ist, oder nicht.

Wie ich meinem bisherigen Post aber schon erwähnt habe, es reicht doch vollkommen aus (und wird in der Praxis auch so umgesetzt) das Du im Skript, welches auf das Cookie-setzende Skript folgt, checkst ob der Cookie zurückgekommen ist ($_COOKIES array in PHP)

bei Antwort benachrichtigen
xafford philipps „Doch es gibt eine Möglichkeit, diese wird Dich jedoch nicht weiter bringen, da...“
Optionen

Dein Ansatz geht schon so, daß die Seite selbst per JavaScript prüft, ob Cookies angemonnen werden und dann vom Server das Cookie holt mittels DOM oder XML. Dies ist aber nicht ganz trivial.

function testCookie(){
// hier testweise Cookie per JS setzen, wenn erfolgreich, dann true zurück geben
}

function setCookie(){
  if(testCookie()){
    var cscript=document.createElement("script");
    cscript.src="dummy.php"; // Dummyphpseite auf dem Server, die nur ein Cookie überträgt
    cscript.type="text/javascript";
    document.getElementsByTagName("head").item(0).appendChild(cscript);
    return true;
  }
  return false;
}

Pauschalurteile sind immer falsch!!!
bei Antwort benachrichtigen
ich-esel xafford „Dein Ansatz geht schon so, daß die Seite selbst per JavaScript prüft, ob...“
Optionen

Ja jetzt sehe ich überhaupt erst mein Problem. !!!!
Danke ich sehe klarer. erst läuft auf dem Server PHP und dann auf dem Client Java. und Php hat den Cookie Bereits. Ja ich merk das ist alles nicht so einfach ;)
Die Idee gefält mir danke für die mühe und danke für die Lösung wäre nicht drauf gekommen. Keine Ahnung ob ich den Aufwand betreiben will ist aber immer schön eine Lösung in der Tasche zu haben.

Danke

bei Antwort benachrichtigen