webForumDet fria alternativet

Cookies fungerar inte på egen PHP server

8 svar · 184 visningar · startad av Kosse

KosseMedlem sedan juni 2000162 inlägg
#1

Har fått hjälp av en kompis att installera PHP och mySQL på en gammal PC-burk med NT 4 som system. Allting fungerar väl hyffsat smärtfritt förutom att cookies inte vill sättas? Beror detta på några inställningar i php.ini?
Vad ska jag i så fall ändra där för att få det att fungera?

psykologMedlem sedan apr. 2000137 inlägg
#2

Får du några felmeddelanden?
Isåfall, hurdana?

Försöker du komma åt kakan på rätt sätt när den väl är satt?

------------------
Jonas Carlsson
http://quake.swe.net/eguana
xeez@swipnet.se
Killed by death

KosseMedlem sedan juni 2000162 inlägg
#3

Nej, inga felmeddelande angående kakorna. Kakorna sätts helt enkelt inte över huvudtaget.

KosseMedlem sedan juni 2000162 inlägg
#4

Finns det ingen ute i den stora PHP jungeln som besitter dessa kunskaper?

Eller kanske bara någon som har en bra konfigurerad php.ini fil som jag kan få kopiera? (som fungerar för NT 4)

KosseMedlem sedan juni 2000162 inlägg
#5

Körde lite nya script på min lokala PHP server och LYCKADES få en kaka att fungera!
Det är något problem med tiden på kakorna som strular till det.

1800 (30 minuter) då sätt ingen kaka.
157000 sekunder därimot fungerar och då sätts en kaka. 157000 sekunder ska på ett riktigt fungerande PHP motsvara 43,6 dygn men inte hos mig.
På förfallodatumet på kakan står det att den är giltig bara två dagar framåt.

Min slutsats är att det är fel på någotsätt i hur mitt PHP uppfattar kaksekunder... Någon som vet om det är någon inställning i php.ini eller varför det blir så?

rovikMedlem sedan juli 20013 inlägg
#6

Jämför tid och datum på dom 2 burkarna.
Tiden du kodar in är serverns tid medans tiden cookien lever är Klientens tid.
Om servern ligger 1 dag efter och cookien ska leva 1 dag så är den redan "död" då du sätter den.
Du kan "döda" en cookie i PHP om du sätter en tid som redan är förbi.

------------------
"Det är dyrare att ha en person som står och håller
maskinen igång än att satsa på ett stabilt OS".
Bengt Eriksson, produktchef på Oracle

KosseMedlem sedan juni 2000162 inlägg
#7

Hmm, nu fungerar cookies som de ska. Har kommit fram till att problemet tydligen ligger någon annan stans.

Kakor sätts nu utan problem efter lite kruxande, men något som inte fungerar är..., när man först vill sätta en kaka och sedan gå till en annan sida med header. Då strular det till sig. Inga felmeddelanden.
Header fungerar, men kakorna sätts inte. Varför fungerar inte det, någon inställning i PHP.ini? Det fungerar på f2s servrar, varför inte på min?

patrickpollyMedlem sedan mars 2001190 inlägg
#8

Det är ett känt problem bland många webbläsare att det krånglar att sätta cookies och göra header-redirects efter varandra. Det finns några sätt att kringgå detta dock:

1: Sätt cookien själv mha header(); Mer information om vilka parametrar som krävs finns på NS hemsida.

2: Nödlösning som inte alltid fungerar. Använd setcookie() och ange _alla_ pararametrar i funktionen. Sätt cookien innan du gör en header-redirect. Fungerar inte det, gör redirecten innan du sätter cookien. Efter header() och setcookie() lägger du in exit;

I min nuvarande konfiguration fungerar det men det krävdes en del pillande för att få det att fungera. :(

------------------
Patrik Lindgren - Alxnet AB
Alxnet.se - gratis webbverktyg

KosseMedlem sedan juni 2000162 inlägg
#9

Det är inte min webbläsare det är fel på eftersom liknande script fungerar utmärkt på f2s servrar. Det måste väl gå att ordna så den fungerar lika bra på min lokala server? Eller?
Ska försöka med dina tips, men skulle gärna vilja få det att fungera problemfritt.

142 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
137 ms — hämta tråd, inlägg och bilagor (db)