PHPでの自己検証後にデータを取得する方法

チーシェン

PHPで自己検証した後、収集した入力を別のページに渡す方法

<!DOCTYPE html>
<html lang="en">
<head>
<title>Page Title Goes Here</title>
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="form1.css"/>
</head>
<body>

<?php 

//define variable and set to empty value

$forenameErr = $surnameErr = $emailErr = $postalAddressErr = $landLineTelNoErr =$mobileTelNoErr = $sendMethodErr = "";
$forename = $surname = $email =  $postalAddress = $landLineTelNo = $mobileTelNo = $sendMethod = "";

if($_SERVER["REQUEST_METHOD"] =="POST"){
    $valid = true;


    if(empty($_POST["forename"])){
        $forenameErr = "Forename is required";
         $valid = false; //false
    } else {
        $forename = test_input($_POST["forename"]);
        // check if name only contains letters and whitespace
     if (!preg_match("/^[a-zA-Z ]*$/",$forename)) {
       $forenameErr = "Only letters and white space allowed";

    }
    }

    if(empty($_POST["surname"])){
        $surnameErr = "Surname is required";
         $valid = false; //false
    } else {
        $surname = test_input($_POST["surname"]);
        // check if name only contains letters and whitespace
     if (!preg_match("/^[a-zA-Z ]*$/",$surname)) {
       $surnameErr = "Only letters and white space allowed";
    }
    }   

    if(empty($_POST["postalAddress"])){
        $postalAddressErr =" Please enter postal address";
         $valid = false; //false
    } else {
         $postalAddress = test_input($_POST["postalAddress"]);
         }

    if(empty($_POST["landLineTelNo"])){
        $landLineTelNoErr = "Please enter a telephone number";
         $valid = false; //false
    } else {
        $landLineTelNo = test_input($_POST["landLineTelNo"]);
        // check if invalid telephone number added
        if (!preg_match("/^[0-9 ]{7,}$/",$landLineTelNo)) {
            $landLineTelNoErr = "Invalid telephone number entered";
        }
    }

    if(empty($_POST["mobileTelNo"])){
        $mobileTelNoErr = "Please enter a telephone number";
         $valid = false; //false
    } else {
        $mobileTelNo = test_input($_POST["mobileTelNo"]);
        // check if invalid telephone number added
        if (!preg_match("/^[0-9 ]{7,}$/",$mobileTelNo)) {
            $mobileTelNoErr = "Invalid telephone number entered";
        }
    }

    if(empty($_POST["email"])){
      $emailErr = "Email is required";  
         $valid = false; //false
    } else {
        $email = test_input($_POST["email"]);
        // check if e-mail address is well-formed
        if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
       $emailErr = "Invalid email format";
         }
    } 

    if(empty($_POST["sendMethod"])){
        $sendMethodErr = "Contact method is required";
         $valid = false; //false
    } else {
        $sendMethod = test_input($_POST["sendMethod"]);
    }

 //if valid then redirect
    if($valid){
   header('Location: userdetail.php');
   exit();
}   
}

//check

function test_input($data) {
   $data = trim($data);
   $data = stripslashes($data);
   $data = htmlspecialchars($data);
   return $data;
}

?>

<div id="wrapper">

<h1>Welcome to Chollerton Tearoom! </h1>

<nav> 
    <ul>
         <li><a href="index.html">Home</a></li>
         <li><a href="findoutmore.html">Find out more</a></li>
         <li><a href="offer.html">Offer</a></li>
         <li><a href="credit.html">Credit</a></li>
         <li><a href="#">Admin</a></li>
         <li><a href="wireframe.html">WireFrame</a></li>
    </ul>
</nav>

<form id = "userdetail" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" method="POST">

    <fieldset id="aboutyou">
    <legend id="legendauto">user information</legend>

        <p>
        <label for="forename">Forename: </label>
        <input type="text" name="forename" id="forename" value="<?php echo $forename;?>">
        <span class="error">* <?php echo $forenameErr;?></span>
        </p>

        <p>
        <label for="surname">Surname:</label>
        <input type="text" name="surname" id="surname" value="<?php echo $surname;?>">
        <span class="error">* <?php echo $surnameErr;?></span>
        </p>

        <p>
        <label for="postalAddress">Postal Address:</label>
        <input type="text" name="postalAddress" id="postalAddress" value="<?php echo $postalAddress;?>">
        <span class="error"> </span>
        </p>

        <p>
        <label for="landLineTelNo">Landline Telephone Number:</label>
        <input type="text" name="landLineTelNo" id="landLineTelNo" value="<?php echo $landLineTelNo;?>" >
        <span class="error"> * <?php echo $landLineTelNoErr;?></span>
        </p>

        <p>
        <label for="mobileTelNo">Moblie:</label>
        <input type="text" name="mobileTelNo" id="mobileTelNo" placeholder="example:012-3456789" value="<?php echo $mobileTelNo;?>" />
        <span class="error"><?php echo $mobileTelNoErr;?></span>
        </p>

        <p>
        <label for="email">E-mail:</label>
        <input type="text" name="email" id="email" value="<?php echo $email;?>" placeholder="example:[email protected]"/>
        <span class="error"> </span>
        </p>

        <fieldset id="future">
        <legend>Lastest news</legend>

        <p>
        Choose the method you recommanded to recevive the lastest information
        </p>
        <br>
        <input type="radio" name="sendMethod" id="sendMethod" <?php if (isset($sendMethod) && $sendMethod=="email") echo "checked";?>  value="email">
        Email
        <input type="radio" name="sendMethod" id="sendMethod" <?php if (isset($sendMethod) && $sendMethod=="post") echo "checked";?>  value="post">
        Post
        <input type="radio" name="sendMethod" id="sendMethod" <?php if (isset($sendMethod) && $sendMethod=="SMS") echo "checked";?>  value="SMS">
        SMS
        <span class="error">* <?php echo $sendMethodErr;?></span>
        </fieldset>

       <p><span class="error">* required field.</span></p>    

        <input type="checkbox" name="checkbox" value="check" id="agree" /> 
        I have read and agree to the Terms and Conditions and Privacy Policy

        <p> 
        <input type="submit" name="submit" value="submit" />
        </p>

        </form>

       </fieldset>
    </form>

</div>



</body>
</html>

これが私のphpフォームです...同じページでそれ自体を検証できますが、データを別のphpページに渡すことができませんでした...これが私の別のphpコードです...

<?php 

$forenameErr = $surnameErr = $emailErr = $postalAddressErr = $landLineTelNoErr =$mobileTelNoErr = $sendMethodErr = "";
$forename = $surname = $email =  $postalAddress = $landLineTelNo = $mobileTelNo = $sendMethod = "";


echo "<h1>Successfull submission :</h1>";
echo "<p>Forename : $forename <p/>";
echo "<p>Surname : $surname <p/>";
echo "<p>Email: $email</p>";
echo "<p>Post Address: $postalAddress</p>";
echo "<p>Landline: $landLineTelNo</p>";
echo "<p>Mobile : $mobileTelNo</p>";
echo "<p>Contact method: $sendMethod";

?>
ケビンS

$ _SESSION変数を使用できます。

PHP $ _SESSIONS

PHPセッションとCookie

したがって、ユーザーが検証された後、 $_SESSION['surname'] = $surname;

次に、各ページの上部に追加session_start();ます

次に、その下に追加します

  if (isset($_SESSION['surname'])) {
      $surname = $_SESSION['surname'];
  } else {
      die();
  }

より完全な理解については、PHPのドキュメントを参照してください。

ユーザーがアカウントを作成できるようにする場合は、MYSQLデータベースの設定を検討することもできます。

編集:フォームページ

if($valid){
   $_SESSION['surname'] = $surname;
   $_SESSION['postalAddress'] = $postalAddress;
   header('Location: userdetail.php');
   exit();
}   

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

検証後に追加のデータを渡す方法は?

分類Dev

相互検証後にデータを取得するにはどうすればよいですか?

分類Dev

検証後にPHP変数データを別のページに渡す

分類Dev

検証に失敗した後、nullフォームデータから空の文字列を取得する

分類Dev

jQuery検証後にmysqlテーブルにデータを挿入する方法

分類Dev

MicronautのGORMを使用して、投稿データを取得し、コントローラーで検証してデータベースに保存する方法は?

分類Dev

rsaでデータを適切に検証する方法は?

分類Dev

firebase phone authを使用してreactで検証後にユーザーの電話番号を取得する方法

分類Dev

ボタンをクリックした後にのみデータを検証する方法は?

分類Dev

データ検証を他の行に伝播する方法は?

分類Dev

codeigniterの検証後にデータをdb内に配置するためのより良い方法

分類Dev

検証済みのフォームデータをPHPで保存および取得するにはどうすればよいですか?

分類Dev

送信ボタンの後にフィールドの検証を追加する方法

分類Dev

Firebaseで特定の子の後にデータを取得する方法は?

分類Dev

Python3で正規表現を使用してデータ検証に特定のエラーメッセージを取得する方法

分類Dev

Powershellが「/」の数の後にデータを取得する方法

分類Dev

MVVMのモデルにデータ検証を実装する方法は?

分類Dev

検証データをCognitoの認証後トリガーに渡します

分類Dev

Laravel検証で配列データの一意の複合キーを検証する方法

分類Dev

JPAでモデルデータを検証する方法は?

分類Dev

すでにデータベースにある携帯電話番号の検証を行う方法は?

分類Dev

重複を防ぐために datagridview でデータを検証する方法

分類Dev

セッションでPHPにログインした後にユーザーデータを取得する方法

分類Dev

Angularでテーブルの行データを検証する方法は?

分類Dev

PHPフォームの検証後、フォームデータをフォームに戻します

分類Dev

Pig入力データを検証する方法はdmlのとおりです

分類Dev

Webtable を arraylist に保存し、Selenium Webdriver のデータを検証する方法

分類Dev

SQLの列のデータの形式を検証する方法

分類Dev

Pysparkでの相互検証後に最適なハイパーパラメータ値を取得するにはどうすればよいですか?

Related 関連記事

  1. 1

    検証後に追加のデータを渡す方法は?

  2. 2

    相互検証後にデータを取得するにはどうすればよいですか?

  3. 3

    検証後にPHP変数データを別のページに渡す

  4. 4

    検証に失敗した後、nullフォームデータから空の文字列を取得する

  5. 5

    jQuery検証後にmysqlテーブルにデータを挿入する方法

  6. 6

    MicronautのGORMを使用して、投稿データを取得し、コントローラーで検証してデータベースに保存する方法は?

  7. 7

    rsaでデータを適切に検証する方法は?

  8. 8

    firebase phone authを使用してreactで検証後にユーザーの電話番号を取得する方法

  9. 9

    ボタンをクリックした後にのみデータを検証する方法は?

  10. 10

    データ検証を他の行に伝播する方法は?

  11. 11

    codeigniterの検証後にデータをdb内に配置するためのより良い方法

  12. 12

    検証済みのフォームデータをPHPで保存および取得するにはどうすればよいですか?

  13. 13

    送信ボタンの後にフィールドの検証を追加する方法

  14. 14

    Firebaseで特定の子の後にデータを取得する方法は?

  15. 15

    Python3で正規表現を使用してデータ検証に特定のエラーメッセージを取得する方法

  16. 16

    Powershellが「/」の数の後にデータを取得する方法

  17. 17

    MVVMのモデルにデータ検証を実装する方法は?

  18. 18

    検証データをCognitoの認証後トリガーに渡します

  19. 19

    Laravel検証で配列データの一意の複合キーを検証する方法

  20. 20

    JPAでモデルデータを検証する方法は?

  21. 21

    すでにデータベースにある携帯電話番号の検証を行う方法は?

  22. 22

    重複を防ぐために datagridview でデータを検証する方法

  23. 23

    セッションでPHPにログインした後にユーザーデータを取得する方法

  24. 24

    Angularでテーブルの行データを検証する方法は?

  25. 25

    PHPフォームの検証後、フォームデータをフォームに戻します

  26. 26

    Pig入力データを検証する方法はdmlのとおりです

  27. 27

    Webtable を arraylist に保存し、Selenium Webdriver のデータを検証する方法

  28. 28

    SQLの列のデータの形式を検証する方法

  29. 29

    Pysparkでの相互検証後に最適なハイパーパラメータ値を取得するにはどうすればよいですか?

ホットタグ

アーカイブ