Datenbankabfrage aus 2 Tabellen - eine davon als Array speichern und ausgeben

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

  • Datenbankabfrage aus 2 Tabellen - eine davon als Array speichern und ausgeben

    Hallo,

    ich habe 2 Tabellen (tabell_article.gif und tabelle_pictures) und lese aus der Tabelle article die einzelnen artikel heraus und lasse diese ausgeben.

    Das funktioniert soweit auch (s. Anhang Bild: seite.gif) Da zu jedem Artikel Bilder gehören, möchte ich die dazugehörigen Bilder unter dem jeweiligen Artikel ausgeben (den Dateinamen). Die Tabelle pictures wird ausgelesen und die Ergebnisse als Array gespeichert.

    PHP-Code:
    for($i=0$i<mysql_num_rows($ResultPointer); $i++) {
                  
    $pic_array=mysql_fetch_row($ResultPointer); 
    Jetzt weiß ich nur nicht weiter wie ich die einzelnen Daten des Arrays in der MySQL Ausgabeschleife der Artikel einbingen soll. Im folgenden Code wird die Tabelle article ausgelesen und ausgegeben.

    PHP-Code:
    for($i=0$i<mysql_num_rows($ResultPointer); $i++) {
                  
    $res=mysql_fetch_object($ResultPointer);
                
                    echo 
    '<h2>'.$res->id_article.' '.$res->h2.'</h2>
                        <div class="text">'
    .$res->text.'</div>
                        
                        <!-- Hier müssen die einzelnen Bilder zum Artikel rein -->'

    Weiß jemand eine Lösung oder kann mir hier weiterhelfen?
    Angehängte Dateien

  • #2
    Was du suchst ist ein JOIN:
    SELECT * FROM article a LEFT JOIN pictures p USING id_article;

    Danach kannst du mit einem
    PHP-Code:
    $prev null;
    while (
    $row mysql_fetch_assoc($result)) {
      if (
    $row['article_id'] != $prev) {
        
    $prev $row['article_id'];
        echo 
    $row['article'];
      }
      if (
    $row['dateiname'] != "") {
        echo 
    '<a href="...' htmlspecialchars($row['uppic']) . '...">' htmlspecialchars($row['destination']) . '</a>';
      }

    alles ausgeben.

    Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

    bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
    Wie man Fragen richtig stellt

    Kommentar


    • #3
      Verdammt.... das passt sehr gut. Danke für die Superschnelle Reaktion. Der Trick des Ganzen scheint darin zu liegen, sobald sich die id_article ändert wird $prev mit der id_article überschrieben und ist somit nicht mehr null ... d.h. wenn $prev = der id_article ist werden nur die Daten der Bilder eingefügt... darauf wäre ich so schnell nicht gekommen.... Vielen Dank nochmal.

      Kommentar

      Lädt...
      X