0

私は、ユーザーが登録時に与えられる一意の ID でログインする UCP (ユーザー コントロール パネル) に取り組んでいます。私の問題は、データベースに 2 つのテーブルがあることです。

serverplayers - ユーザー ID と名前、および彼のすべての情報を保持します

vehicle - 車両所有者と車両モデルを保持します。

だから私がする必要があるのは、これら2つをユーザー「ユーザー名」で接続することです.Mysql INNER JOINをこのように試しました。

$car = mysql_query('SELECT vehicles.vOwner, vehicles.vModel 
FROM vehicles 
INNER JOIN serverplayers ON vehicles.vOwner = serverplayers.User 
WHERE vehicles.vOwner = '.$ro['User'].'');

この後、Recourse #9 を取得しました。これはエラーではなく、単に結果が空であることを読みました。mysql クエリにエラーまたは問題がある可能性があるため、何が問題なのかをすべて教えてください。

しかし、私が思う問題は、車両が所有者の名前でのみ接続され、UserID が含まれていないことです。したがって、基本的に必要なのは、ユーザー名を vOwner と接続することによって、ユーザーが所有している車をユーザーに表示することです。明るい男の子 mysql または php に関しては、私はちょうど学んでいて、非常に便利だと思う mysql INNER JOINS としてこのことを見つけました (しかし、主な理由は、サーバー全体と UCP を再コーディングしたくないからです) )。

車両:

車両表

サーバープレイヤー:

ServerPlayers テーブル http://img94.imageshack.us/img94/3369/qebq.png

4

1 に答える 1

0

よくわかりません$ro['User']が、あなたの質問に基づいた ID のように思えます。その場合、その比較で切り替えるだけvehicles.vOwnerですserverplayers.UserID。また、スキーマを変更して、ユーザー名ではなく ID を変更することを強くお勧めしますvOwner (テーブルの 1 つでユーザー名が変更された場合はどうなりますか?) また、サーバープレイヤーに参加する必要はないようです。

「リソース」は mysql 結果リソースです。見るだけでは何も得られません。フェッチ操作を実行する必要があります。

$row = mysql_fetch_assoc($car);

非推奨の ext/mysql よりも PDO または mysqli を使用することをお勧めします。

于 2013-09-04T13:39:26.970 に答える