我是新手在php.I的here.Am初学者。我创建了一个样本注册form.Here,我想验证我的所有字段不等于空那样。我有文本字段,复选框,单选按钮,选择框和电子邮件字段。请提前告诉Example.Thanks。
发布于 2011-06-20 12:46:51
$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”,则可以使用中的正确值访问变量$Name和$Email。
您可能希望在事后检查并显示错误,如下所示
if(empty($errors))
{
//send email
}
else
{
//display errors
echo "<ul>";
foreach($errors as $error)
{
echo "<li>" . $error . "</li>";
}
echo "</ul>";
}发布于 2011-06-20 12:42:41
这是一个php表单验证的example。
示例:
<?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
?>https://stackoverflow.com/questions/6406850
复制相似问题