Home > Article > Backend Development > Zebra_Form PHP表单验证类
Zebra_Form构建兼容所有浏览器,具有客户端+服务器校验功能并且外观漂亮的HTML表单,将会发费比较的开发时间。Zebra_Form是一个能够很好处理这些过程,利用它只需要几行代码就能够帮忙我们构建一个安全、优美的表单。输出的结果可以自定义外观,也可以自定义。
功能特点
1、提供保护,防止跨站点脚本(XSS)以及跨站点请求伪造(CSRF)攻击。
2、它会自动阻止使用“灌水”技术(CAPTCHA系统,也可用于更强大的保护)进行的表单提交
3、同时提供服务器端和客户端验证(客户端验证是通过使用jQuery的1.5.2+);可以很容易地添加自定义的验证规则(包括基于AJAX)
4、使用模板形式的“布局可以自动或手动生成“
5、输出html代码经过HTML4.01、XHTML 1.0或HTML5严格验证
6、适用于所有的主流浏览器如Firefox,Chrome浏览器,Safari浏览器和Internet Explorer6+
如何使用
The HTML
<!-- must be in strict mode! --><br /><!DOCTYPE html><br /><html><br /> <head><br /> <title>Zebra_Form Example</title><br /> <meta charset="utf-8"><br /> <!-- load Zebra_Form's stylesheet file --><br /> <link rel="stylesheet" href="path/to/zebra_form.css"><br /> <!-- load jQuery --><br /> <script src="path/to/jquery.js"></script><br /> <!-- load Zebra_Form's JavaScript file --><br /> <script src="path/to/zebra_form.js"></script><br /> </head><br /> <body><br /> <!-- the PHP code below goes here --><br /> </body><br /></html>
The PHP
<?php<br />// include the Zebra_Form class<br />require 'path/to/Zebra_Form.php';<br />// instantiate a Zebra_Form object<br />$form = new Zebra_Form('form');<br />// the label for the "email" field<br />$form->add('label', 'label_email', 'email', 'Email');<br />// add the "email" field<br />$obj = $form->add('text', 'email', '', array('autocomplete' => 'off'));<br />// set rules<br />$obj->set_rule(array(<br /> // error messages will be sent to a variable called "error", usable in custom templates<br /> 'required' => array('error', 'Email is required!'),<br /> 'email' => array('error', 'Email address seems to be invalid!'),<br />));<br />// "password"<br />$form->add('label', 'label_password', 'password', 'Password');<br />$obj = $form->add('password', 'password', '', array('autocomplete' => 'off'));<br />$obj->set_rule(array(<br /> 'required' => array('error', 'Password is required!'),<br /> 'length' => array(6, 10, 'error', 'The password must have between 6 and 10 characters'),<br />));<br />// "remember me"<br />$form->add('checkbox', 'remember_me', 'yes');<br />$form->add('label', 'label_remember_me_yes', 'remember_me_yes', 'Remember me');<br />// "submit"<br />$form->add('submit', 'btnsubmit', 'Submit');<br />// validate the form<br />if ($form->validate()) {<br /> // do stuff here<br />}<br />// auto generate output, labels above form elements<br />$form->render();<br />?>
项目地址:http://stefangabos.ro/php-libraries/zebra-form/