Avatar billede kwanstudios Nybegynder
27. juni 2003 - 15:38 Der er 10 kommentarer og
1 løsning

Markér aktuelt menupunkt

Jeg har et website hvor jeg prøver at administrere det ved et meget let selvstrikket CMS, men da jeg ikke er den store mester i PHP er jeg nu stødt ind i (endnu) et problem.

Menuen vises således:

<?php
$i = 0;

$query = mysql_query("SELECT id, navn FROM cms") or die(mysql_error());       
$antal = mysql_num_rows($query);
while ($row = mysql_fetch_array($query)) {
    $i++;
    if ($i == $antal) {
        echo " <A HREF=\"".$_SERVER['PHP_SELF']."?id=".$row[id]."\" CLASS=\"menu\">".stripslashes(htmlentities($row[navn]))."</A>";
    } else {
        echo " <A HREF=\"".$_SERVER['PHP_SELF']."?id=".$row[id]."\" CLASS=\"menu\">".stripslashes(htmlentities($row[navn]))."</A><span style=\"font-weight: normal;\"> &nbsp;|&nbsp;</span>";
    }
}
?>

Det virker også fint som det skal, men jeg ønsker at når man har klikket på et punkt og kommet videre til den nye side (som ligger i samme fil, hentes fra MySQL), så viser den dette evt. ved en farve.. hvordan gør jeg dette? Altså udvælger det aktuele menupunkt hvor $row[id] er lig med $id?

Håber jeg har forklaret det tydeligt nok, og på forhånd tak :)
Avatar billede schaefner Juniormester
27. juni 2003 - 16:33 #1
Utestet:

<?php
$query = mysql_query("SELECT id, navn FROM cms") or die(mysql_error());       
while ($row = mysql_fetch_array($query)) {
    if (isset($_GET['id']) && $_GET['id'] == $row['id']) {
        echo " <b><a href='".$_SERVER['PHP_SELF']."?id=$row[id]' class='menu'>".stripslashes(htmlentities($row['navn']))."</a></b><br>";
    } else {
        echo " <a href='".$_SERVER['PHP_SELF']."?id=$row[id]' class='menu'>".stripslashes(htmlentities($row['navn']))."</a><br>";
    }
}
?>
Avatar billede kwanstudios Nybegynder
27. juni 2003 - 16:41 #2
Det virker :) Kunne du integrere det i mit script så den viser menuen korrekt?
Avatar billede kwanstudios Nybegynder
27. juni 2003 - 16:41 #3
med | osv. :)
Avatar billede schaefner Juniormester
27. juni 2003 - 16:55 #4
<?php
$query = mysql_query("SELECT id, navn FROM cms") or die(mysql_error());       
while ($row = mysql_fetch_array($query)) {
    if (isset($_GET['id']) && $_GET['id'] == $row['id']) {
        echo " <b><a href='".$_SERVER['PHP_SELF']."?id=$row[id]' class='menu'>".stripslashes(htmlentities($row['navn']))."</a></b><span style='font-weight: normal'>&nbsp;|&nbsp;</span>";
    } else {
        echo " <a href='".$_SERVER['PHP_SELF']."?id=$row[id]' class='menu'>".stripslashes(htmlentities($row['navn']))."</a><span style='font-weight: normal'>&nbsp;|&nbsp;</span>";
    }
}
?>
Avatar billede schaefner Juniormester
27. juni 2003 - 17:03 #5
eller:

<?php
$i = 0;
$query = mysql_query("SELECT id, navn FROM cms") or die(mysql_error());
$antal = mysql_num_rows($query);   
while ($row = mysql_fetch_array($query)) {
    if (isset($_GET['id']) && $_GET['id'] == $row['id']) {
        echo " <b><a href='".$_SERVER['PHP_SELF']."?id=$row[id]' class='menu'>".stripslashes(htmlentities($row['navn']))."</a></b>";
    } else {
        echo " <a href='".$_SERVER['PHP_SELF']."?id=$row[id]' class='menu'>".stripslashes(htmlentities($row['navn']))."</a>";
    }
    if ($i < $antal) {
        echo '<span style="font-weight: normal">&nbsp;|&nbsp;</span>';
    }
    $i++;
}
?>
Avatar billede kwanstudios Nybegynder
27. juni 2003 - 18:34 #6
Den laver da den berømte fejl med at sætte en | til sidst?
Avatar billede kwanstudios Nybegynder
27. juni 2003 - 18:34 #7
Avatar billede schaefner Juniormester
27. juni 2003 - 18:48 #8
Prøv lige:
$i = 1;
Avatar billede kwanstudios Nybegynder
27. juni 2003 - 19:15 #9
Smid et svar :0)
Avatar billede schaefner Juniormester
27. juni 2003 - 19:23 #10
svar'
Avatar billede kwanstudios Nybegynder
27. juni 2003 - 19:24 #11
..og tusind tak :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester