PHP语言和Web表单
小标 2018-07-26 来源 : 阅读 1848 评论 0

摘要:本文主要向大家介绍了PHP语言和Web表单,通过具体的内容向大家展示,希望对大家学习php语言有所帮助。

本文主要向大家介绍了PHP语言和Web表单,通过具体的内容向大家展示,希望对大家学习php语言有所帮助。

<?php

    if(isset($_POST["name"])){//isset()函数设置变量是否设置,并且不能为空

        $name = $_POST["name"];

        $pass = $_POST["pass"];

        printf("姓名:%s",$name);

        printf("密码:%s",$pass);

    }?>

<form action="index.html" method="POST">

    <p>

        Name:<br/>

        <input type="text" name="name"/>

    </p>

    <p>

        Pass:<br/>

        <input type="text" name="pass"/>

    </p>

    <input type="submit" value="提交"/>

</form>

 

验证表单数据

· 清理用户输入

·转义shell参数

escapeshellarg()函数

$str = "文本";

echo escapeshellarg($str);//将字符串添加一个双引号

·转义shell元字符

escapeshellcmd()函数

$str = " # $ ; , | * ? , ~ < > ( ) { } [ ] & \\ \x0A \xFF";

escapeshellcmd($str);escapeshellcmd()函数自动转义以上字符

 ·将HTML转换为HTML实体

htmlentities()函数

$xiu = "&";echo htmlentities($xiu);//浏览器源代码为&

·剔除用户输入中的HTML标签

strip_tags()函数

$xiu = "<h1>h1标签</h1>,<h2>h2标签</h2>";$xiu = strip_tags($xiu,"<h1>");//保留<h1>标签,多个标签逗号隔开echo $xiu;//"<h1>h1标签</h1>,h2标签";

· 利用Filter扩展验证和清理数据

filter_var()函数

Filter扩展的验证功能

FILER_VALIDAYE_BOOLEAN(布尔值)
FILER_VALIDATE_EMAIL(电子邮件地址)
FILER_VALIDATE_FLOAT(浮点数)
FILER_VALIDATE_INT(整数)
FILER_VALIDATE_IP(IP地址)
FILER_VALIDATE_REGEXP(正则表达式)
FILER_VALIDATE_URL(URL)

$email = "xiukang@qq.com";if(filter_var($email,FILTER_VALIDATE_EMAIL)){//filter_var()函数验证数据类型echo "成功";

}

用Filter扩展清理数据

FILTER_SANITIZE_EMAIL(电子邮件之外的字符全部删除 RFC822)
FILTER_SANITIZE_URL(URL之外的字符全部删除 RFC3986)
FILTER_SANITIZE_ENCODED(对一个字符串完成URL编码,生成与urlencode()函数所返回结果相同的输出)
FILTER_SANITIZE_MAGIC_QUOTES(使用addslaches()函数用一个反斜杠转义可能危险的字符)
FILTER_SANITIZE_NUMBER_FLOAT(删除所有导致浮点值无法由PHP识别的字符)
FILTER_SANITIZE_NUMBER_INT(删除所有导致整数值无法由PHP识别的字符)
FILTER_SANITIZE_SPECIAL_CHARS(对 ' " < >和$字符进行HTML编码,对ASCII值小于32的字符进行编码,包括制表符,退格符)
FILTER_SANITIZE_STRING(清除所有HTML标签)

$email = "xiukang@qq.com ,sear";$email = filter_var($email,FILTER_SANITIZE_EMAIL);//删除RFC822之外所有字符echo $email;//xiukang@qq.comsear

· 处理多值表单组件

为了让PHP识别赋给表单的多个值,需要对表单项名添加一个中括号
PHP就会像处理数组一样处理所提交的变量

 

<?php

  if(isset($_POST["submit"])){

    foreach($_POST["languages"] as $language){

      $xiu = htmlentities($language);

      echo $xiu."<br/>";

    }

  }?>

<form action="<?php echo $_SERVER['PHP_SELF']?>" method="POST">

  <input type="checkbox" name="languages[]" value="php"/>php<br/>

  <input type="checkbox" name="languages[]" value="c++"/>c++<br/>

  <input type="checkbox" name="languages[]" value="java"/>java<br/>

  <input type="checkbox" name="languages[]" value="html"/>html<br/>

  <input type="submit" name="submit" value="提交"/>

</form>

以上就介绍了PHP的相关知识,希望对PHP有兴趣的朋友有所帮助。了解更多内容,请关注职坐标编程语言PHP频道!

本文由 @小标 发布于职坐标。未经许可,禁止转载。
喜欢 | 1 不喜欢 | 0
看完这篇文章有何感觉?已经有1人表态,100%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式AI+学习就业服务平台 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved