データベース操作に mysqli プリペアド ステートメントを使用する方法を学習する
P粉838563523
2023-08-24 16:54:12
<p>準備されたステートメントを使用しようとしていますが、以下のコードは機能しません。次のエラーを受け取りました: </p>
<ブロック引用>
<p>致命的なエラー: /var/www/prepared.php</p> の 12 行目で非オブジェクト メンバー関数のexecute() を呼び出しています。
</blockquote>
<pre class="brush:php;toolbar:false;"><?php
$mysqli = new mysqli("localhost", "root", "root", "test");
if ($mysqli->connect_errno) {
echo "MySQL への接続に失敗しました:" . $mysqli->connect_error;
}
$stmt = $mysqli->prepare("ユーザー (名前、年齢) の値 (?,?) に挿入");
//行を挿入
$stmt->execute(array('one',1));
// 異なる値を持つ別の行を挿入します
$stmt->execute(array('two',1));
?></pre>
<p>また、準備されたステートメントには mysqli を使用する必要がありますか?結合、挿入と選択、エラー処理を含む完全なプリペアド ステートメントの例を誰かが教えてくれませんか? </p>
私が好む PDO を使用することもできます。実際、コード例では PDO と Mysqli を混同しているようです。
リーリーmysqli とは異なり、別のバインド関数を呼び出す必要はありませんが、この機能は使用したい場合、使用したい場合、必要な場合に使用できます。
PDO に関するもう 1 つの興味深い点は、プレースホルダーという名前です。これにより、複雑なクエリでの混乱が少なくなる可能性があります。 リーリー
From
mysqli::prepare
ドキュメント:
###今すぐ:### リーリーbind_param
ドキュメント。