PHP PDO参数号无效:未定义参数

时间:2013-09-06 13:46:43

标签: php pdo

这是我的代码:

当我将数组更改为索引类型而不是关联时,它不会出错。 但是当我把它改回到关联时,它开始给出错误。 对此有何帮助?

$dbh=new PDO("mysql:host=localhost;dbname=sj_db", 'root', '');

$entryData = array(
    "Team Name"=>$_POST['name']
  , "Won"=>$_POST['w']
  , "Lost"=>$_POST['l']
  , "Draw"=>$_POST['d']
  , "Points"=>$_POST['p']
  );


$sql="INSERT INTO fb (`Team Name`, Won, Lost, Draw, Points) VALUES (?, ?, ?, ?, ?)";
$sth=$dbh->prepare($sql);
//$sth->execute($entryData[`Team Name`],$entryData['Won'],$entryData['Lost'],$entryData['Draw']
//  ,$entryData['Points']);
$sth->execute($entryData);

//$sth->closeCursor();

1 个答案:

答案 0 :(得分:1)

查询中的占位符是位置(?) 将它们更改为命名(:name
或者将array_values($entryData)传递给执行

虽然您必须从Team Name键中删除空格才能使用命名占位符