フォームから MySQL への値の挿入
PHP では、フォームから MySQL データベースへの値の挿入は一般的なタスクです。ただし、コードが正しく実行されないと、期待した結果が得られない可能性があります。
次のコードについて考えてみましょう:
$sql = "INSERT INTO users (username, password, email) VALUES ('".$_POST["username"]."','".$_POST["password"]."','".$_POST["email"]."')";
このコードは、MySQL クエリを含む文字列変数を作成しますが、クエリは実行されません。クエリを実行するには、次の手順を使用する必要があります:
Prepare Statement:
$stmt = $mysqli->prepare($sql);
バインドパラメータ:
$stmt->bind_param("sss", $_POST['username'], $_POST['email'], $_POST['password']);
ステートメントの実行:
$stmt->execute();
ステートメントを準備してバインドすることによってパラメーターを使用すると、SQL インジェクション攻撃を防止し、ユーザー入力が安全であることを保証します。
パスワードを保存する際には、セキュリティの側面を考慮することも重要です。プレーンテキストのパスワードを保存する代わりに、password_hash 関数を使用してパスワードのハッシュを保存し、アプリケーションのセキュリティを強化することをお勧めします。
以上がPHP でフォーム値を MySQL データベースに安全に挿入するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。