abakuz
Mitglied
Hallo,
ich habe folgendes Problem:
ich möchte zwei Querys aus einer DB-Tabelle zusammen fassen.
Der Tabellenkopf ist so aufgebaut:
--------------------------------------
| id |ct_id | c_quest | c_answ |
--------------------------------------
Folgendes habe ich probiert:
Ergebnis: (Notice: Undefined index: on line 12)
Diesen Lösungsansatz habe ich von dieser Seite:
http://tut.php-q.net/mysql-query.html
=============================================================================
Nun habe ich den Code geändert, und es funktioniert.
Aber der Code sieht schrecklich "klotzig" aus:
Ergebnis: (das ist auch mein Zielformat: oben die Fragen, unten die Antworten...)
1. Warum bekomm ich im ersten Beispiel immer den Fehler "Undefined Index"?
2. Wie könnte ich die Abfrage aus dem unteren Beispiel eleganter lösen?
Gruß abakuz
ich habe folgendes Problem:
ich möchte zwei Querys aus einer DB-Tabelle zusammen fassen.
Der Tabellenkopf ist so aufgebaut:
--------------------------------------
| id |ct_id | c_quest | c_answ |
--------------------------------------
Folgendes habe ich probiert:
PHP:
require("inc/db_connect.inc.php");
1: $id="7";
2:
3:
4: $sqls = array("SELECT c_quest FROM content WHERE ct_id = $id", "SELECT c_answ FROM content WHERE ct_id = $id");
5:
6: foreach($sqls as $sql) {
7: $result = mysql_query($sql) or die(mysql_error());
8: }
9:
10: echo "Frage/Antwort aus DB:<br />\n";
11: while($row = mysql_fetch_assoc($result)) {
12: echo $row['c_quest'];
13: echo $row['c_answ'] ."<br />";
14: }
Ergebnis: (Notice: Undefined index: on line 12)
Code:
Frage/Antwort aus DB:
Notice: Undefined index: c_quest in C:\Apache\Apache2\htdocs\SQL-Uebungen\test.php on line 12
Antwort1, Antwort1, Antwort1,Antwort1, Antwort1, Antwort1,Antwort1, Antwort1, Antwort1,
Antwort1, Antwort1, Antwort1,Antwort1, Antwort1, Antwort1,
Antwort1, Antwort1, Antwort1
Notice: Undefined index: c_quest in C:\Apache\Apache2\htdocs\SQL-Uebungen\test.php on line 12
Antwort2, Antwort2, Antwort2,Antwort2, Antwort2, Antwort2,Antwort2, Antwort2, Antwort2,
Antwort2, Antwort2, Antwort2,Antwort2, Antwort2, Antwort2,
Antwort2, Antwort2, Antwort2,
Notice: Undefined index: c_quest in C:\Apache\Apache2\htdocs\SQL-Uebungen\test.php on line 12
Antwort3, Antwort3, Antwort3,Antwort3, Antwort3, Antwort3,Antwort3, Antwort3, Antwort3,
Antwort3, Antwort3, Antwort3,Antwort3, Antwort3, Antwort3,
Antwort3, Antwort3, Antwort3,
...etc..
Diesen Lösungsansatz habe ich von dieser Seite:
http://tut.php-q.net/mysql-query.html
=============================================================================
Nun habe ich den Code geändert, und es funktioniert.
Aber der Code sieht schrecklich "klotzig" aus:
PHP:
require("inc/db_connect.inc.php");
$id="7";
//Mehrere Abfragen gleichzeitig
$frag = ("SELECT c_quest FROM content WHERE ct_id = $id");
$antw = ("SELECT c_answ FROM content WHERE ct_id = $id");
$frage = mysql_query($frag) or
die("<b>Query:------> </b> ".$frag."<br>".
"<b>Q-Antwort:--> </b>".mysql_error());
$antwort = mysql_query($antw) or
die("<b>Query:------> </b> ".$antw."<br>".
"<b>Q-Antwort:--> </b>".mysql_error());
echo "<b>Frage/Antwort aus der DB:<br /><br /></b>";
while($row = mysql_fetch_assoc($frage)) {
echo $row['c_quest']."<br />\n";
}
echo "<br /><br /><br />";
while($row = mysql_fetch_assoc($antwort)) {
echo $row['c_answ']."<p />\n";
}
Ergebnis: (das ist auch mein Zielformat: oben die Fragen, unten die Antworten...)
Code:
Frage/Antwort aus DB:
Frage 1
Frage 2
Frage 3
Antwort1, Antwort1, Antwort1,Antwort1, Antwort1, Antwort1,Antwort1, Antwort1, Antwort1,
Antwort1, Antwort1, Antwort1,Antwort1, Antwort1, Antwort1,
Antwort1, Antwort1, Antwort1
Antwort2, Antwort2, Antwort2,Antwort2, Antwort2, Antwort2,Antwort2, Antwort2, Antwort2,
Antwort2, Antwort2, Antwort2,Antwort2, Antwort2, Antwort2,
Antwort2, Antwort2, Antwort2,
Antwort3, Antwort3, Antwort3,Antwort3, Antwort3, Antwort3,Antwort3, Antwort3, Antwort3,
Antwort3, Antwort3, Antwort3,Antwort3, Antwort3, Antwort3,
Antwort3, Antwort3, Antwort3,
...etc..
1. Warum bekomm ich im ersten Beispiel immer den Fehler "Undefined Index"?
2. Wie könnte ich die Abfrage aus dem unteren Beispiel eleganter lösen?
Gruß abakuz
Zuletzt bearbeitet: