>백엔드 개발 >PHP 튜토리얼 >내 MySQLi 업데이트 함수가 '멤버 함수 호출 bin_param()' 오류를 발생시키는 이유는 무엇입니까?

내 MySQLi 업데이트 함수가 '멤버 함수 호출 bin_param()' 오류를 발생시키는 이유는 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-12-08 00:51:11974검색

Why Does My MySQLi Update Function Throw a

Mysqli 업데이트 함수에서 mysqli_update 함수를 사용하여 테이블을 업데이트하려고 할 때 "멤버 함수 바인딩_param() 호출" 오류가 발생합니다

문제

, 다음 오류가 발생합니다. "bind_param() 멤버 함수를 호출합니다. non-object."

분석

오류는 준비된 명령문을 실행하는 데 사용되는 $stmt 개체가 제대로 생성되지 않았음을 나타냅니다. 이는 쿼리 자체의 문제로 인해 발생할 수 있습니다.

해결 방법

이 문제를 해결하려면:

1. 쿼리 구문 확인

쿼리 구문이 올바른지 확인하세요. 쿼리에는 테이블 이름, SET 절, 업데이트할 매개변수 및 WHERE 절이 포함되어야 합니다. 오타나 누락된 내용이 있는지 확인하세요.

2. 오류 확인

문을 준비한 후 mysqli 객체의 errno 및 error 속성을 사용하여 문 준비 중에 오류가 있었는지 확인합니다. errno가 0이 아닌 경우 mysqli_error()를 사용하여 오류 메시지를 변환하고, Trigger_error()를 사용하여 PHP 오류를 발생시키거나 예외를 발생시킵니다.

3. 문장 실행 확인

mysqli_execute()를 이용하여 준비된 문장이 제대로 실행되었는지 확인한다. 명령문을 실행한 후 mysqli_errno() 및 mysqli_error()를 사용하여 실행 중 오류를 확인합니다.

다음은 명령문 준비 및 실행 중 오류를 확인하는 방법의 예입니다.

if (!($stmt = $mysqli->prepare($query))) {
    trigger_error($mysqli->error . "[$query]");
}

if (!$stmt->execute()) {
    trigger_error($stmt->error . "[BIND PARAMS: $stmt->errno, EXECUTE: $mysqli->errno]");
}

By 이러한 단계를 수행하면 쿼리의 구문이 올바른지 확인하고 명령문 준비 중 오류를 식별하고 명령문 실행을 확인할 수 있습니다. 이는 mysqli를 사용하여 데이터를 업데이트할 때 "bind_param() 멤버 함수 호출" 오류를 방지하는 데 도움이 됩니다.

위 내용은 내 MySQLi 업데이트 함수가 '멤버 함수 호출 bin_param()' 오류를 발생시키는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.