Hello,
- gibt es eine Möglichkeit die Cookies für diesen Fall auf dem Server abzulegen (ich hab session_set_cookie_params() probiert) oder wahlweise ganz auszuschalten?
Einmal wird es ja auf dem Server gespeichert, aber das reicht nicht für den verfolgten Zweck.
HTTP ist in der Grundlage ein verbindungs- und zustandsloses Protokoll. Das bedeuetet grob betrachtet, dass nach erfolgter Response des Servers auf den Request vom Client keine Verbindung mehr besteht und der Server den Client auch nicht mehr kennt. Das bedeutet also, dass er sich auch nicht merken kann für den Client.
Durch die Einführung von Cookies hat man nun künstlich eine "Wiederverbindung" und damit eine Zustandsorientierung möglich gemacht. Der Server sendet dem Client ein Cookie mit. Dieser sendet das Cookie in Zukunft bei jedem Request an die URL, von der er es erhalten hat, wieder mit.
Dadurch kann der Server feststellen, welcher Client denn da was von ihm will bzw., dass dieser schon vorher einen Request gesendet hatte. Er kann also unter dieser Kennung Daten für den Client aufheben.
Das nennt man dann "eine Session führen".
Das hat noch nichts mit "Anmeldung" und "Rechten" zu tun, wird aber immer gerne in einen Topf geworfen. Eine Sesssion kann aber für eine "Anmeldung" die Basis bilden. Dafür sind dann nur noch wenige weitere Schritte notwendig.
Alternativ zu Cookies gäbe es noch die Möglichkeit von Basic Athentication, um mit dem Client eine Session zu führen. Dann öffnet sich aber am Client das "hässliche Anmeldefenster", wenn die Authentifizierungsphase begonnen werden soll.
Liebe Grüße aus Syburg
Tom vom Berg