为了保证 php 表单的完整性和安全性,我们需要对表单进行验证,本章节我们将介绍如何验证 names(名称), e-mails(邮件), 和 urls。
php - 验证名称
以下代码将通过简单的方式来检测 name 字段是否包含字母和空格,如果 name 字段值不合法,将输出错误信息:
$name = test_input($_post["name"]);
if (!preg_match("/^[a-za-z ]*$/",$name)){
$nameerr = "只允许字母及空格";
}
preg_match — 进行正则表达式匹配。
语法: 在 subject 字符串中搜索与 pattern 给出的正则表达式相匹配的内容。如果提供了 matches ,则其会被搜索的结果所填充。$matches[0] 将包含与整个模式匹配的文本,$matches[1] 将包含与第一个捕获的括号中的子模式所匹配的文本,以此类推。 |
php - 验证邮件
以下代码将通过简单的方式来检测 e-mail 地址是否合法。如果 e-mail 地址不合法,将输出错误信息:
$email = test_input($_post["email"]);
if (!preg_match("/([\w\-] \@[\w\-] \.[\w\-] )/",$email)){
$emailerr = "非法邮件地址";
}
php - 验证 url
以下代码将检测url地址是否合法 (以下正则表达式运行url中含有破折号:"-"), 如果 url 地址不合法,将输出错误信息:
$website = test_input($_post["website"]);
if (!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9 &@#\/%?=~_|!:,.;]*[-a-z0-9 &@#\/%=~_|]/i",$website)){
$websiteerr = "不合法的 url";
}
php - 验证 name, e-mail, 和 url
代码如下所示:
实例