1

準備済みステートメントで更新しようとしていますが、間違った値 (2147483647) を更新し続けます。この値がどこから来ているのかわかりません。これが私のコードです:

$myID = 5;
$loginTokenNew = time() * rand(3, 33) * $myID;
$_SESSION['loginToken'] = $loginTokenNew;

$mysqli = connectToDB();
$stmt = $mysqli->prepare('UPDATE users SET token=? WHERE id=?') or die('Couldn\'t update user token');
$stmt->bind_param('ii', $loginTokenNew, $myID);
$stmt->execute();
$stmt->close();
$mysqli->close();

奇妙なことに、セッション変数は正しい値を取りますが、データベースの「トークン フィールド」は値を取り続けます: 2147483647

私の準備されたステートメントはどういうわけか間違っていますか、それとも私のデータベースと関係があるのでしょうか? フィールド「トークン」はINT(255)フィールドです。

4

1 に答える 1