2 while Schleifen

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

  • 2 while Schleifen

    Hallo!
    Ich möchte so eine Liste haben:
    Kat1
    -Frage1
    -Frage2
    -...

    Kat2
    -Frage1
    -Frage2
    -...

    mit dem unteren code krige ich nur folg. raus:

    Kat1
    -Frage1
    Kat2
    Kat3
    ..
    Also, die Zweite Schleife wird nur ein Mal durchgegangen...
    kann mir jemand sagen wieso?
    Danke für die Hilfe!
    PHP-Code:
     $k "select distinct kat from tab0_faqs";
     
    $kate mysql_query($k$connection_id);
    while (
    $row = @mysql_fetch_array($kate)) 
    {  
                
    echo 
    "<strong>".$row[kat]."<br></strong>";
                
    $f "select * from tab0_faqs where kat=$row[kat] ORDER by id";
    $fra mysql_query($f$connection_id);
        while (
    $row = @mysql_fetch_array($fra)) 
        { 
        echo 
    " <li><a href= ... >".$row[frage]."</a></li><br>";                
        } 

  • #2
    PHP-Code:

    $k 
    "select distinct kat from tab0_faqs";
     
    $kate mysql_query($k$connection_id);
    while (
    $rowkat mysql_fetch_array($kate)) 
    {  
                
    echo 
    "<strong>".$rowkat[kat]."<br></strong>";
                
    $f "select * from tab0_faqs where kat=$rowkat[kat] ORDER by id";
    $fra mysql_query($f$connection_id);
        while (
    $rowfra mysql_fetch_array($fra)) 
        { 
        echo 
    " <li><a href= ... >".$rowfra[frage]."</a></li><br>";                
        }

    mfg
    marc75

    <Platz für anderes>

    Kommentar


    • #3
      danke, aber leider hat es nichts gebracht...
      rowkat, rowfra..

      läuft die Fragen-Schleife nur ein mal durch

      Kommentar


      • #4
        hmm,

        PHP-Code:
        $f "select * from tab0_faqs where kat=$row[kat] ORDER by id"
        PHP-Code:
        $f "select * from tab0_faqs where kat='".$row['kat']."' ORDER by id"
        Die Zeit hat ihre Kinder längst gefressen

        Kommentar


        • #5
          an der syntax dürfte es so nicht liegen, wobei die syntax wirklich etwas "knapp" bemessen wurde.

          frage: liegen überhaupt die entsprechenden datensätze vor?
          wurde $f bzw $k mal mit echo ausgegebn und dieser string in phpmysql getestet?

          werden irgendwelche fehler angezeigt?

          Kommentar


          • #6
            Klar wird was angezeigt..
            also, dass kommt raus
            mit dem unteren code krige ich nur folg. raus:

            Kat1
            -Frage1
            -Frage2
            Kat2
            Kat3
            ..

            Also nur Fragen zur Kategorie 1....und Kategorien selbst (kat1, kat2...), aber nicht die Fragen zu den allen restlichen Kategorien (von 2 bis...)

            ;-(....

            Kommentar


            • #7
              zeig mal die datenbank struktur mit ein paar beipieldatensatzen her

              Kommentar


              • #8
                Die DB ist in ordnung, ich kriege auch alles raus (für editieren und sw)
                4 Felder
                id
                frage
                antwort
                kat

                ist mit datensätzen gefüllt, etwa
                1
                de
                frage1
                antwort1

                Kommentar


                • #9
                  Hallo,

                  frage: liegen überhaupt die entsprechenden datensätze vor?
                  wurde $f bzw $k mal mit echo ausgegebn und dieser string in phpmysql getestet?
                  Klar wird was angezeigt..
                  also, dass kommt raus
                  mit dem unteren code krige ich nur folg. raus:

                  Kat1
                  -Frage1
                  -Frage2
                  Kat2
                  Kat3
                  Die Frage ist, ob für die restlichen Kats auch Frage-Datensätze existieren oder nicht?

                  Probier mal damit:

                  PHP-Code:
                  $k "SELECT DISTINCT KAT FROM TAB0_FAQS";
                  $kate mysql_query($k$connection_id);
                  while (
                  $Kategorie mysql_fetch_row($kate)) 
                      {  
                         echo 
                  "<strong>".$Kategorie."<br></strong>";
                          
                  $f "SELECT * FROM TAB0_FAQS WHERE KAT='".$Kategorie."'ORDER BY ID";
                          
                  $fra mysql_query($f$connection_id);
                              while (
                  $Frage mysql_fetch_row($fra)) 
                                  { 
                                      echo 
                  " <li><a href= ... >".$Frage."</a></li><br>";
                                  }
                      } 
                  Außerdem wäre es besser, wenn du deine Tabelle in "Normal" From bringen würdest. Also 2 Tabellen daraus machen tblKategorien, tblFragen (das nur am Rande...)
                  Gruß, Otto
                  Zuletzt geändert von otto-mueller; 26.02.2004, 19:39.

                  Kommentar

                  Lädt...
                  X