prepared statement가있는 다음 PHP 코드에서 의도적으로 bind_param을 테스트하고 execute에 $ bikes를 추가하는 중 오류가 발생했습니다.Prepared statements 및 bind_param 오류 처리
실행 함수에서 오류 정보가 반환됩니다. 그러나 bind_param에서 오류가 발생하더라도 오류 정보는 반환하지 않습니다.
bind_param에서 오류 정보를 얻는 방법은 무엇입니까?
$sqlQuery = "INSERT INTO the_cars (cars) VALUES (?)";
if($statement = $con->prepare($sqlQuery)){
if(!$statement->bind_param("s", $cars, $bikes)){ //bikes should not be here
$errors = $statement->error; //error is empty
};
if(!$statement->execute()){
$errors1 = $statement->error; // error: No data supplied for parameters in prepared statement
};
}else{
$errors = $con->error;
}
편집 :
PHP 매뉴얼은 bind_param에 오류가 처리되어야 함을 제안하는 것 같다. 이것은 또한 위치가 주창 것 같다 */
http://php.net/manual/en/mysqli.quickstart.prepared-statements.php
을 바인드 및 실행 : 여러 번»/ * 준비된 문, 2 단계를 실행, 3 INSERT 한 번 준비 예 번호 : 텍스트의 다음 부분을 참조하십시오 몇몇 포스트에서. 예를 들어 :
MySQLi prepared statements error reporting
그러나, 나는 몇 가지 시도를했고, 나는 bind_param에 문 오류에 대한 설명을 얻을 수 결코 없었다.
직접 확인해야한다고 생각합니다. – Sysix