Kalle_Worms: SELECT: Vorausschau nächster Treffer

Hallöle,

innerhalb der Schleife
while( $row = mysql_fetch_array($result) ) {
  ...
}

gebe ich eine Tabellenzeile <tr>...</tr> aus. Die Ergebnismenge sieht etwa so aus:

artikel eigenschaft
------- -----------
   4711 blau
   4711 220 V
   4712 NULL
   4713 gepolstert
   4713 mit Schutzfolie

Innerhalb einer Tabellenzeile sollen sämtliche Eigenschaften des Artikels abgearbeitet werden. Wenn ich auf den nächsten Artikel treffe, beginnt die while-Schleife von vorn. Aber sie würde den bereits ge-fetchten Treffer überschreiben.

Kann ich den nächsten Treffer nur als "Vorausschau" holen oder den Pointer um eins zurücksetzen ?

Danke für eine ehrliche Antwort, Kalle

  1. hi,

    Innerhalb einer Tabellenzeile sollen sämtliche Eigenschaften des Artikels abgearbeitet werden. Wenn ich auf den nächsten Artikel treffe, beginnt die while-Schleife von vorn. Aber sie würde den bereits ge-fetchten Treffer überschreiben.

    nein, nicht wenn du es richtig machst.

    $alter_artikel = '';

    while( $row = mysql_fetch_array($result) ) {
      if($row['artikel'] != $alter_artikel) {
        echo "..."; // neue überschrift o.ä. ausgeben
      }
      echo $row[...]; // daten des aktuellen datensatzes ausgeben
      $alter_artikel = $row_artikel;
    }

    sowas nennt man übrigens einen gruppenwechsel.

    gruß,
    wahsaga

    --
    "Look, that's why there's rules, understand? So that you _think_ before you break 'em."
    1. hi,

      Habe verstanden, danke.

      Kalle