Jo: Kleines Logisches/Syntax Problem

Beitrag lesen

hey,

Das kommt hier her:

$query = "SELECT `Tab1`.`Wert1`,`Tab1`.`Wert2`,`Tab2`.`Wert3` FROM `Tab1` LEFT JOIN `Tab1` ON (`Tab2`.`var`=`Tab1`.`var`) WHERE `Tab1`.`var`=$i";
$result = mysql_query($query);
$arr = mysql_fetch_array($result);

Da hast Du auch nur die erste Zeile aus dem Resultset abgeholt. Du würdest hier zum übertragen ins Arrey genau so eine Schleife brauchen, wie unten.

Das sollte eine 1:n verbindung sein zu dem Werte paar aus Tab1 kommen mehrere Zeilen in Tab2, in phpmyadmin wird die resultierende tabelle aus der Abfrage korrekt angezeigt. Und dementsprechend würden die Daten doch auch in einem Mehrdimensionalen Array gespeichert werden, oder?

Und dann hast Du hier gleich weitergemacht?
Oder hat dieses fetch mit dem oberen nichts zu tun?

echo '<table border="1">';
while ($arr = mysql_fetch_array($result))
{
	echo "<tr>";
	echo "<td>". $arr['wert1'] . "</td>";
	echo "<td>". $arr['wert2'] . "</td>";
	echo "<td>". $arr['wert3'] . "</td>";
	echo "</tr>";
}
echo "</table>";
echo '</br>';
echo '<table border="1">';

Das :

$arr = mysql_fetch_array($result)

hab ich auskommentiert wenn ich den "ausgabecode" nutze.

Ok. Dann kann aber bei der unteren Schleife kein Datensatz fehlen.

Tut es aber leider, und das versteh ich nicht.

Alle Werte sind Floats.

Einfache Zahlen zwischen 0.1 bis 40, mit max 3 Nachkommastellen.

Da ich deine Werte nicht kenne, kann ich dazu nichts sagen. Die Typerhaltung von MySQL nach PHP ist eigentlich weitgehend gewährleistet. Wenn anstelle von print_r() mal var_dump()
benutzt, sollten dir die Typen auch angezeigt werden.

Bei der Ausgabe fehlt aber die kontextgerechte Behandlung mit htmlspecialchars()

Da kann ich dir grad nicht folgen. Da ist mein Vokabular beschränkt, sry^^.

Gruß Jo