I am getting the following errors:
Notice: Array to string conversion in line 371
Warning: PDOStatement::execute() [pdostatement.execute]: SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens on line 371
The code which generate this error is below :
// update member file report...
$sql = 'UPDATE memberFileReports SET membersAdded =?, membersCanceled=?, errors=?, dateProcessed=?, totalProcessed=? WHERE id = ?';
$totalToProcess = $membersAdded + $membersCanceled + $totalErrorCount;
$userarray = array($membersAdded,$membersCanceled,$totalErrorCount,date("Y-m-d H:i:s"),$totalToProcess,$fileDataReportId);
$stmt = $this->db->prepare($sql);
$stmt->execute(array($userarray));
Please help ??
Change $stmt->execute(array($userarray));
to $stmt->execute($userarray);
. Since $userarray
is already an array, you don't need to wrap it in a new array. By wrapping it in a new array like your code was, PDO gets sent 1 parameter when it expected all 6. This is why the error generated said "number of bound variables does not match number of tokens".