2015-04-14 61 views
1

我有以下代码。我从表单中获取价值,并使用这些值尝试更新“客户”和“工作订单”。 “名称”值将在客户和工单表中重复。我一直在收到错误“绑定变量数量与令牌数量不匹配”。我对使用PDO完全陌生,并且不确定如何继续。有任何想法吗?在php/sql中的PDO多个查询

$pdo = Database::connect(); 
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
$sql = "UPDATE customers set name = ?, email = ?, mobile =? WHERE id = ?; UPDATE workorder set name = ?;"; 
$q = $pdo->prepare($sql); 
$q->execute(array($name,$email,$mobile,$id)); 
Database::disconnect(); 
header("Location: index.php"); 
+3

你有5个 '?'占位符,但只有4个变量在你的执行语句 – Chad

回答

2

你有4个变量在这里:

$q->execute(array($name,$email,$mobile,$id)); 

应为5:

$q->execute(array($name,$email,$mobile,$id, $name)); 
+0

公顷,我的错误。非常感谢你! – Steven