PHP でフォーム入力を処理するための主な手順は次のとおりです: 悪意のあるコードを防ぐために入力を検証します。エラーがないかチェックして、ユーザーがすべてのフィールドに正しく入力していることを確認します。不正アクセスを防ぐためにデータを安全に保管します。フィルターと準備されたステートメントを使用すると、ユーザー入力を処理する安全な PHP フォームを作成できます。
PHP フォーム: ユーザー入力を専門的に処理する
概要
PHP フォームはユーザーと対話し、情報を収集するための重要なツール。ユーザー入力を処理するときは、それが有効で安全であることを確認することが重要です。この記事では、実践的な例を含め、PHP でのフォーム入力の処理を段階的に説明します。
ステップ 1: 入力を検証します
filter_input
などの PHP 組み込み関数を使用して、ユーザー入力をフィルタリングおよびサニタイズします。
$name = filter_input(INPUT_POST, 'name', FILTER_SANITIZE_STRING); $email = filter_input(INPUT_POST, 'email', FILTER_VALIDATE_EMAIL);
ステップ 2: エラーの確認
filter_has_var
と filter_input_array
を使用して入力エラーがないか確認します。
if (filter_has_var(INPUT_POST, 'name') && filter_input_array(INPUT_POST, 'name', FILTER_VALIDATE_STRING)) { // 表单已正确提交 } else { // 显示错误消息 }
ステップ 3: データを安全に保存する
ユーザー入力をデータベースまたはその他の安全な場所に保存します。 SQL インジェクション攻撃を防ぐにはプリペアド ステートメントを使用します。
$stmt = $db->prepare("INSERT INTO users (name, email) VALUES (?, ?)"); $stmt->bind_param("ss", $name, $email); $stmt->execute();
実際のケース: お問い合わせフォーム
お問い合わせフォームの送信を処理する PHP スクリプトを作成します:
<?php // 验证输入 $name = filter_input(INPUT_POST, 'name', FILTER_SANITIZE_STRING); $email = filter_input(INPUT_POST, 'email', FILTER_VALIDATE_EMAIL); $message = filter_input(INPUT_POST, 'message', FILTER_SANITIZE_STRING); // 检查错误 if (filter_has_var(INPUT_POST, 'name') && filter_input_array(INPUT_POST, 'message', FILTER_VALIDATE_STRING)) { // 存储数据 $stmt = $db->prepare("INSERT INTO messages (name, email, message) VALUES (?, ?, ?)"); $stmt->bind_param("sss", $name, $email, $message); $stmt->execute(); // 显示成功消息 echo "消息已发送。谢谢您的联系。"; } else { // 显示错误消息 echo "请填写所有必需的字段。"; } ?>
以上がPHP フォーム: ユーザー入力をプロのように処理するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。