2011-01-14 17 views
1

Kann ich auf ein Cookie zugreifen, das mit dem Cookie-Plug-In von jQuery mit PHP erstellt wurde? Ich weiß, dass Sie nicht Javascript gleich PHP oder umgekehrt gesetzt, aber im Grunde ist:PHP- und JavaScript-Cookies

$.cookie('var') = $_COOKIE['var']? 

Noch einmal, ich weiß, Sie sie nicht gleich zueinander gesetzt, aber wenn ich stellte es in jQuery und dann geh auf eine andere Seite, kann PHP darauf zugreifen? Ich habe viele Beiträge darüber gelesen, aber ich kann keine Antwort auf diesen Teil finden.

Hinweis, wenn ich in den Einstellungen von Firefox sehe, kann ich sehen, dass die Cookies da sind, also weiß ich, dass sie eingestellt sind.

+0

Ja, sie sind gleich. PHP kann Cookies behandeln, die von JS gesetzt wurden und umgekehrt. – Ben

Antwort

1

Ja.

Aber ... Klaus Hartl jQuery Cookie-Plugin (ich dies unter der Annahme ist, die Sie verwenden) defaults das Cookie des path derjenigen des aktuellen Dokuments zu setzen. Wenn die PHP-Datei, von der Sie versuchen zu antworten, sich in einem anderen Ordner befand, wäre der Cookie nicht gesendet worden.

Sie können den Pfad des Cookies gesetzt, wenn Sie das Cookie gesetzt:

$.cookie('name', val, { path: '/' }); 
+0

Warum bekomme ich dann einen undefinierten Indexfehler auf der nächsten Seite, wenn ich versuche, sie zu echotieren? – sehummel

+0

@ shummel7845 Zeigen Sie uns Ihren Code – Ben

+0

Debuggen Sie die Cookies Ihrer Seite im Browser mit nativen Tools oder einigen Erweiterungen (wie Firebug + Firecookie). Überprüfen Sie, ob der Cookie wirklich in JS gesetzt wurde. Dump PHP $ _COOKIE-Array, um alle empfangenen Cookies zu überprüfen. –

0

Die Cookies, die Sie in PHP haben die gleiche ist, dass Sie in JavaScript haben. Sie sind gleich. Cookies haben einige Optionen, um den Zugriffsbereich, die Lebensdauer usw. festzulegen. Wenn Sie ein Cookie für die gesamte Domain festlegen, wird es in PHP angezeigt.

+0

Könnte CodeIgniter (was ich verwende) sie löschen? Ich lade sofort eine Login-Seite, nachdem ich sie eingerichtet habe. – sehummel

+0

Ich weiß nicht, ob es könnte. Siehe zuerst den Kommentar von josh3736. Scheint es ist dein Fall. –