Mehrere DB-Abfragen mit einem Befehl
Patrick
- php
0 Sönke Tesch0 Patrick
Hallo,
zunächst einmal möchte ich mitteilen, das ich ein PHP-Newbie bin.
Ich habe ein Problem.
Ichmöchte gerne eine DB-Abfrage realisieren und habe auch schon ein einigermassen laufendes Script.
Wie kann ich noch zusätzliche Daten auslesen?
Hier einmal ein Stückchen Code:
else {
if(isset($unternehmenID))
{
$result = mysql_query("select * from tbl_mitarbeiter where id = " . $unternehmenID);
$brancheName = "";
} else {
$result = mysql_query("select * from tbl_mitarbeiter A, tbl_mitarbeiter_sachgebiet_assoc B where B.branche_id = " . $brancheID . " and B.unternehmen_id = A.id order by A.name");
$brancheName = "Sachbearbeiter zum Gebiet " . $brancheName . ":";
$wasID = mysql_query("select amt from tbl_sachgebiet where id = " . $brancheID);
}
im unteren Teil möchte ich noch die wasID selektieren.
Nur bekomme ich keine Ausgabe.
Was mache ich falsch?
Vielen Dank
Patrick
Ichmöchte gerne eine DB-Abfrage realisieren und habe auch schon ein einigermassen laufendes Script.
$result = mysql_query("select * from tbl_mitarbeiter A, tbl_mitarbeiter_sachgebiet_assoc B where B.branche_id = " . $brancheID . " and B.unternehmen_id = A.id order by A.name");
$brancheName = "Sachbearbeiter zum Gebiet " . $brancheName . ":";
$wasID = mysql_query("select amt from tbl_sachgebiet where id = " . $brancheID);
}
im unteren Teil möchte ich noch die wasID selektieren.
Nur bekomme ich keine Ausgabe.
Was mache ich falsch?
Also erstmal möchte fröhlich in's Blaue hinein behaupten, daß Deine Abfrage nicht ganz richtig ist, weil es doch eigentlich "tbl_mitarbeiter as A" heißen sollte und nicht "tbl_mitarbeiter A".
Dann wäre Dir dieser Fehler (wenn's denn einer ist) sicher selbst aufgefallen, wenn Du das gemacht hättest, was jeder schlaue (und misstrauische) Programmierer bei Ergebnissen und Daten macht, die von "außen" kommen: eine Fehlerprüfung.
Die fehlende Fehlerprüfung ist hier aber nicht so wild, denn der eigentliche Grund, warum Du keine Ausgabe kriegst, ist einfach, daß Du anscheinend vergessen hast, die Daten auszulesen und auszugeben.
mysql_query() führt die Abfrage nur aus und liefert Dir einen großen 40"-Container mit Daten. Diese Daten mußt Du per mysql_fetch_assoc() dann erstmal ausladen (oder mit ähnlichen Funktionen, mysql_fetch_assoc() ist aber IMHO die günstigste).
Schön ausformuliert sieht das Ganze dann so aus:
if (! $result=mysql_query("select blabla from und as so where weiter=1"))
{
die("SQL-Fehler: ".mysql_error());
}
else
{
while ($row=mysql_fetch_assoc($result))
{
echo "blabla=".$row["blabla"] . "\n";
};
};
Gruß,
soenk.e
Hi Sönke,
vielen Dank für deine Hilfe!!!!
Ich bin jetzt zwar in der Lage die Sachen auszulesen, muss mich aber da noch reinarbeiten.
Was ich mir Sicherheit auch tun werde, ich wills ja verstehen und nicht ur einfach den Code haben.
Also Danke schön
Patrick