Antworten auf deine Fragen:
Neues Thema erstellen

foreach produziert fehlerhafte Ausgabe

owieortho

Aktives Mitglied

Hallo,

ich habe ein Skript, welches zwei MySQL-Tabellen abfragt. Tabelle 1 enthält Fragen, Tabelle 2 die Antworten. Ziel ist es die jeweilige Frage als Überschrift darzustellen und darunter als Liste die dazu gegebenen Antworten. Da diese Abfrage über mehrere Frage-Antwort-Kombinationen immer die gleiche ist, wollte ich das zusammenfassen:
PHP:
$c_id = 12345;
$frage = array("q1","q5"); # Die abzufragenden Fragen, die Nummerierung muss nicht durchgehend sein.

foreach ($frage AS $q) {
$sql = "SELECT `de` FROM fragen WHERE `frage`= '". $q ."'";
$query = mysql_query ($sql);
$result = mysql_fetch_row ($query);

echo "<h3>". $result[0] ."</h3>\n<ul>\n"; # Stellt die im array frage angegebenen Fragen als Überschrift dar.

$sql2 = "SELECT `". $q ."` FROM antworten WHERE `void` = 1 AND `c_id` = ". $c_id ."";
$query2 = mysql_query ($sql2);
while ($results2 = mysql_fetch_array ($query2))
$reply[] = $results2;

foreach ($reply AS $r) {
if (empty ($r[0])) {
echo ""; # für den Fall, dass einmal keine Antwort gegeben wurde.
} else {
    echo "<li>". $r[0] ."</li>\n";
}
}
echo "</ul>";
}
Mit den Überschriften klappt es prima, auch mit der ersten Liste. Jedoch bei der zweiten Liste werden mir die Antworten zur ersten Frage und danach die eigentlich gewünschten Antworten zur zweite Frage aufgelistet:
Frage 1
  • Antwort A
  • Antwort B
  • Antwort C
Frage 2
  • Antwort A
  • Antwort B
  • Antwort C
  • Antwort a
  • Antwort b
  • Antwort c
Ich finde einfach nicht, wo ich den Fehler reingebaut habe, bzw. welchem Denkfehler ich aufsitze.

Vielen Dank fürs Drüberschauen und etwaige Tipps und Hilfestellungen.
O.
 
Zuletzt bearbeitet:

owieortho

Aktives Mitglied

Ich glaube manchmal muss man hier nur etwas posten, um dann von selbst auf die Antwort zu kommen:

Ich muss das array nach jeder Runde auch wieder leeren, also vor der letzten geschweiften Klammer:
PHP:
$reply = array();
Danach gings.... wie war das mit dem Wald und den Bäumen?

Allen einen schönen Tag
O.
 

ovbb

es gibt für alles eine weg

:) hab sowas mal als stored procedure abgebildet (MS-SQL). falls es dich interessiert kann ich es ja suchen. vielleicht finde ich es ja irgendwo
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Neueste Themen & Antworten

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.635
Beiträge
1.538.449
Mitglieder
67.556
Neuestes Mitglied
Ggirl
Oben