Menue anders gestalten

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Menue anders gestalten

    Hallo freaks,

    ich bin php-anfänger und habe mir aus div. skripts ein dynam. menue gebastelt. das menue wird folgendermaßen aufgebaut:

    + Hauptmenue1
    - Untermenue1
    - Untermenue2
    + Hauptmenue2
    usw.

    Der code sieht folgendermaßen aus:
    -----------------------

    /* ------------Menu ANFANG-------------- */

    $result = mysql_query("SELECT * FROM menu ORDER BY 'sort' ASC");
    while($row = mysql_fetch_array($result)){


    /* ------------Hauptkategoriepunkte-------------- */
    echo "+ <a href=\"index.php?m=$row[mid]&s=0\">$row[menu]</a><br>";


    $result2 = mysql_query("SELECT * FROM submenu WHERE mid='$row[mid]' ORDER BY 'sort' ASC");
    while($row = mysql_fetch_array($result2)){
    if ($m==$row[mid]){


    /* ------------Unterkategoriepunkte-------------- */
    echo "&nbsp;&nbsp;&nbsp;- <a href=\"index.php?m=$row[mid]&s=$row[sid]\">$row[submenu]</a><br>\n";



    }}}
    /* ------------Menu ENDE-------------- */

    ---------------------------

    Nun die Frage:

    Wie kann ich das menue Horizontal darstellen beispielsweise so:

    :: Hauptmenue1 :: Hauptmenue2 ::
    - Untermenue1
    - Untermenue2

    Ich freue mich schon auf eure Tipps. Denn die helfen immer wieder!

  • #2
    naja genauso wie du es jetzt schon machst...

    einfach alle hauptpunkte nehmen und nebeneinander darstellen (1.schleife)

    dann aufgrund des aktuellen hauptpunktes die unterpunkte darstellen. (2.schleife)
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      Re: Menue anders gestalten

      Wie kann ich das menue Horizontal darstellen
      dann würde ich als erstes mal die <br> bei der ausgabe der hauptmenüpunkte rausschmeissen :-)


      btw: was ich von datenbankabfragen innerhalb von schleifen halte, muss ich glaube ich nicht nochmal erwähnen, oder?
      I don't believe in rebirth. Actually, I never did in my whole lives.

      Kommentar


      • #4
        Hallo, könntest du mal das ganze Script posten, da ich auch sowas suche?

        Natührlich wenn dus nur bereitstellst, ich hab nähmlich keine Lust auchnoch sowas zu posten
        PHP Handbuch - MySQL Handbuch - PHP Einsteiger Tutorial - CSS Referenz - Browserunterstützung von CSS

        Kommentar


        • #5
          hallo,

          das mit dem <br> war gut, denn jetzt erscheint das Hauptmenue so:

          : haupt1 :: haupt2 :: haupt3::

          Wenn aber z.b. in haupt2 2 unterpunkte sind, dann siehts so aus:

          : haupt1 :: haupt2 :: unter1 :: unter2 ::haupt3::

          nicht seht übersichtlich oder . Was kann ich tun, dass die unterpunkte in der nächsten Zeile erscheinen. Es kann auch so aussehen:

          : haupt1 :: haupt2 :: haupt3::
          - unter1 - unter2

          mein code sieht jetzt so aus:

          ----------------------------

          <?php
          /* ------------Menu ANFANG-------------- */

          $result = mysql_query("SELECT * FROM menu ORDER BY 'sort' ASC");
          while($row = mysql_fetch_array($result)){


          /* ------------Hauptkategoriepunkte-------------- */
          echo ": <a href=\"index.php?m=$row[mid]&s=0\">$row[menu]</a> :";


          $result2 = mysql_query("SELECT * FROM submenu WHERE mid='$row[mid]' ORDER BY 'sort' ASC");
          while($row = mysql_fetch_array($result2)){
          if ($m==$row[mid]){


          /* ------------Unterkategoriepunkte-------------- */

          echo ": <a href=\"index.php?m=$row[mid]&s=$row[sid]\">$row[submenu]</a>:\n";



          }}}
          /* ------------Menu ENDE-------------- */
          ?>

          --------------------------------

          Danke für eure hilfe!

          Übrigens wenn alles läuft, dann poste ich den code:

          Gruß mikka6

          Kommentar


          • #6
            Könntest du mal das in die PHP Tags packen, dann könnte ich da besser durchsteigen!
            PHP Handbuch - MySQL Handbuch - PHP Einsteiger Tutorial - CSS Referenz - Browserunterstützung von CSS

            Kommentar


            • #7
              PHP-Code:
              <?php
              /* ------------Menu ANFANG-------------- */

              $result mysql_query("SELECT * FROM menu ORDER BY 'sort' ASC");
              while(
              $row mysql_fetch_array($result)){


              /* ------------Hauptkategoriepunkte-------------- */
              echo ": <a href=\"index.php?m=$row[mid]&s=0\">$row[menu]</a> :";


              $result2 mysql_query("SELECT * FROM submenu WHERE mid='$row[mid]' ORDER BY 'sort' ASC");
              while(
              $row mysql_fetch_array($result2)){
              if (
              $m==$row[mid]){


              /* ------------Unterkategoriepunkte-------------- */

              echo ": <a href=\"index.php?m=$row[mid]&s=$row[sid]\">$row[submenu]</a>:\n";



              }}}
              /* ------------Menu ENDE-------------- */
              ?>

              Kommentar


              • #8
                btw: was ich von datenbankabfragen innerhalb von schleifen halte, muss ich glaube ich nicht nochmal erwähnen, oder?
                was meinst du damit @wahsaga


                @mikka
                wenn du die UNterpunkte jeweils unter die Hauptkathegorien machen willst, dann brauchst du Tabellen

                PHP-Code:
                $result mysql_query("SELECT * FROM menu ORDER BY 'sort' ASC");
                $result2 mysql_query("SELECT * FROM submenu WHERE mid='$row[mid]' ORDER BY 'sort' ASC");

                echo 
                "
                <table>
                  <tr>
                "
                ;

                // Hauptkathegorien
                while($row mysql_fetch_array($result))
                {
                    echo 
                "<td>: <a href=\"index.php?m=$row[mid]&s=0\">$row[menu]</a> :</td>";
                }

                echo 
                "</tr>";
                echo 
                "<tr>";

                // Unterpunkte
                while($row mysql_fetch_array($result2)){

                    echo 
                "<td>";
                    
                    echo (
                $m==$row[mid]) ? ": <a href=\"index.php?m=$row[mid]&s=$row[sid]\">$row[submenu]</a>:<br>\n" "&nbsp;";

                    echo 
                "</td>";    
                }

                echo 
                "</tr></table>"
                so dürfte es funktionieren (ungetestet)

                cya CrazyPip

                Kommentar

                Lädt...
                X