Guten Abend und ein freundliches 'Moin' an die Community,
ich bin sowohl bei der PHP-Programmierung als auch hier im Forum komplett neu.
Hier hergeführt haben mich meine ersten Stolpersteine im Verständnis von PHP, hier also mein Problem, das für Fortgeschrittene wahrscheinlich recht trivial ist.
Ich habe in einer Datenbank zwei Tabellen FAHRZEUG und SPORTWAGEN (ich habe ein simples Beispiel erstellt, nicht wundern dass das inhaltlich vllt keinen Sinn macht) und möchte Tabelle FAHRZEUG einfach komplett in einer HTML Tabelle ausgeben und die SPORTWAGEN dort hinzufügen, wo FAHRZEUG.MARKE==SPORTWAGEN.MARKE ist.

Ich habe nun folgendes gemacht (HTML und CSS Code habe ich rausgelassen):
Im Anhang sind beide Tabellen, das erhaltene und das gewünschte Ergebnis aufgelistet. Dort sieht man, dass das innere mysql_fetch_array nur in der ersten Iteration funktioniert, danach nicht mehr. Und ich habe keine Ahnung warum und steh auf dem Schlauch.
Wenn es einen viel schöneren Weg gibt, wie ich das lösen kann (denn bei großen Datenmengen sind while-Schleifen mit Datenbankzugriffen innerhalb von while-Schleifen mit Datenbankzugriffen sicher nicht sehr performant), bin ich auch hier für Hilfe sehr dankbar
Gruß und danke,
dewell
ich bin sowohl bei der PHP-Programmierung als auch hier im Forum komplett neu.
Hier hergeführt haben mich meine ersten Stolpersteine im Verständnis von PHP, hier also mein Problem, das für Fortgeschrittene wahrscheinlich recht trivial ist.
Ich habe in einer Datenbank zwei Tabellen FAHRZEUG und SPORTWAGEN (ich habe ein simples Beispiel erstellt, nicht wundern dass das inhaltlich vllt keinen Sinn macht) und möchte Tabelle FAHRZEUG einfach komplett in einer HTML Tabelle ausgeben und die SPORTWAGEN dort hinzufügen, wo FAHRZEUG.MARKE==SPORTWAGEN.MARKE ist.

Ich habe nun folgendes gemacht (HTML und CSS Code habe ich rausgelassen):
PHP-Code:
$fahrzeug = "SELECT * FROM fahrzeug";
$sportwagen = "SELECT * FROM sportwagen";
$db_fahrzeug = mysql_query( $fahrzeug );
$db_sportwagen = mysql_query( $sportwagen );
while ($zeile_fahrzeug = mysql_fetch_array( $db_fahrzeug, MYSQL_ASSOC)) {
echo $zeile['marke'];
while ($zeile_sportwagen = mysql_fetch_array( $db_sportwagen, MYSQL_ASSOC))
{
if ($zeile_sportwagen['marke']==$zeile_fahrzeug['marke'] echo $zeile_sportwagen['modell'];
}
}
Wenn es einen viel schöneren Weg gibt, wie ich das lösen kann (denn bei großen Datenmengen sind while-Schleifen mit Datenbankzugriffen innerhalb von while-Schleifen mit Datenbankzugriffen sicher nicht sehr performant), bin ich auch hier für Hilfe sehr dankbar

Gruß und danke,
dewell

Kommentar