0

我有一些PHP代码,

$gQ = $mysqli->query("SELECT * FROM `Inventory` WHERE `UserID`='$user[ID]' ORDER BY `ID`");
$gN = $gQ->num_rows;
echo($gN);

我的 $user[ID] 为 1,因此它应该获取 Inventory 中属于 UserID 1 的任何内容。当我运行查询时:

SELECT * FROM `Inventory` WHERE `UserID`='1' ORDER BY `ID`

在 PhpMyAdmin 中,它返回 1 行(因为只有 1 行!)

而在页面上它返回数字 2。
这是为什么呢?我希望它回显 1 而不是 2。

4

2 回答 2

3

当只有一行时,MySQLi 找到两行?


。Mysqli 准确找到找到的行数。无论是由您的代码和/或各种拼写错误引起的不一致和错误。

于 2013-10-31T17:52:44.410 回答
0

确保您的表用户 ID 设置为 auto_increment,这将确保没有重复的用户 ID(如果 SQL 带来 2,您显然有)如果可以查看所有表记录,请使用 PHP MyAdmin。如果行出来的结果相同,请仔细检查您是如何回显数据的(将是重复的代码)

于 2013-10-31T17:56:47.650 回答