php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005-2

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 17.10.2005, 17:36  
Gast
 
Beiträge: n/a
Standard [Erledigt] Gültigkeitsdauer eines Cookies lässt sich nicht setzen

Hallo,

nach 2 Stunden Bastelei drehe ich langsam am Rad:
Ich möchte mit setcookie einen Cookie setzen, der auch über die Dauer der Sitzung hinaus gültig bleibt (wie lange ist hier erstmal egal).
Ich habe also folgenden Code geschrieben:
Code:
setCookie($this->namespace."_".$param, $this->parameter[$param], time()+3600, "/");
Das sollte eigentlich einen Cookie setzen, der genau eine Stunde gültig ist.
Wenn ich die entsprechende Seite jedoch aufrufe und mir dann im Browser (ich benutze den FireFox 1.0.7) unter "Extras|Einstellungen|Datenschutz|Cookies" den entsprechenden Cookie anschaue, so wird er auch gesetzt.
Name und Wert werden korrekt gesetzt und so lange die Session läuft, kann ich auch darauf zugreifen.
Trotzdem wird der Cookie am Ende der Sitzung sofort wieder gelöscht: Unter "Gültig bis" wird immer "Am Ende der Sitzung" angegeben.
Es kann also nicht daran liegen, dass der Cookie nicht mehr gesetzt werden kann, weil bereits ein Header gesendet wurde, denn innerhalb der Session kann ich ja auf den Wert zugreifen.
Ich habe auch das Error-Reporting auf 'E_ALL' gesetzt und erhalte keine Fehler oder Warnungen.
Im selben Projekt setze ich Cookies per JavaScript und das funktioniert wunderprächtig.
Statt mit 'time()+3600' habe ich auch mal versucht, mit 'mktime(0, 0, 0, 1, 1, 2006)' das Ablaufdatum direkt zu setzen: ohne Erfolg.
Ich habe schon das ganze Forum durchsucht und auch gegooglet: ohne Ergebnis.
Entweder stehe ich total auf dem Schlauch und ich übersehe etwas Grundsätzliches oder irgendetwas funktioniert auf meinem Server nicht richtig.
Hat irgendwer Ideen, woran es liegen könnte?
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 17.10.2005, 17:45  
Gast
 
Beiträge: n/a
Standard

Ist Dein Firefox vielleicht so eingestellt, nur Sitzungscookies zuzulassen?
 
Alt 17.10.2005, 17:51  
Gast
 
Beiträge: n/a
Standard

Nö, als Einstellung habe ich "Cookies behalten: solange sie gültig sind". Und wie gesagt, bei den Cookies, die ich per JavaScript setze funktioniert es ja tadelos.
 
Alt 17.10.2005, 18:57  
Gast
 
Beiträge: n/a
Standard

http://livehttpheaders.mozdev.org/installation.html
Die Version 0.10 habe ich gerade mit FF 1.0.7 getestet und es traten keine Fehler auf; funktionierte wie gewünscht.
Damit bekommst Du bei "Seiteninformationen" einen neuen Reiter "Header".
Was schickt Dein Server für einen Cookie-Header?
 
Alt 21.10.2005, 09:04  
Gast
 
Beiträge: n/a
Standard

Sorry, dass ich mich jetzt erst wieder melde, hatte die Woche ausser Haus zu tun...

Als Header kriege ich folgendes:

Code:
http://kreta/~joachim/sit-watch/auft..._auftraege.php

POST /~joachim/sit-watch/auftraege/liste_auftraege.php HTTP/1.1
Host: kreta
User-Agent: Mozilla/5.0 (Windows; U; Win98; de-DE; rv:1.7.12) Gecko/20050919 Firefox/1.0.7
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Referer: http://kreta/~joachim/sit-watch/auft..._auftraege.php
Cookie: liste_auftraege_quartal=4; liste_auftraege_jahr=2005; 49=1; 53=1; PHPSESSID=f5f7dcbfadbd6274956ac83160933b16
Authorization: Basic am9hY2hpbTpqb2FjaGlt
Content-Type: application/x-www-form-urlencoded
Content-Length: 19
quartal=2&jahr=2005
HTTP/1.x 200 OK
Date: Fri, 21 Oct 2005 05:58:58 GMT
Server: Apache/2.0.48 (Linux/SuSE)
Accept-Ranges: bytes
X-Powered-By: PHP/4.3.1
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Set-Cookie: liste_auftraege_quartal=2; expires=Fri, 21-Oct-2005 07:58:58 GMT
Set-Cookie: liste_auftraege_jahr=2005; expires=Fri, 21-Oct-2005 07:58:58 GMT
Transfer-Encoding: chunked
Content-Type: text/html; charset=ISO-8859-1
----------------------------------------------------------
Interessant sind dabei die Cookies "liste_auftraege_quartal" und "liste_auftraege_jahr".
Bei "expires" steht genau die Zeit des Aufrufes, obwohl ich im Skript eine Lebensdauer von 2 Stunden eingestellt habe.
 
Alt 21.10.2005, 09:15  
Gast
 
Beiträge: n/a
Standard

Ist die Einstellung der Uhr des Server vielleicht genau um diese Zeitspanne verschoben? (das wäre so eine hübsch einfache Lösung )
 
Alt 21.10.2005, 11:31  
Gast
 
Beiträge: n/a
Standard

Ich habe ja schon alle möglichen Zeitangaben ausprobiert: von wenigen Minuten bis zu einem Jahr und ich habe auch schon versucht, ein festes Datum vorzugeben, alles ohne Erfolg.

Die Server-Zeit ist aber tatsächlich um eine Stunde verschoben.

Übrigens noch mal Danke für den Tipp mit dem Tool, ich hatte mir bereits den "HeaderMonitor" installiert, das andere Tool ist aber besser...
 
Alt 21.10.2005, 12:09  
Gast
 
Beiträge: n/a
Standard

Ich habe die Seite mal von einem anderen Computer mit Mozilla 1.5 versucht, da funktioniert alles prima: der Cookie wird richtig gesetzt und wird auch beim Schließen des Browers nicht gelöscht.
In meinem Firefox habe ich aber eingestellt, dass Cookies solange behalten werden sollen, wie sie gültig sind

Also scheint es am Firefox zu liegen, aber so ein Problem müsste doch eigentlich bekannt sein?
 
Alt 21.10.2005, 13:25  
Gast
 
Beiträge: n/a
Standard

Mir ist gerade noch eine Merkwürdigkeit aufgefallen:
Im Header wurde für "expires" folgende Datum übergeben:

Code:
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Ich dachte mir, vielleicht könnte es ja daran liegen und deshalb habe ich in das HTML-Template folgende Meta-Zeile geschrieben:

Code:
<meta http-equiv="expires" content="Sun, 20 Nov 2005 11:22:15 CET" />
(Das Datum wird natürlich dynamisch mit date() erzeugt) - und was erhalte ich mit LiveHTTP? Natürlich wieder

Code:
Expires: Thu, 19 Nov 1981 08:52:00 GMT
????????????

Der Server ist ja nicht der allerjüngste, aber sooooo alt ist er auch wieder nicht...
 
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Login-System ohne Cookies dethlef14 PHP Tipps 2006 7 27.03.2006 22:22
Cookies: Wie viele darf eine Website setzen? SvenLittkowski PHP Tipps 2007 8 09.12.2005 20:54
Cookies auslesen HSFighter PHP Tipps 2007 2 19.11.2005 14:56
Cookies richtig setzen und ersetzen Bonaparte PHP Tipps 2005-2 6 30.08.2005 14:51
Sitzungsvariablen, Abfrage-Zeichenketten, Cookies dethlef14 PHP Tipps 2005-2 2 16.08.2005 15:42
anzahl von cookies irgendwann bedenklich?lieber DB-Anfrage? Crypi PHP Tipps 2005-2 9 16.08.2005 12:55
Cookies setzen mit PW und Name lessiv PHP Tipps 2005-2 10 04.08.2005 17:23
sessions und cookies... PHP Tipps 2005-2 7 31.07.2005 21:17
problem mit cookies... d4rki PHP Tipps 2005 1 20.04.2005 12:19
Cookies setzen PHP Tipps 2005 2 22.03.2005 10:00
cookies setzen schlägt fehl (counter einrichten) PHP Tipps 2005 16 06.01.2005 00:33
Cookies mit Variablen setzen? $$$ ThiKool $$$ PHP Tipps 2007 4 03.01.2005 20:27
Cookies auslesen funktioniert nicht... PHP Tipps 2004-2 2 25.12.2004 14:00
Cookies setzen Crypi PHP Tipps 2004 10 24.09.2004 12:35
Probleme mit Cookies - headers already sent PHP Tipps 2004 28 21.08.2004 20:41

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
javascript cookie gültigkeit, cookie gültig bis ende der sitzung, gültigkeitsdauer von cookies, gültig bis am ende der sitzung, http://www.php.de/php-tipps-2005-2/32570-erledigt-gueltigkeitsdauer-eines-cookies-laesst-sich-nicht-setzen.html, cookie gültigkeitsdauer, cookies gültig bis am ende der sitzung, firefox cookie gültigkeit, firefox gültigkeit von cookies, javascript cookie gültig ende der sitzung, firefox cookies gültigkeit ändern, firefox gültigkeit cookies, php cookie läuft ab am ende der sitzung geht nicht, cookie 2 stunden, cookies gültigkeit ändern, php cookie 2 stunden versetzt, firefox cookies laufzeit, firefox cookies gültigkeit, javascript cookie gültig, gültig bis: am ende der sitzung

Alle Zeitangaben in WEZ +2. Es ist jetzt 08:12 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.