Hallo,
ich möchte gerne zwei SQL Befehle ausführen lassen. Momentan sieht es so aus...
<?php
include("connect.php");
$sql = "SELECT test1, test2, test3, test3 FROM test_test";
$abfrageergebnis = mysql_query( $sql, $conID );
while ($datensatz = mysql_fetch_array( $abfrageergebnis ))
{
$sql2 = "SELECT u.wurst, u.otto, u.test5, h.test4 FROM permissions p INNER JOIN users u ON p.user_id = u.id INNER JOIN hosts h ON p.host_id = h.id WHERE u.otto = ".htmlspecialchars( $datensatz['test2'] )." AND u.test5 = ".htmlspecialchars( $datensatz['test3'] )."";
}
$ergebnis = mysql_query( $sql2, $conID );
echo '<br />';
echo '<table border="1">';
echo "<tr><th>Test</th><th>Test</th><th>Test<th>Test</th></tr>";
while ($satz = mysql_fetch_array( $ergebnis ))
{
echo "<tr>";
echo "<td>" .htmlspecialchars( $satz['u.wurst'] ). "</td>";
echo "<td>" .htmlspecialchars( $satz['u.otto'] ). "</td>";
echo "<td>" .htmlspecialchars( $satz['u.test5'] ). "</td>";
echo "<td>" .htmlspecialchars( $satz['h.test4'] ). "</td>";
echo "</tr>";
}
echo "</table>";
?>
Ich bekomm allerdings nur die Tabelle angezeigt, keine Daten. Nicht wundern wegen der Namen der Tabelle, habs hierfür geändert.
Weiß jemand vielleicht woran des liegen mag?
Grüße, Tim
Seite 1 von 1
Php: Zwei Sql Abfragen In Einer Seite
Anzeige
#2
geschrieben 25. August 2009 - 15:20
Ich vermute, dass das u. und das h. falsch sind. Aber versprechen will ich es nicht. Mach doch mal ein
um zu sehen, wie das Array aussieht.
MfG TO_Webmaster
print_r($satz);
um zu sehen, wie das Array aussieht.
MfG TO_Webmaster
The old reverend Henry Ward Beecher
called a hen the most elegant creature.
The hen pleased for that,
laid an egg in his hat.
And so did the hen reward Beecher.
called a hen the most elegant creature.
The hen pleased for that,
laid an egg in his hat.
And so did the hen reward Beecher.
#3
geschrieben 25. August 2009 - 16:07
Naja, das kann auch nicht gehen
Das "u." dient nur dazu, der Query mitzuteilen, auf welche Tabelle sich die Abfrage bezieht.
Angesprochen wird das Ergebnis aber immer rein nur mit dem Namen, also aus "u.wurst" würde dann bei dir "$satz['wurst']" werden.
Ich empfehle für die Entwicklung immer die Funktion "error_reporting = E_ALL" zu setzen, dann hättest du den Fehler schon gesehen, weil PHP dann moniert hätte, das die Variablen welche du ausgeben willst nicht existieren (und folglich nichts ausgegeben werden kann).
Das "u." dient nur dazu, der Query mitzuteilen, auf welche Tabelle sich die Abfrage bezieht.
Angesprochen wird das Ergebnis aber immer rein nur mit dem Namen, also aus "u.wurst" würde dann bei dir "$satz['wurst']" werden.
Ich empfehle für die Entwicklung immer die Funktion "error_reporting = E_ALL" zu setzen, dann hättest du den Fehler schon gesehen, weil PHP dann moniert hätte, das die Variablen welche du ausgeben willst nicht existieren (und folglich nichts ausgegeben werden kann).
Thema verteilen:
Seite 1 von 1