AgogoMedlem sedan nov. 20037 inlägg Ett mycket märkligt problem har uppstått och gör endast det i Netscape 6.# och nedåt..
Exempel:
Php-koden ser ut så här:
$path = "pics/" . $_GET['lang'] . "/";
?><img src="<? echo $path; ?>themenu<? if ($_GET['action'] == "whatis") { echo "2"; } ?>.jpg" name="menuImage" usemap="#menu" border="0" style="position:absolute;overflow:hidden;left:48px;top:199px;" alt="" /><?
Men det Netscape 6 får ut är:
<img src="pics//themenu.jpg" name="menuImage" usemap="#menu" border="0" style="position:absolute;overflow:hidden;left:48px;top:199px;" alt="" />
I andra webbläsare blir resultatet som det ska:
<img src="pics/eng/themenu.jpg" name="menuImage" usemap="#menu" border="0" style="position:absolute;overflow:hidden;left:48px;top:199px;" alt="" />
Det som händer är alltså att $_GET['lang'] inte kommer med alls. Jag har prövat med att göra $_GET['lang'] till en variabel innan jag stoppade in den i $path-variablen. Hjälpte inte.
Någon som har en aning om varför Netscape 6 missar Get??
MeleaMedlem sedan juli 20033 147 inlägg
- Använd [php]-taggar.
- Gör din kod mer läslig.
För att svara mer exakt på din fråga så är PHP ett serverbaserat språk.
Med detta menas att all PHP-kod körs på servern innan den omvandlas till "HTML-kod" och skickas till webläsaren.
Det är alltså inte din PHP-kod det är fel på, utan HTML-koden.
/r Okej, har läst igenom din fråga lite mer noga nu ( :OO ).
Verkar som att din Netscapeklient inte kan läsa av Querystrings.
Har du testat att det funkar att läsa av $_GET-variablar överhuvud taget?
MVH
AgogoMedlem sedan nov. 20037 inlägg Exempel:
Php-koden ser ut så här:
$path = "pics/" . $_GET['lang'] . "/";
?><img src="<? echo $path; ?>themenu<? if ($_GET['action'] == "whatis") { echo "2"; } ?>.jpg" name="menuImage" usemap="#menu" border="0" style="position:absolute;overflow:hidden;left:48px;top:199px;" alt="" /><?
Men det Netscape 6 får ut är:
<img src="pics//themenu.jpg" name="menuImage" usemap="#menu" border="0" style="position:absolute;overflow:hidden;left:48px;top:199px;" alt="" />
I andra webbläsare blir resultatet som det ska:
<img src="pics/eng/themenu.jpg" name="menuImage" usemap="#menu" border="0" style="position:absolute;overflow:hidden;left:48px;top:199px;" alt="" />
Server side & client side har jag koll på. Det är ju tydligt att Netscape 6 KAN läsa GET-variablar. Jag har testat att fylla i sådana i adress-fältet manuellt. Det är när man klickar på en länk som innehåller queries som det inte fungerar.
Det konstiga är att jag adrig hört att netscape/mozilla inte skulle palla med någon så "enkelt" som att skicka+läsa GET i den versionen och nedåt.
Nytt exempel:
Php-kod:
href="<? echo con_url . "?action=whatis&nr=2&lang=" . $_GET['lang']; ?>"
Ger i Netscape en länk som ser ut så här:
http://main.php?action=whatis&nr=2
Men ger SAMTIDIGT en länk i Netscape(View source code) som ser ut såhär:
href="main.php?action=whatis&nr=2&lang=swe"
Den får alltså RÄTT kod, men visar FEL?!
Vad är det Netscape 6 har emot lang ?
Tack, btw
emissionMedlem sedan dec. 19996 721 inlägg
Agogo skrev:
Server side & client side har jag koll på. Det är ju tydligt att Netscape 6 KAN läsa GET-variablar.
Nej, det kan den inte. Det görs server-side.
Det är inte omöjligt att Netscape tolkar "&lang", som HTML-entiteten "⟨". Det är förstås fel, men inte omöjligt. Byt ut "lang" mot något annat, som inte börjar på "lang".
AgogoMedlem sedan nov. 20037 inlägg emission skrev:
Nej, det kan den inte. Det görs server-side
nej det är helt korrekt. det jag menade var att netscape inte är helt cp och inte fattar vad ?get=query&somethin=shit betyder. det är fel att formulera sig som jag gjorde men jag är självlärd datanerd och inte högskolepretto så jag använder mig inte av korrekta uttryck el likn eftersom jag inte alls vet vad ?get=query&somethin=shit kallas client side. och jag bryr mig inte heller. även fast det skulle vara bra att kunna vid dessa sällsynta tillfällen.
emission skrev:
Det är inte omöjligt att Netscape tolkar "&lang", som HTML-entiteten "⟨". Det är förstås fel, men inte omöjligt. Byt ut "lang" mot något annat, som inte börjar på "lang".
helt korrekt. åtminstone netscape 6.# tolkar &lang eller &language eller &langwhatever som "HTML-entiteten" &lang. felet löst.
jag hade inte en tanke på att det ens fanns en HTML-pryl som heter &lang.
tack emission!
zcorpanMedlem sedan dec. 20042 245 inlägg Har du testat validera koden? "&" måste skrivas som "&".