ホームページ  >  記事  >  バックエンド開発  >  PHP フォーム: ユーザー入力をプロのように処理する

PHP フォーム: ユーザー入力をプロのように処理する

WBOY
WBOYオリジナル
2024-10-09 16:12:01670ブラウズ

PHP でフォーム入力を処理するための主な手順は次のとおりです: 悪意のあるコードを防ぐために入力を検証します。エラーがないかチェックして、ユーザーがすべてのフィールドに正しく入力していることを確認します。不正アクセスを防ぐためにデータを安全に保管します。フィルターと準備されたステートメントを使用すると、ユーザー入力を処理する安全な PHP フォームを作成できます。

PHP Forms: Handling User Input Like a Pro

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_varfilter_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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。