Tabellen aus DB verknüpfen
wuscheck
- php
Hallo,
ich habe das folgende Problem:
In einer Tabelle einer MYsql-DB steht eine Abkürzung. In einer anderen Tabellen, die Abkürzung mit dem jeweils dazu gehörenden Langnamen. Frage ich die erste Tabelle ab, liefert sie mir die Abkürzung... wie bekomme ich anstatt der Abkürzung den Langnamen angezeigt... Meine Abfrage der ersten Tabelle mache ich mit:
$result=mysql_db_query....
$anzahl=mysql_numrows($result);
for ($i=0;$i<$anzahl;$i++) {
$abk=mysql_result($result, $i, "abk");
...
}
endif;
Moin!
In einer Tabelle einer MYsql-DB steht eine Abkürzung. In einer anderen Tabellen, die Abkürzung mit dem jeweils dazu gehörenden Langnamen. Frage ich die erste Tabelle ab, liefert sie mir die Abkürzung... wie bekomme ich anstatt der Abkürzung den Langnamen angezeigt... Meine Abfrage der ersten Tabelle mache ich mit:
$result=mysql_db_query....
$anzahl=mysql_numrows($result);
for ($i=0;$i<$anzahl;$i++) {
$abk=mysql_result($result, $i, "abk");
...
}
endif;
SELECT tab1.spalte1, tab1.spalte2,..., tab2.langform FROM tab1 LEFT JOIN tab2 ON (tab1.abk=tab2.abk) WHERE bedingung
Laß die Datenbank für dich arbeiten, das wird einfacher für dich. :)
- Sven Rautenberg
Moin!
In einer Tabelle einer MYsql-DB steht eine Abkürzung. In einer anderen Tabellen, die Abkürzung mit dem jeweils dazu gehörenden Langnamen. Frage ich die erste Tabelle ab, liefert sie mir die Abkürzung... wie bekomme ich anstatt der Abkürzung den Langnamen angezeigt... Meine Abfrage der ersten Tabelle mache ich mit:
$result=mysql_db_query....
$anzahl=mysql_numrows($result);
for ($i=0;$i<$anzahl;$i++) {
$abk=mysql_result($result, $i, "abk");
...
}
endif;
SELECT tab1.spalte1, tab1.spalte2,..., tab2.langform FROM tab1 LEFT JOIN tab2 ON (tab1.abk=tab2.abk) WHERE bedingung
Laß die Datenbank für dich arbeiten, das wird einfacher für dich. :)
- Sven Rautenberg
Und wie spreche ich dann die echos an mit tab1.spalte1 oder ganz normal mit spalte 1, ich bekomme nämlich den Fehler Supplied argument is not a valid MySQL result resource zurück... und zwar in der Zeile mit $anzahl=mysqlnumrows($result)...
Moin!
Und wie spreche ich dann die echos an mit tab1.spalte1 oder ganz normal mit spalte 1, ich bekomme nämlich den Fehler Supplied argument is not a valid MySQL result resource zurück... und zwar in der Zeile mit $anzahl=mysqlnumrows($result)...
Das bedeutet, die SQL-Abfrage war fehlerhaft. mySQL liefert in mysql_error($result) und mysql_errno($result) die Fehlermeldung und Fehlernummer der Abfrage. Die solltest du dir mal anschauen. Irgendein Fehler ist dann im Select-Statement drin.
- Sven Rautenberg