webForumDet fria alternativet

If ** echo "class="active"" ????

3 svar · 312 visningar · startad av Hampan90

Hampan90Medlem sedan feb. 2007144 inlägg
#1

Hej!
Är ruskigt nybörjare på PHP så har ett litet problem här..

Jag har en meny där den sida man är inne på ska ha classen "active"
så jag tänkte lösa det såhär:

<li id="tjanster" <?php if ($_GET["sida"] == "tjanster"){ echo "class="active"";}?>><a href="#">Tjänster</a></li>

Jag trodde attdet skulle funka, men det gör det inte.
Den ska alltså kolla i adressfältet om sida == tjänster, då skall den print ut class="active" i li taggen.

Får detta felmedelande:

Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in E:\Mina Dokument\Webbproduktion\Ergonomeva\site\index.php on line 49

Något tipps?
Antar att det beror på att det blir för många ", eller?

nitro2k01Medlem sedan aug. 20037 630 inlägg
#2
<li id="tjanster" <?php if ($_GET["sida"] == "tjanster"){ echo "class=\"active\"";}?>><a href="#">Tjänster</a></li>

Escapa med backslash.

Hampan90Medlem sedan feb. 2007144 inlägg
#3

Tack, det hjälpte.. Men varför måste man göra så?

nitro2k01Medlem sedan aug. 20037 630 inlägg
#4

Jo, du börjar strängen med ett ", sedan när strängen fortsätter class=" så tror PHP att strängen slutar där. Alltså måste du s k escapa tecknet för att PHP fortsätta läsa strängen.

Genererad på 377 ms · cache AV · v20260730165559-full.f96bc7eb