php - Mysql INNER JOIN 和资源#9

标签 php mysql join

我正在开发一个 UCP(用户控制面板),用户通过注册时提供的唯一 ID 登录。 我的问题是我的数据库中有两个表:

serverplayers - Holds user ID and name and all of his info

vehicles - holds vehicle owner and vehicle model.

所以我需要做的是通过用户“用户名”将这两个连接在一起。我尝试像这样的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 查询中可能有错误或问题,所以请告诉所有问题。

但我认为问题是车辆仅通过其所有者的名称连接,不包含用户 ID。所以我需要的基本上是通过将用户名与 vOwner 连接来向用户显示他拥有什么汽车。我是当谈到 mysql 或 php 时,我不是一个非常聪明的男孩,我刚刚学习,我遇到了 mysql INNER JOINS 这个东西,我认为它非常有用(但主要原因是我不想重新编码整个服务器)和 UCP)。

车辆:

Vehicles table

服务器播放器:

ServerPlayers table http://img94.imageshack.us/img94/3369/qebq.png

最佳答案

我不确定 $ro['User'] 是什么,但它听起来像是基于您的问题的 ID。在这种情况下,我只需在比较中将 vehicles.vOwner 切换为 serverplayers.UserID 即可。我还强烈建议更改您的架构,以便 vOwner 是 ID 而不是用户名(如果其中一个表中的用户名发生更改怎么办?)它看起来也不像就像你需要加入服务器玩家才能做任何事情一样。

“资源”是 mysql 结果资源。仅通过查看您无法从中获取任何内容 - 您需要对其运行获取操作:

$row = mysql_fetch_assoc($car);
<小时/>

我建议使用 PDO 或 mysqli 而不是已弃用的 ext/mysql。

关于php - Mysql INNER JOIN 和资源#9,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18615337/

相关文章:

php - 使用php将mysql表数据转换为字符串

mysql - 每个聊天室的加入计数

mysql - 如何创建由两个具有不同内容的相同表格组成的表格?

php - 如何使用 OptionTree 拥有多个 "Theme Options"页面?

php - 你能给我推荐一个服务器端 JavaScript 解析器吗?

php - 如何在 PHP 中将数字修剪为 5 位数字?

MySQL查询以根据两列的值获取所有重复项

php - 如何检查 MySQL 查询中是否存在数组中的值

php - 如何简化 PHP 中的检查/验证逻辑?

mysql - 使用 Sum 聚合时需要 ID 列不区分