[英]Cannot execute a PDO statement (update a MySQL table) when everything else in PDO works
这是我在StackOverflow上的第一个问题,你能不能向我解释一下我做错了什么:我有这个代码(下面),但由于某种原因,我试图调查和调试,我不明白为什么PDO不是完成下面的请求,它以相同的方式插入和回显工作正常,有人可以告诉我发生了什么? 我沮丧地把头发拉出脑袋。
$q = "UPDATE content SET urlid=:url, title=:title, description=:desc, keywords=:key WHERE urlid=:urlid";
$query = $pdo->prepare($q);
$query->execute(array(
':url' => $urlid,
':title' => $title,
':desc' => $desc,
':key' => $key,
':contloc' => $contloc,
':userid' => $uid,
':urlid' => $urlid
//':content' => $content
));
我在Apache错误日志中收到以下警告:
[2012年7月12日21:07:13] [错误] [客户端99.230.122.54] PHP警告:PDOStatement :: execute():SQLSTATE [HY093]:参数号无效:绑定变量的数量与令牌的数量不匹配/Library/Server/Web/Data/Sites/Default/addto2.php在第31行,referer:
http://localhost/sample/4fff30aea1f20
$q = "UPDATE content SET urlid=:url, title=:title, description=:desc, keywords=:key WHERE urlid=:urlid";
$query = $pdo->prepare($q);
$query->execute(array(
':url' => $urlid,
':title' => $title,
':desc' => $desc,
':key' => $key,
':urlid' => $urlid
));
PDO抱怨,因为您传递的参数多于在查询中使用的参数。 或者您可能想在查询中包含更多参数而忘记了?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.