Php 如何在表单验证中构建

Php 如何在表单验证中构建,php,Php,我一直在尝试验证我的表单,但什么都没有发生。无论字段是空白还是填写,我都会通过电子邮件收到表格。soemone能从一个php新手那里浏览一下php吗?臭虫在哪里?我在selfhtml上找到了php,并对其进行了修改以验证其有效性 这是我的表格: <form action="../php/terminform_trial.php" method="post" name="termine"> <dl> <dt><labe

我一直在尝试验证我的表单,但什么都没有发生。无论字段是空白还是填写,我都会通过电子邮件收到表格。soemone能从一个php新手那里浏览一下php吗?臭虫在哪里?我在selfhtml上找到了php,并对其进行了修改以验证其有效性

这是我的表格:

      <form action="../php/terminform_trial.php" method="post" name="termine">
    <dl>
         <dt><label for="name" >Name</label></dt>
         <dd><input type="text" name="name" value=""></dd>

                 <dt><label for="vorname" value="">Vorname</label></dt>
         <dd><input type="text" name="vorname" value=""></dd>

         <dt><label for="geburtsdatum" value="">Geburtsdatum</label></dt>
         <dd><input type="text" name="geburtsdatum" value=""></dd>

         <dt><label for="telefon" value="">Telefon tagsüber </label></dt>
         <dd><input  type="text" name="telefon" value=""></dd>

                 <dt><label for="mobile">Mobile </label></dt>
         <dd><input  type="text" name="mobile" value=""></dd>

         <dt><label for="email">E-Mail Adresse <span class="error"></dt>
         <dd> <input  type="text" name="email" value=""></dd>

           </dl>
        </form>

名称
沃名称
Geburtsdatum
Telefon tagsüber
可移动的
电子邮件地址
这是我尝试验证表单的php

     <?php
     function validateInput($input) {
     if (!preg_match!("/([\w\-]+\@[\w\-]+\.[\w\-]+)/",$email))
        {if (empty($_POST["email"]))
            {$emailErr = "Bitte eine gültige E-Mail Adresse eingeben";}// handle error
        }
         else {
              return true;}
        }   

        foreach ($_POST as $fieldname => $value) {
               if (is_array($value))
                {
           foreach ($value as ($einzelwert) === TRUE)
                        {$mailtext .= $fieldname.$seperator.$einzelwert."\n";}
        }   elseif (validateInput($einzelwert))
                        {$mailtext .= $fieldname.$seperator.$value."\n";}

                        }
        mail($myemail, mb_encode_mimeheader
            ($subject, "utf-8", "Q"), 
             $mailtext,
             $header)
         or die("Ihre Nachricht konnte nicht versendet werden.");

         header("Location: http://www.giz-zuerich.ch/_private/sites/danke.html");

      exit;

      }

       header("Content-type: text/html; charset=utf-8");

      ?>


<>代码>而不是滚动自己的电子邮件验证正则表达式,请考虑使用<代码> FieldIyVar()/<代码>。您可以使用JavaScript验证表单。我是真正的初学者。我可以得到更多线索吗?@user986959你可以。然后我就可以关闭JavaScript并破坏你那令人敬畏的系统。请不要建议再次使用JS进行独占验证;)@Ben filter()也是php吗?如果是的话,我们将尝试找到谷歌