1&1 Server (PHP) Cookie Setzten

K

knastmoench

Mitglied
Thread Starter
Dabei seit
04.11.2008
Beiträge
59
Reaktionspunkte
2
Hi

Normal arbeite ich immer mit "normalen" Servern zb. bei Strato wo man richtigen zugriff auf sämtliche Einstellungen hat..

Jetzt muss ich aber für einen Kunden auf einem 1&1 Server programmieren.. Deswegen hocke ich seit 1 hier und schlage mich mit Problemen rum.. Ich hasse 1&1 soooo sehr :/.

Das (momentane) Problem:
Ich kann irgendwie keine Cookies erstellen.. Auf sämtlichen anderen Servern funktioniert mein Code einwandfrei.. Nur bei 1&1 will wieder mal nichts..

mein simpler Test Code:
PHP:
setcookie("test", "funktioniert", time()+3600);
$cookie= $_COOKIE["test"];
echo"cookie: "; echo $cookie;

Hatte da jemand mal das selbe Problem? Oder weiß eine schnelle Lösung? Ich muss das Cookie irgendwie gesetzt bekommen..
 
Habe das gerade mal bei 1&1 und bei Strato ausprobiert, sowohl mit safari als auch mit FireFox.

Bei beiden geht es bei 2. Laden der Seite.
Das deckt sich aber mit der Doku zum setcookie:

Sind die Cookies einmal gesetzt, können Sie beim nächsten Seitenaufruf anhand der $_COOKIE oder $HTTP_COOKIE_VARS Arrays auf diese zugreifen.

Oder anders gesagt: auch auf anderen Servern kann das Beispiel nicht funktioniert haben. :)
 
hi

Danke für deine Tests.. das ist mit allerdings bewusst ;) habe das schon ausführlich probiert sowohl mit 2 mal Laden als auch beim 2. laden das setcookie weg gelassen.. Also so wie man das eben macht^^ aber es funktioniert nur auf dem Strato Server.. das macht mich noch wahnsinnig...

Ich habe jetzt alles mit php session gemacht.. aber ein cookie wäre trotzdem wichtig...
 
Hast du mit den dev-tools im Browser mal geschaut ob der Set-Cookie header ankommt?
 
Ich habe jetzt die php.ini Datei meines anderen Servers importiert.. Dann kam eine Fehlermeldung, ein wenig weiter gebastelt und jetzt funktioniert alles..

Woran jetzt genau der Fehler lag kann ich nicht sagen.. nur dass es jetzt funktioniert^^

Danke für die Tipps :)
 
Ich habe jetzt die php.ini Datei meines anderen Servers importiert.. Dann kam eine Fehlermeldung, ein wenig weiter gebastelt und jetzt funktioniert alles..

Woran jetzt genau der Fehler lag kann ich nicht sagen.. nur dass es jetzt funktioniert^^

Danke für die Tipps :)

Wenn ich so etwas leese wird mir immer ganz :sick:

"Irgend ein Fehler", "Irgendwas gemacht"..."jetzt gehts"..und das bei einem Server der frei zugänglich am Netz steht? Mutig!

Das in #1 zitierte Skript kann so auf keinem Server laufen, weil ein zweiter HTTP-Request nötig ist um $_COOKIE überhaupt mit content zu füllen!
Fast immer ist das Problem mit HTTP-Aufrufen das PHP-Skripte Trailing Spaces haben. Das sollte man aus genau den Gründen vermeiten, gerade in include-Files.

Egal ob 1und1 oder ein anderer Provider ich würde immer nur root-Server nehmen, daran entscheidet sich nämlich was man selbst bewegen kann und was nicht.
 
1. wie schon gesagt habe ich einen 2. request gemacht.. Natürlich wird das Cookie erst beim 2. Laden angezeigt.. Das war ja auch nur der Test Code und nichts fertiges...

2. Habe ich nicht "irgendwas" gemacht sondern einige PHP.ini Einstellungen meines anderen Servers übernommen. Ich weiß nur nicht welcher Punkt darin letztendlich zur Lösung geführt hat, allerdings weiß ich, dass meine übernommene PHP.ini sicher ist und Dinge die mit Cookies oder Session zu tun haben nach Standard eingestellt sind.

3. Ich selbst ziehe auch Root Server vor. Leider kann ich mir nicht aussuchen was andere vor 2 Jahren für Verträge gemacht haben und muss mit dem klar kommen, was ich vorgesetzt bekomme.
Das war nämlich auch anfangs mein Problem: Ich dachte das würde damit irgendwie zusammen hängen, dass es eben kein Root ist und bei diesen Managed irgendwas nicht so funktioniert wir es sollte... Naja letztendlich hat entweder 1&1 andere PHP Einstellungen oder mein Vorgänger gar da was so eingestellt...

Wie auch immer, das Problem ist gelöst.
 
Zurück
Oben Unten