0

以下のコードでsessionIdは、データベースで更新されていません。

$stmt = $dbh->prepare("UPDATE user SET attempts = 0, sessionId = :sid WHERE userName = :postUser");
$stmt->bindParam(':postUser', $postUser);
$stmt->bindParam(':sessionId', $sid);
$stmt->execute();

エラーは発生していません。私はSQLがあまり得意ではないので、これが有効な構文であるかどうかはわかりません。

attempts必要に応じて更新します。なぜsessionId更新されないのですか?

4

1 に答える 1

4

プリペアドステートメントはを使用し:sidますが、という名前のパラメーターをバインドしています:sessionId

PDOを使用する場合、通常、エラーを例外に変換します。

$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

...構文エラーなどをキャッチするのに役立ちます。

于 2012-08-22T23:50:35.447 に答える