php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2007

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 29.05.2007, 20:21  
Benutzer
 
Registriert seit: 23.08.2006
Beiträge: 86
Canni
Standard JOIN ( ich weiß das hat es schon oft... )

Hi.
Ich weiß, es gibt hier schon zig Threads zum Thema Joins, aber ich krieg´s nicht hin.
Ich habe 3 Tabellen

Tabelle1:
char_id, race_id, class_id, user_id, char_name, lvl, scores, gold

Tabelle2:
race_id, race_name, race_skill

Tabelle3:
class_id, class_name, intelli, strenght, stamina, mana, ability, armor

Tabelle1 dient als "Verknüfungstabelle" und ordnet dem Char Rasse(race_id) und Klasse(class_id) zu. Die user_id gibt an welchem User der Char gehört. Jetzt will ich natürlich den Klassen und den Rassennamen anstelle der ID´s
ausgeben. Mit einzelnen Abfragen kann ich mir das zusammenbauen, aber ich wollte lieber "joinen" ( und lernen^^ ).
Aber irgendwie haut das nicht hin ( erstmal nur für die Verknüpfung mit Tabelle2 ):
PHP-Code:
$dbq mysql_query("SELECT * FROM `Tabelle1` JOIN `Tabelle2` ON (`Tabelle1.race_id` = `Tabelle2.race_id`) WHERE `Tabelle1.user_id` = '2' ");
$res mysql_fetch_assoc($dbq);
echo 
$res['race_name']; 
.. ich bekomme dann das gute alte Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource...
Kann mir jemand einen Hint geben wie ich das mit JOIN in den Griff bekommen?
Danke schon mal...
Canni ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 29.05.2007, 20:47  
Erfahrener Benutzer
 
Registriert seit: 08.11.2004
Beiträge: 2.079
Der_Gerhard ist zur Zeit noch ein unbeschriebenes Blatt
Der_Gerhard eine Nachricht über ICQ schicken
Standard

Also bitte....
Was soll die Überschrift denn sagen? Dass Du keine Zeit und Lust hast, nen richtigen Text zu schreiben?

Und wenn Du schon erkennst, dass es das schon oft hier gab, warum machst Du Dir nicht die Mühe, die minimalen Hinweise zu der Fehlermeldung zu befolgen?

Wenn Du nicht so faul wärst, würdest Du und gleich mal die Ausgabe von mysql_error präsentieren anstatt der Meldung über "no resource...."
Mit der Meldung könnte man dann vielleicht auch was anfangen. Evtl. sogar Du selbst.

Unglaublich sowas....!!!

Und wenn Du schon dabei bist, mal das zu begerzigen, was hier schon hundertmal durchgekaut wurde, wirf ganz schnell mal das SELECT * raus.
Ist user_id wirklich eine Zeichenkette? Wäre wohl reichtlich sinnlos. Wenn es eine Zahl ist, dann vergleich es auch mit einer Zahl und nicht mit einer Zeichenkette.
__________________
**********************************
Nein, ich bin nicht die Signatur.
Ich putze hier nur.
**********************************
Der_Gerhard ist offline  
Alt 29.05.2007, 21:22  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Du musst Tabelle und Spalte in Kombination trotzdem EINZELN in Backticks packen.

Abgesehen davon hat Der_Gerhard recht, dein Thread ist Käse und mit mysql_error() wärst du auch selbst auf den Fehler gekommen!
Zergling-new ist offline  
Alt 29.05.2007, 21:51  
Benutzer
 
Registriert seit: 23.08.2006
Beiträge: 86
Canni
Standard

Danke Zergling.
Die fehlenden Backticks waren es. Sorry, wegen dem fehlenden mysql_error(), das ging mir wohl beim copy and paste der Fehlermeldung durch die Lappen.
Hier noch mal komplett nachgeschoben:
Zitat:
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /xxx on line 42
Unknown column 'char_relations.user_id' in 'where clause'
Da es die Spalte definitiv gibt hab ich mir schon einige Gedanke gemacht, aber auf die Backticks wäre ich nie gekommen, zumal die bei den anderen ja auch fehlen und nicht moniert werden ( wahrscheinlich dann wegen der Reihenfolge.... )...
Canni ist offline  
Alt 29.05.2007, 22:11  
Erfahrener Benutzer
 
Registriert seit: 13.08.2007
Beiträge: 1.976
KingCrunch befindet sich auf einem aufstrebenden Ast
KingCrunch eine Nachricht über ICQ schicken KingCrunch eine Nachricht über AIM schicken KingCrunch eine Nachricht über MSN schicken KingCrunch eine Nachricht über Yahoo! schicken
Standard

Hö? mysql_error() sollte etwas anderes ausgeben, als nen [u]PHP[/i]-Fehler ^^
__________________
Nicht jeder Fehler ist ein Bug.
KingCrunch ist offline  
Alt 29.05.2007, 22:15  
Erfahrener Benutzer
 
Registriert seit: 08.11.2004
Beiträge: 2.079
Der_Gerhard ist zur Zeit noch ein unbeschriebenes Blatt
Der_Gerhard eine Nachricht über ICQ schicken
Standard

Zitat:
Zitat von KingCrunch
Hö? mysql_error() sollte etwas anderes ausgeben, als nen [u]PHP[/i]-Fehler ^^
Code:
Unkown column 'char_relations.user_id' in 'where clause'
...ist ja auch kein PHP-Fehler. ^^

Warum der erste nach dem mysql_fetch_assoc() ausgegeben wird, weiß ich aber auch nicht.
__________________
**********************************
Nein, ich bin nicht die Signatur.
Ich putze hier nur.
**********************************
Der_Gerhard ist offline  
Alt 29.05.2007, 22:25  
Erfahrener Benutzer
 
Registriert seit: 13.08.2007
Beiträge: 1.976
KingCrunch befindet sich auf einem aufstrebenden Ast
KingCrunch eine Nachricht über ICQ schicken KingCrunch eine Nachricht über AIM schicken KingCrunch eine Nachricht über MSN schicken KingCrunch eine Nachricht über Yahoo! schicken
Standard

okok, weiterlesen hilft :X
__________________
Nicht jeder Fehler ist ein Bug.
KingCrunch ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Mehrfach Join lazydog Datenbanken 2 08.05.2008 16:09
JOIN Problem pPanther Datenbanken 7 06.03.2008 17:26
[gelöst]LEFT JOIN, DINSTINCT und trotzdem doppelte?!?! stefanjann Datenbanken 10 06.02.2008 11:49
JOIN / LEFT JOIN und Co prinzli Datenbanken 12 05.11.2007 22:15
Komplexes Join Problem pPanther Datenbanken 7 03.08.2007 23:16
[solved] LEFT JOIN - #1066 - Not unique table/alias moose Datenbanken 6 12.12.2006 06:41
SQL-Frage zum JOIN micbur Datenbanken 2 16.11.2006 23:46
SQL-Abfrage evt. mit JOIN mariohaehni Datenbanken 4 07.09.2006 14:26
Join auf 2 verschiedene Felder Tommek Datenbanken 6 25.07.2006 20:39
JOIN problem 2 tabellen - zeile(tab1) zu spalte(tab2) Ministry Datenbanken 7 31.05.2006 10:31
Problem mit Inner join Jabi Datenbanken 15 09.05.2006 14:10
INNER JOIN + Suchkriterien + Abfrage duerov PHP Tipps 2006 4 04.04.2006 12:47
inner join aus db PHP Tipps 2006 8 22.01.2006 01:23
Select Problem Datenbanken 17 16.01.2006 21:54
[Erledigt] Abfrageproblem mit Inner Join Datenbanken 15 29.11.2005 18:17

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
mysql_fetch_assoc join

Alle Zeitangaben in WEZ +2. Es ist jetzt 16:32 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.