sql >> Databáze >  >> RDS >> Mysql

Zkontrolujte hodnoty každého příkazu

Předpokládám, že se pokusíte vytvořit navigační menu. Kde by se podpoložky měly objevit pouze tehdy, když návštěvník vaší stránky vybere položku horní nabídky.

Je to tak?

Dobře, pokud ano. Možná to máte na mysli.

  1. pokud uživatel nejprve zobrazí vaši stránku. můžete zobrazit pouze horní položky nabídky.
  2. pokud uživatel vybere jednu z horních položek nabídky, klikne na odkaz, který znovu načte váš skript s dalšími informacemi.
  3. Nyní musí váš skript zjistit, kterou položku horní nabídky uživatel vybral na základě dodatečných informací.
  4. V závislosti na výběru uživatele můžete zobrazit nebo skrýt položky podnabídky.

Co je vaším úkolem, musíte se ujistit, že váš skript detekuje, na kterou položku horní nabídky se kliklo.

Potřebujete další pomoc, nebo je vám jasné, co dělat?

Dobře, co takhle jako základní příklad pro dynamické php nabídky jako test.php

<?php

  $menu="";

  extract( $_GET, EXTR_PREFIX_ALL, "url" );
  if (isset($url_menu)){
    $menu=$url_menu;
    echo "you selected ".$menu."<br>";
  }     



  echo "<ul>";

  // top menu 1
  echo '<li><a href="./test.php?menu=top1">Top1</a>';
    if ($menu=="top1"){
      echo "<ul>";
        echo "<li>Submenu</li>";
      echo "</ul>";
    }
    echo "</li>";

  // top menu 2
  echo '<li><a href="./test.php?menu=top2">Top2</a>';
    if ($menu=="top2"){
      echo "<ul>";
        echo "<li>Submenu</li>";
      echo "</ul>";
    }
    echo "</li>";

  echo "</ul>";


?>

Podívejte se na libovolnou horní položku nabídky, která předává další proměnnou „menu“. V tomto případě je to buď "top1" nebo "top2". Nyní váš skript při opětovném načtení zkontroluje, zda je již nastaveno "menu" a v závislosti na hodnotě "menu" zobrazí odpovídající podnabídku.

K tomu je ještě dlouhá cesta, protože v mém případě používám pevné položky nabídky, kde ve vašem případě načítáte položky nabídky v závislosti na "uživatelském jménu".

Dejte mi vědět, zda výše uvedený příklad u vás funguje a zda potřebujete další podporu, abyste jej mohli přizpůsobit vašim dynamicky načítaným nabídkám.

Podle této myšlenky musíte nahradit

<li class='has-sub'><a href='#'><span><?=$get_main_menu['menu_name']; ?></span></a>

přidáním například názvu proměnné "level0"

<li class='has-sub'><a href='<?= ?level0=$sub_menu['menu_name']; ?>'><span><? $get_main_menu['menu_name']; ?></span></a>

pak můžete ve své podnabídce zkontrolovat, zda je "úroveň0" nastavena tak, jak očekáváte, a poté zobrazit nebo skrýt položky podnabídky.




  1. Uložte databázi na externí pevný disk

  2. auditování 50 sloupců pomocí oracle trigger

  3. Změna typu sloupu na delší řetězce v kolejnicích

  4. SQL dotaz s omezením na řádky z jedné tabulky, nikoli výsledkovou sadu