无效的参数编号:未在中定义参数 [英] Invalid parameter number: parameter was not defined in
本文介绍了无效的参数编号:未在中定义参数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
曾经在这里停留了一段时间.
Been stuck here for some time.
我在尝试运行代码时收到此错误:
I am receiving this error when I try to run the code:
警告:PDOStatement :: execute():SQLSTATE [HY093]:无效的参数 number:参数未在中定义 /Applications/XAMPP/xamppfiles/htdocs/ProjectWebSite/php/PDO.php上 第111行
Warning: PDOStatement::execute(): SQLSTATE[HY093]: Invalid parameter number: parameter was not defined in /Applications/XAMPP/xamppfiles/htdocs/ProjectWebSite/php/PDO.php on line 111
第111行是代码的第一行
Line 111 is the first line of the code
$result1 = $query1->execute( array( ':transactionID'=>$transactionID, ':personalID'=>$array['personalID'],
':description'=>$array['description'], ':cost'=>$array['cost'], ':datetime'=>$array['datetime'] ) );
function createTransaction($array){
$db = connection();
$stmt = $db->prepare("Select MAX(`transactionID`)+1 AS transactionID FROM transaction ");
$stmt->execute();
$transactionID = null;
$results = $stmt->fetchAll();
foreach ($results as $result) {
$transactionID =$result['transactionID'];
}
if(isset($transactionID)){
$sql = "INSERT INTO `transaction`(`transactionID`, `personalID`, `description`, `cost`, `dateTime`)"
. " VALUES (:transactinID,:personalID,:description,:cost,CAST(:datetime AS DATETIME)";
$query1 = $db->prepare( $sql );
$result1 = $query1->execute( array( ':transactionID'=>$transactionID, ':personalID'=>$array['personalID'],
':description'=>$array['description'], ':cost'=>$array['cost'], ':datetime'=>$array['datetime'] ) );
var_dump($result1);
if ( $result1 ){
return $transactionID;
}
return null;
}
}
推荐答案
您的查询中有错字:
:transactinID
应该是:transactionID
这篇关于无效的参数编号:未在中定义参数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文