PHP でフォーム値を MySQL データベースに安全に挿入するにはどうすればよいですか?

Linda Hamilton
リリース: 2024-11-12 07:25:02
オリジナル
634 人が閲覧しました

How to Securely Insert Form Values into a MySQL Database in PHP?

フォームから MySQL への値の挿入

PHP では、フォームから MySQL データベースへの値の挿入は一般的なタスクです。ただし、コードが正しく実行されないと、期待した結果が得られない可能性があります。

次のコードについて考えてみましょう:

$sql = "INSERT INTO users (username, password, email)
VALUES ('".$_POST["username"]."','".$_POST["password"]."','".$_POST["email"]."')";
ログイン後にコピー

このコードは、MySQL クエリを含む文字列変数を作成しますが、クエリは実行されません。クエリを実行するには、次の手順を使用する必要があります:

  1. Prepare Statement:

    $stmt = $mysqli->prepare($sql);
    ログイン後にコピー
  2. バインドパラメータ:

    $stmt->bind_param("sss", $_POST['username'], $_POST['email'], $_POST['password']);
    ログイン後にコピー
  3. ステートメントの実行:

    $stmt->execute();
    ログイン後にコピー

ステートメントを準備してバインドすることによってパラメーターを使用すると、SQL インジェクション攻撃を防止し、ユーザー入力が安全であることを保証します。

パスワードを保存する際には、セキュリティの側面を考慮することも重要です。プレーンテキストのパスワードを保存する代わりに、password_hash 関数を使用してパスワードのハッシュを保存し、アプリケーションのセキュリティを強化することをお勧めします。

以上がPHP でフォーム値を MySQL データベースに安全に挿入するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート