PHP对表单提交特殊字符的过滤和处理方法汇总_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则不用考虑。

时间: 2024-10-31 23:03:04

PHP对表单提交特殊字符的过滤和处理方法汇总_php技巧的相关文章

Web表单提交之disabled问题js解决方法_javascript技巧

本文实例讲述了Web表单提交之disabled问题js解决方法.分享给大家供大家参考.具体分析如下: 例如,有如下表单 复制代码 代码如下: <form id="inputForm" action="shorttermrental.action" method="post">      <input name="pname" type="text" id="pname"

Zend Framework教程之Zend_Form组件实现表单提交并显示错误提示的方法_php实例

本文实例讲述了Zend Framework教程之Zend_Form组件实现表单提交并显示错误提示的方法.分享给大家供大家参考,具体如下: 同时公司又要开发一个群组功能..我也就想运用一下Zend_Form来实现创建群组的功能.主要还是看中Zend_Form可以在写Form时候.实现服务器端的验证功能..省得我们在把数据提交到数据库的时候再验证一次..所以呢.我就看了一下这方面的手册..通过Zend Framework手册找到了相关的使用说明...最简单的使用方式就是在控制器(Controller

PHP 过滤表单提交特殊字符(防注入)

下面针对常用表单特殊字符处理进行总结: 测试字符串:  代码如下 复制代码 $dbstr='D:test <a href="http://www.111cn.net">http://www.111cn.net</a>,天缘博客 '!='1' OR '1' </DIV> <script  language="javascript" type="text/javascript">alert("

PHP提交表单失败后如何保留已经填写的信息_php技巧

本文介绍PHP提交表单失败后如何保留填写的信息一些方法总结,其中最常用的就是使用缓存方式了,这种方法如果网速慢是可能出问题的,最好的办法就是使用ajax了. 1.使用header头设置缓存控制头Cache-control. PHP代码如下: header('Cache-control: private, must-revalidate'); //支持页面回跳 2.使用session_cache_limiter方法. PHP代码如下: session_cache_limiter('private,

mvc form表单提交的几种形式整理总结_实用技巧

mvc中form表单提交的几种形式 第一种方式:submit 按钮 提交 <form action="MyDemand" method="post"> <span>关键字:</span> <input name="keywords" type="text" value="@keywords" /> <input type="submit&quo

PHP简单字符串过滤方法示例_php技巧

本文实例讲述了PHP简单字符串过滤方法.分享给大家供大家参考,具体如下: <!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1,maximum-scale=1, user-s

php页面防重复提交方法总结_php技巧

1.提交按钮置disabled       当用户提交后,立即把按钮置为不可用状态.这种用js来实现.          提交前 复制代码 代码如下:         $("#submit").attr('disabled','true');         $("#submit").val("正在提交,请稍等");          ........................................................

asp.net实现取消页面表单内文本输入框Enter响应的方法_实用技巧

本文实例讲述了asp.net实现取消页面表单内文本输入框Enter响应的方法.分享给大家供大家参考,具体如下: 很早以前开发asp.net项目的时候遇到的:在一个服务器TextBox控件上按下 Enter键,页面回发刷新一遍.后来google一下,发现这是asp.net2.0为表单处理专门设置的"Enter key"功能,关于asp.net ajax表单的enter key,你可以查看这一篇<ASP.NET基于Ajax的Enter键提交问题>.前面给出链接的两篇都是叫我们怎

php提交过来的数据生成为txt文件_php技巧

一共两个文件,具体链接数据库的部分给直接去除了,前台是提交的文字部分,一行一个,在提交后另一个程序文件进行处理,然后按照提交的文件名生成相应的txt 文件,并在txt 文件中加入数据,在使用之前需要先在根目录下新建 test 文件下. 前台表单文件如下(保存为dcwz.php): <?php error_reporting(0); //require_once("../config.php"); //require_once("../admin/ly_check.php