0

我有一个使用http://bassistance.de/jquery-plugins/jquery-plugin-validation/验证器验证客户端的表单(名字、姓氏等)。然后我使用 ajax serialize() 将表单字段发布到服务器,但是我想知道是否有人可以共享一个类(或到类的链接)以进行服务器端验证。

我试过使用http://www.html-form-guide.com/php-form/php-form-validation.html但这看起来像这个类期望表单字段的名称来应用验证。

谢谢

4

2 回答 2

0

该库不需要表单的名称。如果您查看他们给您的示例,他们只使用输入字段的名称。

<?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
?>

表格的名称是“测试”。它没有被检查。请发布您的源代码,以便有人可以帮助您找到问题所在。

您还可以查看以下帖子以获取更多库 - PHP 最简单的表单验证库?

于 2013-04-03T03:52:56.653 回答
0

...好的,如果您正在寻找清理传递的值以确保没有坏事通过,那么您可以在这里查看:http: //php.net/manual/en/filter.filters.sanitize.php

如果您正在寻找基于某些预设规则的“验证”,请指定。

如果您只需要基本字符,您也可以像这样对传递的值进行部分消毒。放:

function sterilize($input) {

$input = htmlentities($input);

$input = strip_tags($input);

    return $input;

}

仅供参考,如下所述,对于电子邮件地址,您可以使用以下内容:

$email = isset($_POST['email']) ? filter_var($_POST['email'], FILTER_SANITIZE_EMAIL): '';
于 2013-04-03T03:53:45.923 回答