Hallo, hab ein Problem mit dieser Schleife. Entweder ich bin blind oder es hat irgendwas.
Ziel ist folgendes: Ich habe eine Tabelle mit Adressen, eine Tabelle mit Lieferungen. Ziel ist es, alle Adressen, die eine Lieferung gemacht haben, auszugeben.
Ich habe eine Schleife, welche mir alle Adressen ausliest und prüft, ob es eine Lieferung zu dieser ID gibt. Gibt es eine oder mehr, so sollte sie eine Tabellenzeile mit Daten zu diesem Lieferanten ausgeben. Tut sie aber nicht, weil nicht alle Adressen, die eine Lieferung gemacht haben, ausgegeben werden...
Ziel ist folgendes: Ich habe eine Tabelle mit Adressen, eine Tabelle mit Lieferungen. Ziel ist es, alle Adressen, die eine Lieferung gemacht haben, auszugeben.
Ich habe eine Schleife, welche mir alle Adressen ausliest und prüft, ob es eine Lieferung zu dieser ID gibt. Gibt es eine oder mehr, so sollte sie eine Tabellenzeile mit Daten zu diesem Lieferanten ausgeben. Tut sie aber nicht, weil nicht alle Adressen, die eine Lieferung gemacht haben, ausgegeben werden...
PHP Code:
<?php
//Anzahl der Adressen zählen
$sql = "SELECT COUNT(a_id) FROM tbl_adressen";
$sql = mysql_query($sql);
$row = mysql_fetch_assoc($sql);
$anzahl = $row['COUNT(a_id)'];
//Schleife prüft für jede Adresse, ob es eine Lieferung zu dieser gibt
for ($i = 1; $i < $anzahl; $i++) {
$sql_a = "SELECT COUNT(l_id) FROM tbl_lieferung WHERE a_id = '".$i."'";
if ($_POST["standort"] != "0") $sql_a .= " AND s_id = '".$_POST["standort"]."'";
if ($_POST["datumvon"] != "") $sql_a .= " AND l_datum >= '".$_POST["datumvon"]."'";
if ($_POST["datumbis"] != "") $sql_a .= " AND l_datum <= '".$_POST["datumbis"]."'";
$sql_a = mysql_query($sql_a);
$row_a = mysql_fetch_assoc($sql_a);
$anzahl_a = $row_a['COUNT(l_id)'];
// Gibt es eine oder mehrere Lieferungen zu dieser Adresse -> Ausgabe der Daten.
if ($anzahl_a > 0) {
$sql = "SELECT * FROM tbl_adressen WHERE a_id = '".$i."'";
$sql = mysql_query($sql);
$row = mysql_fetch_assoc($sql);
echo "<tr>";
echo "<td height=\"19\" ><div align=\"center\">".$row["a_firmenname"]."</div></td>";
echo "<td height=\"19\" ><div align=\"center\">".$row["a_strasse"]."</div></td>";
echo "<td height=\"19\" ><div align=\"center\">".$row["a_plz"]."</div></td>";
echo "<td height=\"19\" ><div align=\"center\">".$row["a_ort"]."</div></td>";
echo "<td height=\"19\" ><div align=\"center\">".$row["a_tel1"]."</div></td>";
echo "<td height=\"19\" ><div align=\"center\">".$row["a_fax"]."</div></td>";
echo "<td height=\"19\" ><div align=\"center\">".$row["a_email"]."</div></td>";
echo "</tr>";
}
$i++;
}
?>
Comment