を使用してデータを更新するのに苦労していPDO
ます。これらは私が試した2つのオプションです。ただし、実際にデータベースを更新したものはありません。
クエリ1:
$dateLastLoggedIn = date("Y-m-d H:i:s");
$username = mysql_real_escape_string($_POST['User']);
$sth = $dbh->prepare("UPDATE users SET dateLastLoggedIn = ? WHERE username = ?");
$sth->execute(array($dateLastLoggedIn,$username));
print_r($sth->queryString);
印刷するだけUPDATE users SET dateLastLoggedIn = ? WHERE username = ?
クエリ2:
$dateLastLoggedIn = date("Y-m-d H:i:s");
$username = mysql_real_escape_string($_POST['User']);
$sql = "UPDATE users SET dateLastLoggedIn = '".$dateLastLoggedIn."' WHERE username = '".$username."'";
$sth = $dbh->prepare($sql);
$sth->execute();
print_r($sth->queryString);
プリントアウトUPDATE users SET dateLastLoggedIn = '2012-08-03 13:36:32' WHERE username = 'testuser'
2番目のオプションは正しいクエリを生成しますが、実際にはデータを更新しません。生成されたスクリプトを手動で実行できますが、それは機能しますが、を介しては機能しませんexecute()
。私が間違っていることはありますか?私はまだ初めてなPDO
ので、簡単な修正かもしれません。
解決済み:受け入れられた回答の下にある私の最後のコメントを参照してください。