PHP表单

PHP 中的 $_GET$_POST 变量用于检索表单中的信息,比如用户输入。

$_SERVER["PHP_SELF"]是超级全局变量,返回当前正在执行脚本的文件名。

$_GET 变量用于收集来自 method="get" 的表单中的值,GET 方法不适合大型的变量值。它的值是不能超过 2000 个字符的。

$_POST 变量用于收集来自 method="post" 的表单中的值,默认情况下,POST 方法的发送信息的量最大值为 8 MB。

$_REQUEST 变量包含了$_GET、$_POST 和$_COOKIE 的内容,$_REQUEST变量可用来收集通过GET 和 POST方法发送的表单数据。

文本字段:

name, email, 及 website 字段为文本输入元素, comment 字段是textarea。

单选按钮:

gender 字段是单选按钮。

表单元素:

<form method="post" action="<?php echo  htmlspecialchars($_SERVER["PHP_SELF"]);?>">

当用户提交表单时,我们将做以下两件事情,:

  1. 使用 PHP trim() 函数去除用户输入数据中不必要的字符 (如:空格,tab,换行)。

  2. 使用PHP stripslashes()函数去除用户输入数据中的反斜杠 (\)

通过$_SERVER["REQUEST_METHOD"]来检测表单是否被提交

表单-必需字段

字段 验证规则
Name必需。 + 只能包含字母和空格
E-mail必需。 + 必需包含一个有效的电子邮件地址(包含"@"和".")
Website可选。 如果存在,它必须包含一个有效的URL
Comment可选。多行字段(文本域)。
Gender必需。 Must select one(选择一个)

验证名称

preg_match — 进行正则表达式匹配。

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

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

  {

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

  }

验证邮件

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

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

  {

  $emailErr = "非法邮件地址";

  }

验证地址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";

  }



什么是 htmlspecialchars()方法?

htmlspecialchars() 函数把一些预定义的字符转换为 HTML 实体。

预定义的字符是:

  • & (和号) 成为 &amp;

  • " (双引号) 成为 &quot;

  • ' (单引号) 成为 &#039;

  • < (小于) 成为 &lt;

  • > (大于) 成为 &gt;



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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值