Gå til innhold

Problemer med PHPSESSID i URL...


Anbefalte innlegg

På websidene jeg lager nå har jeg fått et litt merkelig problem jeg ikke vet hva som forårsaker. Men når jeg ser på dem i Opera eller IE (Gjelder ikke Firefox) så står det i alle linkene en PHPSESSID=<maaaaasse merkelige tall>. Dette ødelegger også totalt for all validering da det legger seg på masse merkelige steder i sourcekoden min.

 

Hentet fra siten min atm med Opera: En menylink som fører til om.php fører nå til: om.php?PHPSESSID=4950886e40e982ff9a0445582ec62952

 

Er det kanskje PHP som oppfører seg merkelig siden det er variabler vi snakker om? Er det PHP-versjonen da eller? Eller er det browserene? Som sagt, I dont have a clue :)

Lenke til kommentar
Videoannonse
Annonse

Nei, det så ikke ut til å hjelpe. I IE var de der enda da jeg satte ned nivået og i Opera har jeg allerede på Accept all :S

 

Edit: Jeg lekte meg forresten med noe cookiegreier i PHP, men alt det har blitt fjernet nå. Men cookiene har jo ikke gått ut enda. Så kan det derfor være at IE og Opera sender med den infoen i cookiene pga den ligger der enda, mens Firefox som jeg installerte etter at jeg fjernet cookiene ikke har fått lagret disse og dermed ikke får samme errors?

 

Men hvorfor får da valideringsmotorene disse errorene? :S

 

Ny edit: AHA! Jeg prøvde med å slette cookiene fra siden min i Opera og nå forsvant også det PHPSESSID-tullet. Takker :)

Endret av Blib
Lenke til kommentar

Hmm...

 

 

Dette problemet kommer sannsynligvis av PHP og sessions/cookies (to sider av samme sak), og gir valideringsfeil fordi linkene er &PHPSESSID=324sfasdf92asdfdasdf3094, og ikke &PHPSESSID....

 

MrBerg: Jeg har faktisk ikke gjort noe aktivt for å hindre det, så problemet oppstår fremdeles, men ikke absolutt alltid. ( http://validator.w3.org/check?uri=http://....php&s=front )

 

Leter fremdeles etter en måte å endre dette på. Mulig man må rote med .htacess eller php.ini for å få det til.

Endret av jorgis
Lenke til kommentar

Tada!

 

jorgis fant løsningen, etter ca. 30 sekunder med googling, og dansing rundt hos www.php.net.

 

Sett følgende inn øverst i koden:

 

ini_set("url_rewriter.tags", "area=href,frame=src,fieldset=");

 

Det vil begrense bruken av PHPSESSID i URL til kun å omfatte <area>-taggen, <frame>-taggen og <fieldset>-taggen.

 

 

:w00t:

Endret av jorgis
Lenke til kommentar

Legg inn denne øverst i php-fila, og alle &PHPSESSID= blir skrevet ut som &ampPHPSESSID og dermed validierer ;)

 

ini_set('arg_separator.output', '&');

 

edit: farger:D

 

edit 2: ja jeg var sein (LoS :hrm:) men jeg svarte hvertfall

Endret av fjartan
Lenke til kommentar
På websidene jeg lager nå har jeg fått et litt merkelig problem jeg ikke vet hva som forårsaker

Vel siden det allerede er svart på spørsmålet ditt, vil jeg bare legge til at det er på grunn av at du har en session_start();. Du benytter deg vel av sessions, gjør du ikke?

 

Derfor får man session-ID i urlen, og PHP lager dessverre ikke riktig kode på linkene, så det bli & istedenfor &

Lenke til kommentar

Flyttes forresten til rett sted. Og problemet kom ved bruk av cookies og PHP. Fjernet cookiene så ordnet problemet seg :)

 

Forresten så dukket ikke den der PHPSESSID-variablen kun opp i URL, den lå også inni forskjellige forms på sida mi! :O

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...