在html表单验证中使用多个php页面

时间:2017-04-25 05:10:32

标签: javascript php html forms

我是PHP的新手,我正在尝试以PHP页面的形式重新创建PDF。

基本上,用户必须在许多字段中提供输入,然后在提交时,如果表单成功验证,它会将html表单传递到新窗口中的新php页面。

如果它未验证,则页面重新加载并指示需要调整哪些字段。 这是形式:

<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" name="form">

我现在所拥有的是,在提交表单时,它会将表单传递给自己:

if ($_SERVER["REQUEST_METHOD"] == "POST") {
 if (empty($_POST["schoolIn"])) {
    $schoolErr = "School Name is required";
 } else {
     if (!preg_match("/^[a-zA-Z ]*$/",$_POST["schoolIn"])) {
        $schoolErr = "Only letters and white space allowed"; 

     }
     else{
             $school = $_POST["schoolIn"];
     }
}

/*the rest of the validation goes here */

这看起来效果很好,但是如果所有这些检查都成功验证,我不确定如何将表单提交到新的PHP文档。

在表单提交按钮上,有没有什么方法可以让我检查表单是否有条件,如果是,则再次将其提交给新的PHP文件(例如&#34; submitted.php)?或者我认为这一切都错了。

1 个答案:

答案 0 :(得分:0)

方法1:

只需将值作为查询参数传递,如此

header('Location:submitted.php?schoolIn='.$_POST['schoolIn']‌​);

使用$_GET['schoolIn'];

访问目标网页上的值

方法2:

您可以将帖子值存储到会话中并在任何地方访问它。

   $_SESSION['form_values']=$_POST;

像这样访问目标页面上的值

   $_SESSION['form_values']['schoolIn'];

注意:不要忘记在使用会话的任何地方开始会话。