php Sessionvariable mit Javascript setzen?
Jörg
- session
Hallo,
geht das? Mit JS eine php-Sessionvariable setzen oder ändern? Oder bin ich da auf dem Holzweg?
Jörg
Hallo Jörg,
geht das? Mit JS eine php-Sessionvariable setzen oder ändern?
Oder bin ich da auf dem Holzweg?
Holzweg. 😀
Javascript läuft auf dem Client-Rechner, PHP auf dem Webserver. Und das auch noch zeitversetzt.
Du kannst mit Javascript höchstens einen URL-Parameter setzen, der beim nächsten Request vom PHP-Script ausgewertet wird und zum Setzen der gewünschten Session-Variablen führt. Aber direkt kann es nicht funktionieren, weil es zwei verschiedene Welten sind.
Möge die Übung gelingen
Martin
Hallo Jörg,
geht das? Mit JS eine php-Sessionvariable setzen oder ändern?
Oder bin ich da auf dem Holzweg?Holzweg. 😀
Hi Martin,
ach ja, danke für die Erinnerung daran...
Würde höchstens asynchron, sprich mit Ajax funktionieren...
Na ok, dann kann ich den Request in diesem Fall auch direkt, sprich mit php durchführen.
Jörg
Hello Jörg,
ich fasse das jetzt mal als Frage an Radio Eriwan auf:
Antwort: im Prinzip Jein!
Wir befinden uns im Client-Server-Modell. Änderungen im lokalen Client (Frontend) haben keine direkte Auswirkung auf das entfernte Ende (Server). Dazu bedarf es eines Requests, hier per HTTP/s.
Alle per HTTP/s an PHP übermittelten Request-Parameter und Daten landen je nach dafür zuständigem Header oder MIME-Kontext in den Arrays
dort werden sie für äußere Zugriffe unerreichbar "sicher" als Variablen (Arrayelemente) gelagert, bis das Script endet. Es obliegt nun dem Programmablauf im Script, welche Elemente Du davon wann in $_SESSION übertragen willst.
Dort stehen sie dann ab dem Moment zur Verfügung und werden beim Scriptende oder auf Befehl (nur umständlich möglich) in der Sessiondatei gespeichert. Von dort werden sie beim nächsten session_start() wieder ins Array $_SESSION geladen.
Du warst also nicht auf dem Holzweg, sondern auf dem "Kaugummiweg" ;-)
Wenn Du also per JavaScript Werte im $_SESSION-Array ändern willst, benötigst Du einen erfolgreichen Request dafür, z. B. mittels AJAX und musst im zugehörigen Request-Ziel wie beschrieben vorgehen.
geht das? Mit JS eine php-Sessionvariable setzen oder ändern? Oder bin ich da auf dem Holzweg?
Glück Auf
Tom vom Berg