MySQL Abfrage 2 Tabellen

kcyberbob

Erfahrenes Mitglied
Warum bekomme ich hier keine Ausgabe?

PHP:
<?
	$result = $mysql->Select("*", "e107_user as t1, e107_user_extended as t2", "t1.user_class = '3' AND t2.user_extended_id = 't1.user_id' AND t2.user_Gilde = 'United'","","");
	while ($row = $mysql->FetchObject($result)) {
	
?>  
  <tr>
    <td>&nbsp;</td>
    <td bgcolor="#F0F2F7" class="leftbottomline"><? echo $row->user_name; ?></td>
    <td bgcolor="#F0F2F7" class="leftbottomline"><? echo $row->user_job; ?></td>
    <td bgcolor="#F0F2F7" class="rightleftbottomline"><? echo $row->user_jobname; ?></td>
  </tr>
<?
	}
?>

Bitte helft mir weiter.

Gruß kcyberbob
 
Warum bekomme ich hier keine Ausgabe?

PHP:
<?
    $result = $mysql->Select("*", "e107_user as t1, e107_user_extended as t2", "t1.user_class = '3' AND t2.user_extended_id = 't1.user_id' AND t2.user_Gilde = 'United'","","");
    while ($row = $mysql->FetchObject($result)) {
    
?>  
  <tr>
    <td>&nbsp;</td>
    <td bgcolor="#F0F2F7" class="leftbottomline"><? echo $row->user_name; ?></td>
    <td bgcolor="#F0F2F7" class="leftbottomline"><? echo $row->user_job; ?></td>
    <td bgcolor="#F0F2F7" class="rightleftbottomline"><? echo $row->user_jobname; ?></td>
  </tr>
<?
    }
?>
Bitte helft mir weiter.

Gruß kcyberbob

Probiers doch mal mit der "normalen" Syntax:

PHP:
<?
   $result = mysql_query("select * from e107_user t1, e107_user_extended t2 where......");
    while ($row = mysql_fetch_object($result)) {
    
?>  
  <tr>
    <td>&nbsp;</td>
    <td bgcolor="#F0F2F7" class="leftbottomline"><? echo $row->user_name; ?></td>
    <td bgcolor="#F0F2F7" class="leftbottomline"><? echo $row->user_job; ?></td>
    <td bgcolor="#F0F2F7" class="rightleftbottomline"><? echo $row->user_jobname; ?></td>
  </tr>
<?
    }
?>
 
Bekommst du bei deinem Script Fehlermeldungen zurück ?

wenn du keine Fehlermeldung bekommst setze mal diesen Code ein:
PHP:
<?
   echo mysql_error();
   $result = mysql_query("select * from e107_user t1, e107_user_extended t2 where......");
    while ($row = mysql_fetch_object($result)) {
    
?>  
  <tr>
    <td>&nbsp;</td>
    <td bgcolor="#F0F2F7" class="leftbottomline"><? echo $row->user_name; ?></td>
    <td bgcolor="#F0F2F7" class="leftbottomline"><? echo $row->user_job; ?></td>
    <td bgcolor="#F0F2F7" class="rightleftbottomline"><? echo $row->user_jobname; ?></td>
  </tr>
<?
    }
?>

Gruss Bircke
 
Kommt keine Fehlermeldung.

Ich erkläre nochmal genau was ich vorhabe.

Es gibt eine Tabelle "e107_user" und eine Tabelle "e107_user_extended" in der Datenbank.

Die Spalten der Tabelle e107_user:
user_id -- user_class -- user_name -- usw........

Die Spallten der Tabelle e107_user_extended:

user_extended_id -- use_Gilder -- user_job -- user_jobname -- usw.....


Die user_id und die user_extended_id sind identisch, damit man erkennt welcher Eintrag in der e107_user_extended Tabellen zu dem Eintrag in der Tabelle e107_user gehört.


Ich will jetzt alle User abfragen die in der Spalte user_class = 3 und in der Tabelle e107_user haben und in der e107_user_extended Tabelle in der Spalte user_Gilde = United.

Hoffe das war verständlich.
 
Google mal nach JOIN, da müsstest du fündig werden.

Achja,
echo mysql_error() sollte nach dem query gesetzt werden ;)
Vorher existiert noch kein Fehler ;-)
 
PHP:
	$result = $mysql->Select("A.*, U.*", "e107_user As A, e107_user_extended As U", "A.user_class = '3' AND A.user_id = U.user_extended_id AND U.user_Gilde = 'GerFightClub'","user_job DESC","");
	while ($row = $mysql->FetchObject($result)) {


Dast ist die Lösung.

DANKE ALLEN!
 
Zurück