PHP を使用してフォーム入力をフィルタリングして検証するにはどうすればよいですか?
Aug 18, 2023 pm 03:39 PMPHP を使用してフォーム入力をフィルタリングおよび検証するにはどうすればよいですか?
Web アプリケーションを開発する場合、ユーザー入力は非常に重要な部分です。アプリケーションのセキュリティと安定性を確保するには、ユーザーが送信したデータをフィルタリングして検証する必要があります。この記事では、PHP を使用してフォーム入力をフィルタリングおよび検証する方法について説明します。
- 入力データのフィルタリング
PHP には、filter_input()## など、入力データのフィルタリングに使用できる組み込み関数がいくつかあります。 # および
filter_var()。これらの関数は、さまざまな検証ルールに基づいてさまざまなデータ型をフィルタリングできます。
$email = filter_input(INPUT_POST, 'email', FILTER_SANITIZE_EMAIL); if (filter_var($email, FILTER_VALIDATE_EMAIL)) { echo "邮箱地址验证通过!"; } else { echo "请输入有效的邮箱地址!"; }
filter_input() 関数を使用して次のリクエストを実行します。 a POST ユーザーが送信した電子メール フィールドの値を取得し、
FILTER_SANITIZE_EMAIL フィルターを使用して不正な文字を削除します。次に、
filter_var() 関数と
FILTER_VALIDATE_EMAIL フィルターを使用して、フィルターされた電子メール アドレスが正当であることを確認します。
- 入力データの検証
preg_match() 関数は正規表現を使用してデータを検証できます。
$password = $_POST['password']; if (preg_match("/^(?=.*[a-z])(?=.*[A-Z])(?=.*d).{8,}$/", $password)) { echo "密码符合要求!"; } else { echo "密码不符合要求!"; }
- SQL インジェクション攻撃の防止
$stmt = $pdo->prepare("SELECT * FROM users WHERE username = :username AND password = :password"); $stmt->bindParam(':username', $username); $stmt->bindParam(':password', $password); $stmt->execute();
bindParam を使用します。 ()関数は変数をパラメータにバインドします。そうすることで、ユーザーが入力したデータがクエリ ステートメントに直接挿入されなくなり、SQL インジェクションのリスクが軽減されます。
以上がPHP を使用してフォーム入力をフィルタリングして検証するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

人気の記事

人気の記事

ホットな記事タグ

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法
