webForumDet fria alternativet

problem med PHPSESSID

PHP

8 svar · 305 visningar · startad av visslaren

Medlem sedan juli 20011 222 inlägg
Frågan#1

Jag har ett litet problem med en javascriptmeny vars fel beror på php. Det är så att första gången man går in på sidan, så skrivs PHPSESSID ut i länkarna (se kodsnutt nedan) vilket givetvis ställer till en del problem eftersom den även lägger till " runt url:n. Jag har session_start() på alla sidor pga att det är inloggningsfunktion på hela siten för medlemmar. Tror det är därför detta skrivs ut. Menyn visas inte alls när felet uppstår men när man uppdaterar sidan så visas menyn.
Så min fråga är; hur förhindrar man att PHPSESSID skrivs ut och förstör menyn?

<a href="index.php?PHPSESSID=781ecc0fe155cc5da53bc3edc5e4660e">

om ni vill kolla själva är adressen till sidan http://www.spelbasen.nu

Medlem sedan aug. 20002 975 inlägg
#2

Den lägger till citationstecken för att du ska ha citationstecken runt adressen i din länk.

Du borde kunna göra så här:

<!-- Ändra -->
rubriker=new Array("<a href=index.php><img src=grafik/meny/all/start.gif ...

<!-- Till -->
rubriker=new Array('<a href="index.php"><img src="grafik/meny/all/start.gif" ..

<!-- Eller -->
rubriker=new Array("<a href='index.php'><img src='grafik/meny/all/start.gif' ...
Medlem sedan juli 20011 222 inlägg
#3

Har provat båda sätten. inget av dem gav nån förändring. :l

Medlem sedan aug. 20002 975 inlägg
#4

Den kan väl knappast lägga till citationstecken, när det redan finns ??

Kör du första varianten, och begränsar dina Array-element med apostrof (enkelfnutt), så borde det fungera. Läggs då citationstecken till runt länkadressen så blir ju allt rätt.

Medlem sedan nov. 200055 inlägg
#5

Matte: Jag svarar å visslarens vägnar :P.. Problemet är inte löst. Kan du eller någon annan här fortsätta hjälpa oss i sökningen på felet??

Medlem sedan aug. 20002 975 inlägg
#6

Jag har hittat två rader där det inte fixat sig.
De ser besvärliga ut :(

De två rader jag tänker på är dessa:

<!-- rad 252 -->
... <A HREF="\?PHPSESSID=a6ef84f92cf51ba337e7c74fcc46d1fa""javascript:void(0)\" ...

<!-- rad 261 -->
... <A HREF="\?PHPSESSID=a6ef84f92cf51ba337e7c74fcc46d1fa"""+eval("meny"+i+"lankar["+j+"]")+"\" ...

Kan de sett ut så här från början ?

<!-- rad 252 -->
... <A HREF=\"javascript:void(0)\" ...

<!-- rad 261 -->
... <A HREF=\""+eval("meny"+i+"lankar["+j+"]")+"\" ...

Jag är tveksam till att det kommer att hjälpa, men testa:

<!-- rad 252 -->
... <A HREF='javascript:void(0);' ...

<!-- rad 261 -->
... <A HREF='"+eval("meny"+i+"lankar["+j+"]")+"?' ...

En annan sak att testa är att ladda om sidan om sessionen precis satts:

<?php

session_start();

if (!isset($_SESSION['reload'])) {
   $_SESSION['reload'] = true;
   header("Location: index.php");
   exit;
}
Medlem sedan juli 20011 222 inlägg
#7

Oj, hade visst glömt att jag skrivit tråd här :)

Matte: Tack! den där phpsnutten fixade till det. nu fungerar menyn :)

Medlem sedan aug. 20002 975 inlägg
#8

För att inte riskera rundgång i någon webbläsare kanske man kan komplettera lite:

<?php

session_start();

if (!isset($_SESSION['reload']) && !isset($_GET['reload'])) {
   $_SESSION['reload'] = true;
   header("Location: index.php?reload=true");
   exit;
}
Medlem sedan juli 20011 222 inlägg
#9

Tack :)

255 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)