以下是代码片段:
$pqry = $dbcon->prepare("INSERT INTO pr_users VALUES (NULL,'?','?',MD5('?'),MD5('?'))");
$dbcon->beginTransaction();
$pqry->execute(array($qryfields['email'],$qryfields['pw'],$qryfields['pw'],$qryfields['pw'].time()));
$lastID = $dbcon->lastInsertId();
$dbcon->commit();
将行插入为:
? | ? | hashed value of ? | hashed value of ?+time()
我应该使用:key
吗?
答案 0 :(得分:2)
您不需要占位符周围的引号:
$pqry = $dbcon->prepare("INSERT INTO pr_users VALUES (NULL,?,?,MD5(?),MD5(?))");
他们让PDO认为你想要字符串'?'
而不是占位符行为。
这在文档中没有明确说明,但从示例on the manual page中可以清楚地看出。