このコードって今でも使えるのですか?\u0026quot;mysqli_real_escape_string($db,$_POST[ ' email']).\u0026quot;mysqli_real_escape_string($db,$_POST[ 'password' ]).\u0026quot;-mysqli_real_escape_string($db,$_POST[' name' ]).\u0026quot;

MySQLWord

1件の回答

回答を書く

1031719

2026-03-07 01:55

+ フォロー

提示されたコードは構文的に問題があります。正しい形式は以下のようになります:

php
MySQLi_real_escape_string($db, $_POST['email']) .
MySQLi_real_escape_string($db, $_POST['passWord']) .
MySQLi_real_escape_string($db, $_POST['name'])


MySQLi_real_escape_string関数自体は現在でも使用可能ですが、セキュリティ対策としては古い方法です。現代のPHPでは、SQLインジェクション対策として以下の方法が推奨されています:

・プリペアドステートメントとパラメータバインディングを使用する(PDOやMySQLiのプリペアドステートメント)
・ORMフレームワークを使用する

例えば、以下のようなプリペアドステートメントの方が安全です:

php
$stmt = $db-\u0026gt;prepare(\u0026quot;INSERT INTO users (email, passWord, name) VALUES (?, ?, ?)\u0026quot;);
$stmt-\u0026gt;bind_param(\u0026quot;sss\u0026quot;, $_POST['email'], $_POST['passWord'], $_POST['name']);
$stmt-\u0026gt;execute();


セキュリティ面を考慮すると、MySQLi_real_escape_stringよりもプリペアドステートメントを使用することをお勧めします。

うったえる有益だ(0シェアするブックマークする

Copyright © 2026 AQ188.com All Rights Reserved.

博識 著作権所有