php验证代码,PHP 表单验证

PHP 表单验证

之前章节有对表单讲解过,是分html和php文件实现的,html提交php接受,考虑到如果用户填写错误或者不规范,我们可以提醒,不用的到跳转之后再提醒,这里就用一个文件处理,在php文件嵌套html代码,from标签和from里面的元素是属性页面文件html代码,需要了解html。

index.php代码:HTML>

.error {color: #FF0000;}

$nameErr = $emailErr = "";

$name = $email = $gender = $comment = $website = $associator= $road ="" ;

if ($_SERVER["REQUEST_METHOD"] == "POST") {

if (empty($_POST["name"])) {

$nameErr = "姓名是必填的";

} else {

$name = test_input($_POST["name"]);

// 检查姓名是否包含字母和空白字符

if (!preg_match("/^[a-zA-Z ]*$/",$name)) {

$nameErr = "只允许字母和空格";

}

}

if (empty($_POST["email"])) {

$emailErr = "电邮是必填的";

} else {

$email = test_input($_POST["email"]);

// 检查电子邮件地址语法是否有效

if (!preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/",$email)) {

$emailErr = "无效的 email 格式";

}

}

if (empty($_POST["comment"])) {

$comment = "";

} else {

$comment = test_input($_POST["comment"]);

}

$website = test_input($_POST["website"]);

$gender = test_input($_POST["gender"]);

$associator = $_POST["associator"];

$road = $_POST["road"];

}

function test_input($data) {

$data = stripslashes($data);

$data = htmlspecialchars($data);

return $data;

}

?>

PHP 表单验证实例

* 必需的字段

">

名称:

* <?php  echo $nameErr;?>

email:

* <?php  echo $emailErr;?>

网址:

会员:

了解途径:

线上

线下

评论:

性别:

女性

男性

if(empty($nameErr) and empty($emailErr)){

//只有在用户填写符合规则的数据才显示

echo "

您的输入:

";

echo "名称:".$name;

echo "
";

echo "email:".$email;

echo "
";

echo "网址:".$website;

echo "
";

echo "会员:".$associator;

echo "
";

echo "了解途径:";

print_r($road);

echo "
";

echo "评论:".$comment;

echo "
";

echo "性别:".$gender;

}

?>

现在我们看看from表单有那些元素:

表单

表单的标签对是,表单的元素都放在from标签对里,表单的 HTML 代码是这样的:

 

文本字段

名称、email和 网址 属于文本输入元素,评论字段是文本框。HTML 代码是这样的:名称:

email:

网址:

评论:

单选按钮

性别 字段是单选按钮,HTML 代码是这样的:性别:

女性

男性

多选按钮

了解途径 元素是多选按钮,HTML代码是这样的:了解途径:

线上

线下

下拉列表

会员 元素是下拉列表,HTML代码是这样的:会员:           

按钮

提交 元素是按钮,HTML代码是这样的:

什么是 $_SERVER["PHP_SELF"] 变量?

$_SERVER["PHP_SELF"] 是一种超全局变量,它返回当前执行脚本的文件名。因此,$_SERVER["PHP_SELF"] 将表单数据发送到页面本身,而不是跳转到另一张页面。这样,用户就能够在表单页面获得错误提示信息。

什么是 htmlspecialchars() 函数?

htmlspecialchars() 函数把特殊字符转换为 HTML 实体。这意味着 < 和 > 之类的 HTML 字符会被替换为 < 和 > 。这样可防止攻击者通过在表单中注入 HTML 或 JavaScript 代码(跨站点脚本攻击)对代码进行利用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值