Ausgabe im Browser anpassen

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

  • Ausgabe im Browser anpassen

    Hallo, ich Frage eine kleine DB ab mit den Feldern id, gruppen_id und fahrzeuge. Die gruppen_id frage ich mit distinct ab, bekomme aber im Browser das ergebnis immer mehrmals angezeigt. Kann da vielleicht jemand helfen?

    PHP-Code:

    <?
    echo "<tr>";
    // Ab hier die Abfrage der Datenbank und Erzeugung der Tabelle


    // Anzeige der übermittelten Daten
    //echo "<pre>";
    //print_r($_GET);
    //echo "</pre>";

    //Welche Gruppen gibt es
    $gruppen = mysql_query("SELECT distinct gruppen_id FROM FAHRZEUGE where fahrzeugart ='$gruppe'", $conn);
    $anzahl=mysql_num_rows($gruppen);
    echo "Anzahl an verschiedenen Gruppen $anzahl";
    while ($fahrzeuggruppen = mysql_fetch_row($gruppen))



    {

    //Welche Fahrzeuge gehören zu welcher Gruppe
    $fahrzeuge = mysql_query("SELECT id, fahrzeug FROM FAHRZEUGE where gruppen_id ='$fahrzeuggruppen[0]'", $conn);
    while ($gruppenfahrzeuge = mysql_fetch_array($fahrzeuge))
    {

    echo"<td class=gruppe width=100>Gruppe $fahrzeuggruppen[0]</td>";
    echo"<td class=tabreihe width=100><a href='einzel.php?id=$gruppenfahrzeuge[0]'>$gruppenfahrzeuge[1]</a></td>";
    echo "</tr>";
    }

    }

    echo "</tr>";
    ?>
    Also im Browser bekomme ich eine 2 spaltige Tabelle, wo in der ersten Spalte die Gruppe steht und in der 2 Spalte eben die dazugehörigen Fahrzeuge. Wenn es in einer Gruppe mehr als ein Fahrzeug gibt soll in Spalte 1 die Gruppe nur einmal stehen.

    Die Testseite findet ihr hier

    http://connettix.de/fahrzeuge/
    Vielen Dank

  • #2
    Eine bessere Lösung wäre:

    Alle Datensätze abfragen (musst du ja so oder so, also lieber gleich), nach gruppen sortieren

    _vor_ der Schleife: $gruppen_id_alt = 9999999999; // wert der nie eintritt

    while($ergebnis holen)
    {
    if($gruppe_aktuelles_ergebnis != $gruppen_id_alt) {
    zeile zu;
    neue gruppen id anzeigen
    }

    fahrzeug anzeigen;
    }

    Hoffe du verstehst das, wenn nicht, nochmal nachfragen

    cya max

    PHP-Code:
    <?php
    //Welche Gruppen gibt es
    $gruppen mysql_query("SELECT id, gruppen_id, fahrzeug 
                                                    FROM FAHRZEUGE 
                                                    WHERE fahrzeugart ='
    $gruppe'"$conn);
    $anzahl=mysql_num_rows($gruppen);
    $gruppen_id_alt 999;
    echo 
    "Anzahl an verschiedenen Gruppen $anzahl";
    while (
    $fahrzeuggruppen mysql_fetch_assoc($gruppen))
    {
        
    // Neue Gruppe ?
        
    if($liste['gruppen_id'] != $gruppen_id_alt) {
            echo 
    '<tr>
                            <td class="gruppe" width="100">Gruppe '
    .$fahrzeuggruppen['gruppen_id'].'</td>
                        <td>&nbsp;</td></tr>'
    ;
            
    $gruppen_id_alt $liste['gruppen_id'];
            }    
        
    // Fahrzeug ausgeben
        
    echo '<tr>
                        <td>&nbsp;</td>
                        <td class="tabreihe" width="100">
                            <a href="einzel.php?id='
    .$fahrzeuggruppen['id'].'">'.$fahrzeuggruppen['id'].'</a>
                        </td>
                    </tr>'
    ;            
    }
    ?>
    musst sicher die ausgabe noch bisserl anpassen, aber sollte so gehen
    Zuletzt geändert von MaxP0W3R; 28.09.2004, 13:48.


    An mich bitte keine unaufgeforderten E-Mails senden (ausser ihr seid bereit geld zu zahlen, dann gerne )

    Kommentar


    • #3
      such mal nach gruppenwechsel hier im Forum

      Kommentar


      • #4
        und brecht mal euren code um!
        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


        • #5
          Erst einmal DANKE für die Tipps, komme erst heute abend dazu weiter zu testen, sollte ich noch Fragen haben mellde ich mich noch einmal.

          Schöne Grüße
          Vielen Dank

          Kommentar

          Lädt...
          X