Aus 3 MySQL-Tabellen lesen

thehasso

Erfahrenes Mitglied
Hallo,

Ich hab wieder mal ein nicht bedachtes Problem und zwar funktioniert es in php aus 3 Tabellen zu lesen.

Sprich ich hab in der Tabelle 1 den Bildnamen in Tabelle 2 die session also in der session ist die Mitgliedsnummer gespeichert und in Tabelle 3 ob der user gerade online ist. Ebenfalls hat der User in allen 3 Tabellen die selbe intID.


Tabelle 1(tblbenutzer):
dateiname -> das ist das feld für den Bildname (siehe sql befehl)
intID

Tabelle 2(online):
session
intID

Tabelle 3(lastlogin):
intID
gerade_online


bis jetzt ist dies mein CODE(für 2 Tabellen):
PHP:
$querystr = "SELECT tblbenutzer.dateiname, tblbenutzer.intID FROM tblbenutzer LEFT JOIN online ON(tblbenutzer.intID = online.intID) WHERE session > '0' AND gerade_online = $anzeigen";

Der funktioniert aber nicht mehr, weil ich jetzt das feld gerade_online in einer anderen tabelle eingeschrieben habe. Die tabelle heisst lastlogin.

Kann man da was funktionierendes draus machen?

Freundliche Grüße
thehasso
 
Zuletzt bearbeitet:
also ich stells mir irgendwie so vor:

PHP:
$querystr = "SELECT tblbenutzer.dateiname, tblbenutzer.intID FROM tblbenutzer LEFT JOIN online ON(tblbenutzer.intID = online.intID) WHERE session > '0' UNION lastlogin WHERE gerade_online = $anzeigen";

also müssten 2 WHERE KLAUSELN dabei sein geht das? wie?:(
 
Hi, deine DB-Struktur:
Tabelle 1(tblbenutzer):
dateiname | intID
Tabelle 2(online):
session | intID
Tabelle 3(lastlogin):
intID | gerade_online

Die angepasste Query:
(ich arbeite meist mit Tabellen-Alias [steht immer hinter dem Tabellennamen])
PHP:
mysql_query("SELECT `dateiname`, `intID` 
FROM `tblbenutzer` user 
LEFT JOIN `online` onl ON `user.intID` = `onl.intID` 
LEFT JOIN `lastlogin` lastlog ON `user.intID` = `lastlog.intID` 
WHERE `lastlog.gerade_online` = '".mysql_real_escape_string($anzeigen)."'
AND onl.session > '0';");

mfg
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück