0

私はいくつかのPHPコードを持っています、

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

私の $user[ID] は 1 なので、UserID 1 が所有する Inventory 内のすべてのものをフェッチする必要があります。クエリを実行すると、次のようになります。

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

PhpMyAdmin では、1 行を返します (1 行しかないためです!)

ページでは数値 2 が返されますが、
これはなぜですか? 2 ではなく 1 をエコーするようにします。

4

2 に答える 2

0

テーブルのユーザーIDがauto_incrementに設定されていることを確認してください。これにより、ユーザーIDが重複しないことが保証されます(SQLが2をもたらす場合は明らかに重複しています)。すべてのテーブルレコードを確認できる場合は、PHP MyAdminを使用してください。行が同じように出力されている場合は、データをエコーアウトする方法を再確認してください (コードが重複する可能性があります)。

于 2013-10-31T17:56:47.650 に答える