Warning: PDOStatement::execute() [pdostatement.execute]: SQLSTATE[HY093]: Invalid parameter number: parameter was not definedPDO将不插入到MySQL数据库的非法参数编号:参数没有被定义
<?php
$firstname = $_POST['first-name'];
$lastname = $_POST['last-name'];
$company = $_POST['company'];
$email = $_POST['email'];
$phone = $_POST['phone'];
$city = $_POST['city'];
$state = $_POST['state'];
$zip = $_POST['zip'];
$country = $_POST['country'];
$type = $_POST['type'];
$source = "IP-Demo";
// query
$sql = "INSERT INTO Contact (first-name,last-name,Company,email,phone,city,state,zip,country,type,source)
VALUES (:first-name,:last-name,:Company,:email,:phone,:city,:state,:zip,:country,:type,:source)";
$q = $conn->prepare($sql);
$q->execute(array(
':first-name'=>$firstname,
':last-name'=>$lastname,
':Company'=>$company,
':email'=>$email,
':phone'=>$phone,
':city'=>$city,
':state'=>$state,
':zip'=>$zip,
':country'=>$country,
':type'=>$type,
':source'=>$source
));
您是否确定每个来自'$ _POST'的变量都已定义? – romainberger 2013-04-04 14:41:56
另一个太本地化不是一个真正的问题。没人在乎。永远。 – 2013-04-04 14:47:47
这是一个真正的问题,显然我有一个问题,并正在寻找一个解决方案,因此需要问一个问题。此外,感谢ÁlvaroG. Vicario,我的代码现在运行正常。提出这个问题已经成为寻找有用解决方案的目的。 – Steven 2013-04-04 15:06:52