PDO를 사용하도록 내 사이트를 업그레이드 중입니다. 대부분의 코드는 정상적으로 작동하지만 INSERT 문은 하나만 있어도 작동하지 않습니다. 내 로컬 서버에서 작동하지만 라이브 사이트에서는 작동하지 않습니다. 나는 테이블 구조를 확인했고 그것들은 동일합니다. PHP PDO INSERT가 준비된 문으로 작동하지 않습니다.
이
내가 내 unique_product_line_ids 배열의 값을 검사 한try {
foreach ($unique_product_line_ids AS $key => $value) {
$query_insertSQL = "
INSERT INTO tblCarts (
date_created
, session_id
, product_line_id
, posted_by_id
, quantity
) VALUES (
:date_created
, :session_id
, :product_line_id
, :posted_by_id
, :quantity1
)
ON DUPLICATE KEY UPDATE quantity = :quantity2
";
$insertSQL = $conn->prepare($query_insertSQL);
$insertSQL->execute(array(
':date_created'=>$date_created
, ':session_id'=>$session_id
, ':product_line_id'=>$key
, ':posted_by_id'=>$_SESSION['member']['individual_id']
, ':quantity1'=>$value
, ':quantity2'=>$value
));
$rc_insertSQL = $insertSQL->rowCount();
// close connection
$insertSQL->closeCursor();
}
} catch(PDOException $e) {
echo 'ERROR: ' . $e->getMessage();
}
내 코드 그리고 그들은 확인 존재한다. 나는 또한 그것의 해당 매개 변수와 함께 중복 중복 키 업데이트 라인을 제거하려고했지만 아무런 차이가 없습니다.
나는 잠재적 인 원인을 제거하고 성공없이 문제를 격리하려고 몇 시간을 보냈습니다. 모든 도움이나 포인터는 매우 감사하게 받아 들여질 것입니다.
감사
준비된 명령문의 전문가의
오류를 사용할 수있는 경우에 에러가 발생했을 경우
은 디버깅하려면? 라이브 사이트에 PDO가 설치되어 있습니까? – Sal00m그냥'echo $ insertSQL-> errorInfo()' – Sal00m