我正在使用UCP(用户控制面板),用户通过注册时提供的唯一ID登录。 我的问题是我的数据库中有两个表:
serverplayers - 保存用户ID和名称及其所有信息
和
车辆 - 拥有车主和车辆模型。
所以我需要做的是用户“Username”将这两者连接起来。我试过像这样的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'].'');
在此之后,我得到了追索权#9,我读到这不是一个错误只是结果是空的?我的mysql查询中可能有错误或问题所以请告诉所有错误。
但是我认为问题是车辆只是通过它的所有者的名字连接而且不包含UserID。所以我需要的是基本上向用户展示他的用户名是什么用vOwner连接他的用户名。我是不是一个非常聪明的男孩,当谈到mysql或php我只是在学习,我遇到了这个东西,因为我认为是非常有用的mysql INNER JOINS(但主要原因是我不想重新编码整个服务器和UCP)。
车辆:
ServerPlayers:
ServerPlayers table http://img94.imageshack.us/img94/3369/qebq.png
答案 0 :(得分:0)
我不确定$ro['User']
是什么,但它听起来像是基于您的问题的ID。在这种情况下,我只需在该比较中将vehicles.vOwner
切换为serverplayers.UserID
。我还强烈建议更改您的架构,以便vOwner
ID而不是用户名(如果其中一个表中的用户名发生了变化怎么办?)它看起来也不像你需要的那样加入服务器播放器以获取任何东西。
“资源”是一个mysql结果资源。只是通过查看它就无法得到任何东西 - 你需要在它上面运行获取操作:
$row = mysql_fetch_assoc($car);
我建议在弃用的ext / mysql上使用PDO或mysqli。