PHP では、mysqli 拡張機能を使用して MySQL データベースにデータを挿入できます。ただし、必要なデバッグ手順を通過したにもかかわらず、データの挿入が失敗するという問題が発生する場合があります。
よくある間違いは、bind_param() を使用して変数を複数回バインドすることです。これを解決するには、データ型を指定してから変数を指定して、すべての変数をバインドします。これにより、正しい値がクエリ パラメーターに関連付けられるようになります。
たとえば、次の修正されたコードを考えてみましょう。
$stmt2->bind_param('ss', $username, $password);
ここでは、データ型 (ss) を指定し、両方の変数をバインドします。 ($username と $password) を 1 つのステップで実行できます。
あるいは、PHP 5.6 以降では、スプレッド演算子 (...) を使用できます。配列から変数をバインドするには:
$data = ['user' => 'someUser', 'password' => 'secret']; $stmt2->bind_param('ss', ...$data);
これらの修正に従うことで、データ挿入ステートメントが正常に実行され、テーブルに行が挿入されることが保証されます。
以上がデバッグにもかかわらず、mysqli データの挿入が失敗するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。