在php网站开发建设中,用户注册、登录,留言等等是必不可少的一些实用功能,用户提交的信息数据都是通过form表单提交,然而提交的数据难免会有这样或者那样的错误,不管是有心还是无意,为了保证数据的完整性、安全性,php form表单验证是过滤数据的必不可少的环节。
首先我们对用户所有提交的数据都通过 PHP 的 htmlspecialchars() 函数处理。把特殊字符转换为 HTML 实体。这意味着 之类的 HTML 字符会被替换为 zuojiankuohaophpcn 和 youjiankuohaophpcn 。这样可防止攻击者通过在表单中注入 HTML 或 JavaScript 代码(跨站点脚本攻击)对代码进行利用。
当用户提交表单时,我们将做以下两件事情,:
使用 PHP trim() 函数去除用户输入数据中不必要的字符 (如:空格,tab,换行)。
使用PHP stripslashes()函数去除用户输入数据中的反斜杠 (\)
立即学习“PHP免费学习笔记(深入)”;
必须字段
| 字段 | 验证规则 |
| Name | 必需。必须包含字母和空格。 |
| 必需。必须包含有效的电子邮件地址(包含 @ 和 .)。 | |
| Website | 可选。如果选填,则必须包含有效的 URL。 |
| Comment | 可选。多行输入字段(文本框)。 |
上述字段是必须的,不能为空。
格式匹配
1、匹配姓名
“/^[a-zA-Z ]*$/”
只允许空格和字母,”^”表示开头,”$”表示结尾,[a-zA-Z ]表示a-z或者A-Z或者空格中的一个字符。
其实例代码如下:
2、匹配E-mail
“/([\w-]+\@[\w-]+.[\w-]+)/”
“\w”匹配包括下划线的任何单词字符。等价于’[A-Za-z0-9_]’;
+匹配前面的子表达式一次或多次;
“-“匹配”-“。
3、匹配URL
“/\b(?:(?:https?|ftp):\/\/|www.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i”
保留表单中的值
在用户点击提交按钮后,为确保字段值是否输入正确,我们在HTML的input元素中插添加PHP脚本, 各字段名为: name, email, 和 website。 在评论的 textarea 字段中,我们将脚本放于 标签之间。 PHP脚本输出值为: $name, $email, $website, 和 $comment 变量。
例如如下的代码:
Name: E-mail: Website: Comment:
来一个PHP表单验证完整实例,其代码如下:
您输入的内容是:"; echo $name; echo "form PHP 表单验证实例
* 必需字段。
"; echo $email; echo "
"; echo $website; echo "
"; echo $comment; echo "
"; echo $gender; ?>
以上这些将展示如何安全地处理 PHP 表单。对 HTML 表单数据进行适当的验证对于防范黑客和垃圾邮件很重要!











