처리 페이지에 두 개의 삽입이 있습니다. 첫 번째는 장애없이 작동합니다. 두 번째는 활성화되지 않습니다. 나는 PDO 쿼리를 사용하여 작동하는지 확인했지만 시도는하지 않았습니다.PDO 다중 실행 문제
$cpinsert = $db->prepare('insert into Chatposts values (0, :chatid, :name, :url, :text, now(), :ipaddress, 0)');
$cpinsert -> bindParam(':chatid', $chatroomid, PDO::PARAM_INT);
$cpinsert -> bindParam(':name', $name, PDO::PARAM_STR);
$cpinsert -> bindParam(':url', $url, PDO::PARAM_STR);
$cpinsert -> bindParam(':text', $text, PDO::PARAM_STR);
$cpinsert -> bindParam(':ipaddress', $ipaddress, PDO::PARAM_STR);
$cpinsert -> execute();
// Needs an error checker
$cpid = $cpinsert ->lastInsertID();
$cpinsert->closeCursor();
^테스트 할 수 없어서 lastinsertid에 대해 알지 못해도 괜찮습니다.
\ V/거기에는 아무 것도 시도하지 않고 실행됩니다. 뭔가가 실행되는 것을 방해하고 있거나 위의 연결을 제대로 닫지 않았습니다.
나는 내가 아는 모든 것을 시험해 보았습니다. 필자는 PDO를 처음 사용하기 때문에 약간의 실수를 저지른 것 같습니다. Closecursor는 내가 그것을 추가 할 때 아무 것도하지 않는 것 같았습니다.
PDO가 [오류시 예외 발생] (http://us.php.net/manual/en/pdo.error-handling.php#example-978)으로 구성되어 있는지 확인하면 어떤 내용인지 확인할 수 있습니다 잘못된. 당신이하고있는 일에 대해 생각해보십시오. 한 번만'execute'를 호출하기 때문에 * 최선을 다해서 * INSERT INTO Targets VALUES (..)를 한 번 실행하고 하나의 행을 삽입합니다. – DCoder
입니다. 문제는 이것이 여러 가지 방법으로 당신을 쫓아 내려고 시도하는 처리 페이지에있는 것입니다. 오류를 보는 것이 그 자체로 어려운 문제입니다. 시각적으로 볼 수있는 간단한 코딩 오류가되기를 바랬습니다. 예. 실행 문제가 있다는 것을 알고 있습니다. 테스트를 진행하는 동안 처음 작업했는지 알지 못했습니다. – Rujikin
그래서 문제는 코드를 디버깅하는 방법을 모른다는 것입니다. [xDebug] (http://xdebug.org/index.php)를 설치하고 코드를 한 줄씩 살펴보십시오. – DCoder