PHP对表单提交特殊字符的过滤和处理方法汇总
PHP关于表单提交特殊字符的处理方法做个汇总,主要涉及htmlspecialchars/addslashes/stripslashes/strip_tags/mysql_real_escape_string等几个函数联合使用,与大家共同交流。
一、几个与特殊字符处理有关的PHP函数
函数名 |
释义 |
介绍 |
htmlspecialchars |
将与、单双引号、大于和小于号化成HTML格式 |
&转成& |
htmlentities() |
所有字符都转成HTML格式 |
除上面htmlspecialchars字符外,还包括双字节字符显示成编码等。 |
addslashes |
单双引号、反斜线及NULL加上反斜线转义 |
被改的字符包括单引号(')、双引号(")、反斜线backslash (\) 以及空字符NULL。 |
stripslashes |
去掉反斜线字符 |
去掉字符串中的反斜线字符。若是连续二个反斜线,则去掉一个,留下一个。若只有一个反斜线,就直接去掉。 |
quotemeta |
加入引用符号 |
将字符串中含有. \\ + * ? [ ^ ] ( $ ) 等字符的前面加入反斜线"\" 符号。 |
nl2br() |
将换行字符转成 | |
strip_tags |
去掉HTML及PHP标记 |
去掉字符串中任何HTML标记和PHP标记,包括标记封堵之间的内容。注意如果字符串HTML及PHP标签存在错误,也会返回错误。 |
mysql_real_escape_string |
转义SQL字符串中的特殊字符 |
转义\x00 \n \r 空格 \ ' " \x1a,针对多字节字符处理很有效。mysql_real_escape_string会判断字符集,mysql_escape_string则不用考虑。 |
相关推荐
-
php防止用户重复提交表单
我们提交表单的时候,不能忽视的一个限制是防止用户重复提交表单,因为有可能用户连续点击了提交按钮或者是攻击者恶意提交数据,那么我们在提交数据后的处理如修改或添加数据到数据库时就会惹上麻烦. 效果图: 那么如何规避这中重复提交表单的现象出现呢?我们可以从很多方面入手: 首先从前端做限制.前端JavaScript在按钮被点击一次后禁用,即disabled,这个方法简单的防止了多次点击提交按钮,但是缺点是如果用户禁用了javascript脚本则失效. 第二,我们可以在提交后做redirect页面重定向,
-
浅谈php提交form表单
处理GET请求 实现的功能是输入姓名后页面显示"Hello XXX" 创建html文件hello.html: <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title>欢迎</title> </head> <body> <form action="hell
-
php表单加入Token防止重复提交的方法分析
本文实例讲述了php表单加入Token防止重复提交的方法.分享给大家供大家参考,具体如下: Token浅谈 Token,就是令牌,最大的特点就是随机性,不可预测.一般黑客或软件无法猜测出来. 那么,Token有什么作用?又是什么原理呢? Token一般用在两个地方--防止表单重复提交.anti csrf攻击(跨站点请求伪造). 两者在原理上都是通过session token来实现的.当客户端请求页面时,服务器会生成一个随机数Token,并且将Token放置到session当中,然后将Token发
-
表单提交错误后返回内容消失问题的解决方法(PHP网站)
表单提交错误后返回内容消失怎么办呐,今天就来分析解决一下这个问题. 状况概述: 做填写表单信息提交的时候会碰到一个问题就是当用户填写并提交表单后,程序判断不符合要求并返回,返回之后之前填写的表单信息会被清空了的情况.如果填写的信息量少还无所谓,如果填写的信息量比较多,这会直接打击到填写信息的人的良好心情.因此解决表单提交错误返回后填写的内容消失的问题是一个提高用户体验度的迫在眉睫的问题. 对于这种问题,综合总结了大概有下面几种情况: (1)页面使用了session_start函数,这个函数有个特
-
PHP实现表单提交时去除斜杠的方法
本文实例讲述了PHP实现表单提交时去除斜杠的方法.分享给大家供大家参考,具体如下: <html> <head> <title>HTML 表单</title> </head> <body> <form action="" method="POST"> 请输入一个字符串: <input type="text" size="30" name=&
-
php过滤表单提交的html等危险代码
PHP过滤提交表单的html代码里可能有被利用引入外部危险内容的代码.例如,有些时候用户提交表单中含有html内容,但这可能造成显示页面布局混乱,需要过滤掉. 方法一: 复制代码 代码如下: //get post data function PostGet($str,$post=0) { empty($str)?die('para is null'.$str.'!'):''; if( $post ) { if( get_magic_quotes_gpc() ) {
-
AJAX PHP无刷新form表单提交的简单实现(推荐)
ajax.php: <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Untitled Document</title> </head> <script language="javascript"> function saveUserInfo() { //获取
-
php 防止表单重复提交两种实现方法
php 防止表单重复提交 由于网络原因,经常出来点了提交按钮,网页没有反应,而进行再次点击.这样就导致后台收到两次提交,从而进行两次处理,本文章向大家介绍php 防止表单重复提交的几种方法 1.前端解决 方法一: 可以通过前端来解决.当用户点了提交按钮之后,先使用js进行有效性判断,没问题后,将提交按钮"禁用"掉.然后再提交! 方法二: 使用ajax提交表单.点了提交按钮后,禁用提将按钮,或者设置一个状态值,将其设为1,表示正在提交.再提交时判断如果正在提交,则不作处理.等ajax返回
-
php实现过滤表单提交中html标签的方法
本文实例讲述了php实现过滤表单提交中html标签的方法.分享给大家供大家参考.具体实现方法如下: 有时候我们做的简单评论功能会发现有提交很多的html标签,这些标签会导致页面有一些外连的情况,下面我们一起来看在php中过滤表单提交的html标签方法. 近评论中有一些机器人提交的post链接,都是一些垃圾评论.为了减少这种无谓的链接内容出现,其实是可以用php来删除表单POST提交的html标签,这样机器提交的信息也不会得到他们要的结果.而且可以减少来自seo/seo.html" target=
-
php表单敏感字符过滤类
本文实例讲述了php表单敏感字符过滤类及其用法.分享给大家供大家参考.具体分析如下: 复制代码 代码如下: /** * 表单生成验证文件 */ $_form = new formHtmlFind(); class formHtmlFind{ /** * 输出表单函数 * $formKey 表单键 * $infoArray 更新时的原始信息数组 */ public function for
-
php实现表单多按钮提交action的处理方法
表单内有两个提交按钮,要实现当点击不同的提交按钮时,分别进行两个不同的处理过程,在这里有实现表单多按钮提交action的处理方法分享给大家. 用PHP判断,一个表单两个按钮,按钮的name属性设为相同,但值设为不同,表单提交后,只需要判断提交上来的值就可以转到不同的处理过程去,这个方法比较合理,适合多个按钮在一个表单里. PHP方法,代码如下: <?php echo "$sub<br>\n"; if ("s1"==$sub) { ... } els
随机推荐
- 实例详解AngularJS实现无限级联动菜单
- Ruby进行文件信息输出实例代码
- Ruby中的p和puts的使用区别浅析
- Windows下Postgresql下载与配置方法
- 浅谈Swift编程中switch与fallthrough语句的使用
- PHP stristr() 函数(不区分大小写的字符串查找)
- PHP正则删除html代码中a标签并保留标签内容的方法 原创
- JSP开发Servlet重写init()方法实例详解
- C++中链表操作实例分析
- PHP实现获取FLV文件的时间
- oracle关键字作为字段名使用方法
- Add Formatted Data to a Spreadsheet
- JavaScript实现焦点进入文本框内关闭输入法的核心代码
- 为何不能上网浏览网页 但是可以用QQ聊天
- Android 动态改变SeekBar进度条颜色与滑块颜色的实例代码
- Android 自定义view和属性动画实现充电进度条效果
- 林黛玉扮演者陈晓旭夫妻出家 附陈晓旭简介
- python绘制双柱形图代码实例
- mysql 5.7.21 安装配置方法图文教程(window)
- 微信小程序webview实现长按点击识别二维码功能示例