如何在PHP中为我的注册表单进行验证?

时间:2011-06-20 04:37:09

标签: php validation

新手在这里。我在php.Im初学者创建一个示例Reg表单。我想验证我的所有字段不等于那样的空。我有文本字段,复选框,单选按钮,选择框和&电邮字段。 请用Example.Thanks提前告诉。

2 个答案:

答案 0 :(得分:0)

这是php表格验证的example

另一个example form空字段验证。

示例:

<?PHP
require_once "formvalidator.php";
$show_form=true;
if(isset($_POST['Submit']))
{
    $validator = new FormValidator();
    $validator->addValidation("Name","req","Please fill in Name");
    $validator->addValidation("Email","email",
"The input for Email should be a valid email value");
    $validator->addValidation("Email","req","Please fill in Email");
    if($validator->ValidateForm())
    {
        echo "<h2>Validation Success!</h2>";
        $show_form=false;
    }
    else
    {
        echo "<B>Validation Errors:</B>";

        $error_hash = $validator->GetErrors();
        foreach($error_hash as $inpname => $inp_err)
        {
          echo "<p>$inpname : $inp_err</p>\n";
        }
    }
}

if(true == $show_form)
{
?>
<form name='test' method='POST' action='' accept-charset='UTF-8'>
Name: <input type='text' name='Name' size='20'>
Email: <input type='text' name='Email' size='20'>
<input type='submit' name='Submit' value='Submit'>
</form>
<?PHP
}//true == $show_form
?>

答案 1 :(得分:0)

$errors = array();
$required = array("Name", "Email");  
foreach($_POST as $key=>$value)
{
    if(!empty($value))
    {
        $$key = $value;
    }
    else
    {
         if(in_array($key, $required))
         {
             array_push($errors, $key);
         }
    }        

}

这应该用于检查空值。只需将表单中必填字段的键添加到所需的数组即可。 $$ key = $ value创建一个与键名称相同的变量,并将值放入其中。因此,如果您的字段在循环后是“名称”和“电子邮件”,则可以使用正确的值访问变量$ Name和$ Email。

您可能希望之后检查并显示错误

if(empty($errors))
{
    //send email
}
else
{
    //display errors
    echo "<ul>";
    foreach($errors as $error)
    {
        echo "<li>" . $error . "</li>";
    }
    echo "</ul>";
}