PHP에서는 mysqli 확장을 사용하여 MySQL 데이터베이스에 데이터를 삽입할 수 있습니다. 그러나 필요한 디버깅 단계를 통과했음에도 불구하고 데이터 삽입에 실패하는 문제가 발생할 수 있습니다.
흔히 저지르는 실수는 bind_param()을 사용하여 변수를 여러 번 바인딩하는 것입니다. 이 문제를 해결하려면 데이터 유형과 변수를 지정하여 모든 변수를 함께 바인딩하십시오. 이렇게 하면 올바른 값이 쿼리 매개변수와 연결됩니다.
예를 들어 다음 수정된 코드를 고려해보세요.
$stmt2->bind_param('ss', $username, $password);
여기에서는 데이터 유형(ss)을 지정하고 두 변수를 모두 바인딩합니다. ($username 및 $password)를 한 번에 수행할 수 있습니다.
또는 PHP 5.6 이상에서는 스프레드 연산자(...)를 사용할 수 있습니다. 배열에서 변수를 바인딩하려면:
$data = ['user' => 'someUser', 'password' => 'secret']; $stmt2->bind_param('ss', ...$data);
이러한 수정 사항을 따르면 데이터 삽입 문이 성공적으로 실행되고 테이블에 행이 삽입되는지 확인할 수 있습니다.
위 내용은 디버깅에도 불구하고 mysqli 데이터 삽입이 실패하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!