、次のエラーが発生します:「 non-object."
このエラーは、準備されたステートメントの実行に使用される $stmt オブジェクトが正しく作成されなかったことを示します。これはクエリ自体の問題が原因である可能性があります。
この問題を解決するには:
クエリ構文が正しいことを確認します。クエリには、テーブル名、SET 句、更新するパラメータ、および WHERE 句を含める必要があります。タイプミスや要素の欠落がないか確認してください。
ステートメントを準備した後、mysqli オブジェクトの errno プロパティと error プロパティを使用して、ステートメントの準備中にエラーがあったかどうかを確認します。 errno が 0 でない場合は、mysqli_error() を使用してエラー メッセージを変換し、trigger_error() を使用して PHP エラーを発生させるか、例外をスローします。
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 を使用してデータを更新するときに発生する「メンバー関数 binding_param() の呼び出し」エラーを防ぐのに役立ちます。
以上がMySQLi の更新関数で「メンバー関数の binding_param() の呼び出し」エラーがスローされるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。