Autor Zpráva
jetyadam
Profil *
Čau, vím, že už se tady o tom mluvilo, ale nebylo to přesně to co jsem potřeboval.

Mám tenhle kód:
    <ul type="none" id="leveMenu">
        <a href="index.php"><li class="action"><span>Úvod</span></li></a>
        <?php if(!isset($_SESSION["login"])): ?>
        <a href="registrace.php"><li><span>Registrace</span></li></a>
        <?php
         endif;

         $result = mysql_query("SELECT * FROM categories");

         while($radek = mysql_fetch_array($result)) {

             echo "<a href=\"kategorie.php?id=".$radek["id"]."\" id='action'><li><span>".$radek["name"]."</span></li></a>";
         }

         ?>
        <a href="kontakt.php"><li><span>Kontakt</span></li></a>
    </ul>

a chci, aby v tom menu zůstala zvolená kategorie v určitým stylu. Zde je obrázek jak to myslím: http://besttricka.wz.cz/.

Předem díky za pomoc.
mzk
Profil *
jetyadam:
musíš si porovnat url a když se bude rovnat s aktuální vypisovanou kategorií, tak to označit jako aktivní a nastylovat to.. např: v cyklu $_GET['id'] == $radek[id] a ještě si pohlídat kontakt,..
jetyadam
Profil *
ok něco zkusim díky
Taps
Profil
jetyadam:
http://polopate.jakpsatweb.cz/index.php?page=include4
Označení nakliknuté položky menu
jetyadam
Profil *
vim, ale já mám ten kód toho menu trochu jinej...
Taps
Profil
jetyadam:
princip, ale zůstává stejný
jetyadam
Profil *
tak jsem to udělal takhle:
    <ul type="none" id="leveMenu">
        <br>
        <?php

         $result = mysql_query("SELECT * FROM categories");

         while($radek = mysql_fetch_array($result)) {


if ($radek["id"] == 1) {
        echo ("<a href=\"kategorie.php?id=".$radek["id"]."\"><li class='active'><span>".$radek["name"]."</span></li></a>");
}                 
elseif ($radek["id"] != 1) {
        echo ("<a href=\"kategorie.php?id=".$radek["id"]."\"><li><span>".$radek["name"]."</span></li></a>");
}
elseif ($radek["id"] == 2) {
        echo ("<a href=\"kategorie.php?id=".$radek["id"]."\"><li class='active'><span>".$radek["name"]."</span></li></a>");
}    
elseif ($radek["id"] != 2) {
        echo ("<a href=\"kategorie.php?id=".$radek["id"]."\"><li><span>".$radek["name"]."</span></li></a>");
}
elseif ($radek["id"] == 3) {
    echo "<a href=\"kategorie.php?id=".$radek["id"]."\"><li class='active'><span>".$radek["name"]."</span></li></a>";
}
elseif ($radek["id"] != 3) {
        echo ("<a href=\"kategorie.php?id=".$radek["id"]."\"><li><span>".$radek["name"]."</span></li></a>");
}
elseif ($radek["id"] == 4) {
    echo "<a href=\"kategorie.php?id=".$radek["id"]."\"><li class='active'><span>".$radek["name"]."</span></li></a>";
}
elseif ($radek["id"] != 4) {
        echo ("<a href=\"kategorie.php?id=".$radek["id"]."\"><li><span>".$radek["name"]."</span></li></a>");
}
elseif ($radek["id"] == 5) {
    echo "<a href=\"kategorie.php?id=".$radek["id"]."\"><li class='active'><span>".$radek["name"]."</span></li></a>";
}
elseif ($radek["id"] != 5) {
        echo ("<a href=\"kategorie.php?id=".$radek["id"]."\"><li><span>".$radek["name"]."</span></li></a>");
}
elseif ($radek["id"] == 6) {
    echo "<a href=\"kategorie.php?id=".$radek["id"]."\"><li class='active'><span>".$radek["name"]."</span></li></a>";
}
elseif ($radek["id"] != 6) {
        echo ("<a href=\"kategorie.php?id=".$radek["id"]."\"><li><span>".$radek["name"]."</span></li></a>");
}
elseif ($radek["id"] == 7) {
    echo "<a href=\"kategorie.php?id=".$radek["id"]."\"><li class='active'><span>".$radek["name"]."</span></li></a>";
}
elseif ($radek["id"] != 7) {
        echo ("<a href=\"kategorie.php?id=".$radek["id"]."\"><li><span>".$radek["name"]."</span></li></a>");
}
elseif ($radek["id"] == 8) {
    echo "<a href=\"kategorie.php?id=".$radek["id"]."\"><li class='active'><span>".$radek["name"]."</span></li></a>";
}
elseif ($radek["id"] != 8) {
        echo ("<a href=\"kategorie.php?id=".$radek["id"]."\"><li><span>".$radek["name"]."</span></li></a>");
}
}

         ?>

    </ul>
ale problém je, že označená položka je pouze ta první, ať kliknu na jakou koliv...
nevíte jak to dodělat aby to fungovalo?
lorin
Profil
Trochu nechápu tuhle část:

elseif ($radek["id"] != 1) {
        echo ("<a href=\"kategorie.php?id=".$radek["id"]."\"><li><span>".$radek["name"]."</span></li></a>");
}

elseif funguje tak, že se do něj dostaneš jen tehdy, pokud neplatí předchozí if nebo elseif. Takže tahle podmínka je k ničemu... Stačí jednoduše else.
mzk
Profil *
jetyadam:
a není něco takového lepší?
       while($radek = mysql_fetch_array($result)) {
           echo '<li' . ($_GET['id'] == $radek['id'] ? ' class="active"' : '') . '>';
           echo '<a href="kategorie.php?id="' . $radek['id']. '">' . $radek['name'] . '</a></li>';
         }

ještě si musíš ošetřit pro kontakt.php,...
jetyadam
Profil *
njn, ale to mi hází chybu
mzk
Profil *
jetyadam:
njn, ale to mi hází chybu
to je docela možný.. a když řekneš jakou, tak ti možná aj poradím (třeba i někdo jiný) co s tím
jetyadam
Profil *
Warning: mysql_fetch_row() expects parameter 1 to be resource, boolean given in /Applications/XAMPP/xamppfiles/htdocs/frankfurt/Eshop/kategorie.php on line 37




Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /Applications/XAMPP/xamppfiles/htdocs/frankfurt/Eshop/kategorie.php on line 47


můžu ti poslat tu druhou část kódu kdybys chtěl...
mzk
Profil *
jetyadam:
můžu ti poslat tu druhou část kódu kdybys chtěl...
to víš že by to bylo lepší i s tím kódem..

chybka je u kategorie.php?id="' je tam navíc "
jetyadam
Profil *
kategorie.php :
<?php require("menu.php"); ?>
            <div id="obsah">
                <?php
                $id = $_GET["id"];

                $category = mysql_query("SELECT * FROM categories WHERE id = $id");
                $category = mysql_fetch_row($category);
                ?>
                <span style="font-family:arial;color:white;font-size:33px;float: left;"><?php echo $category[1]; ?></span><br><br><br>


                <?php


                $zbozi = mysql_query("SELECT * FROM texty WHERE categories_id = $id");

                while ($radek = mysql_fetch_array($zbozi)) {
                    ?>

                    <div class="zbozi">
                       <p>
                        <div class="description">
                            <?php echo $radek["text"] ?>
                        </div>
                       </p>

                    </div>

                    <?php
                }
                ?>

menu.php:
<ul type="none" id="leveMenu">
        <br>
        <?php
 
         $result = mysql_query("SELECT * FROM categories");
 
         while($radek2 = mysql_fetch_array($result)) {
           echo '<li' . ($_GET['id'] == $radek2['id'] ? ' class="active"' : '') . '>';
           echo '<a href="kategorie.php?id="' . $radek2['id']. '">' . $radek2['name'] . '</a></li>';
         }
?>
</ul>
Jetýadam
Profil *
No tak jsem to nakonec udělal takhle je to mnohem jednodušší a funguje to
<ul type='none' id='leveMenu'>
<a href='kategorie.php?id=1'><li id='uvod' <?php if($id2 == 1) { ?>class="aktivni"<?php } ?>>Úvod</li></a>
<a href='kategorie.php?id=2'><li id='rekonstrukce' <?php if($id2 == 2) { ?>class="aktivni"<?php } ?>>Rekonstrukce</li></a>
<a href='kategorie.php?id=3'><li id='montazeAOpravy' <?php if($id2 == 3) { ?>class="aktivni"<?php } ?>>Montáže a opravy</li></a>
<a href='kategorie.php?id=4'><li id='havarijniSluzba' <?php if($id2 == 4) { ?>class="aktivni"<?php } ?>>Havarijní služba</li></a>
<a href='kategorie.php?id=5'><li id='taxisluzbaASmluvniPreprava' <?php if($id2 == 5) { ?>class="aktivni"<?php } ?>>Taxislužba a smluvní přeprava</li></a>
<a href='kategorie.php?id=6'><li id='jazykoveKurzy' <?php if($id2 == 6) { ?>class="aktivni"<?php } ?>>Jazykové kurzy</li></a>

<a href='#' onclick='return zobraz(1)'><li id='cenik' <?php if($id2 == 71 || $id2 == 72 || $id2 == 73 || $id2 == 74) { ?>class="aktivni"<?php } ?>>Ceník</li></a>
<ul type='square' id='podMenu1' <?php if($id2 != 71 && $id2 != 72 && $id2 != 73 && $id2 != 74): ?>style='display: none;<?php endif; ?>'>
<a href='kategorie.php?id=71'><li <?php if($id2 == 71) { ?>class="aktivni"<?php } ?>>Montáže a opravy</li></a>
<a href='kategorie.php?id=72'><li <?php if($id2 == 72) { ?>class="aktivni"<?php } ?>>Havarijní služba</li></a>
<a href='kategorie.php?id=73'><li <?php if($id2 == 73) { ?>class="aktivni"<?php } ?>>Doprava</li></a>
<a href='kategorie.php?id=74'><li <?php if($id2 == 74) { ?>class="aktivni"<?php } ?>>Jazykové kurzy</li></a>
</ul>
<a href='kategorie.php?id=8'><li id='kontakt' <?php if($id2 == 8) { ?>class="aktivni"<?php } ?>>Kontakt</li></a>
</ul>

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: