PHP中addcslashes函数与stripcslashes的用法

  今天在写一个网站的英文版时,写完后填加英文资料,我随便填写时一点问题没有,但每当填加指定的内容时却填加不上,也不报错,我查看了数据库,发现这个字段用的是“TEXT”数据数型,我以为是内容过长的原因,于是我把数据类型改成了“longtext”,但提交时发现还是出现同样的问题。

  后来请教同事,同事发现在是英文中带标点“'”的原因,MySQL执行到此处后自动认为语句结束,所以才填加不上。既然找出来了问题那就得找出对应的解决方法,那就是在文本内容中的“'”前全部加上转义字符“\”,正好PHP中提供了自动在字符串中加入或去除转义字符的函数addcslashes和stripcslashes,于是加上测试后,果然问题解决!由此可见,我平日写程序时不够严禁,总是会忽略这样那样的细节问题,如果被HACKER发现这些问题加一利用,网站基本就OVER了,所以大家一定要引以为戒,不要和我犯同样的错误哦。

  下面简单介绍这两个函数的用法:

string addcslashes(string str,string charlist):第1个参数str为待失物原始字符串,第2个参数charlist说明需要在原始串的哪些字符前加上字符     “\”。
  string stripcslashes(string str):去掉字符串中的“\”。

例:
  <?php
  $sql = "update book set bookname='let's go' where bookid=1";
  echo $sql."<br>";
  $new_sql = addcslashes($sql,"'");
  echo $new_sql."<br>"; //update book set bookname=\'let\'s go\' where bookid=1
  $new_sql_01 = stripcslashes($new_sql);
  echo $new_sql_01;  //update book set bookname='let's go' where bookid=1
 ?>

  本文章出自Shuro's Blog(http://www.shuro.cn),转载请注明出处,谢谢!

时间: 2024-10-21 17:53:33

PHP中addcslashes函数与stripcslashes的用法的相关文章

javascript中parseInt()函数的定义和用法分析_javascript技巧

本文实例讲述了javascript中parseInt()函数的定义和用法.分享给大家供大家参考.具体分析如下: 此函数可以解析一个字符串,并返回一个整数. 语法结构: 复制代码 代码如下: parseInt(string, type) 参数列表: 参数 描述 string 必需.要被解析的字符串. type 可选.表示要解析的数字的基数,通俗的说就是数字的进制,比如二进制.八进制或者十六进制.该值介于2 ~ 36之间. 详细说明: 一.指定type参数: 指定type参数后,函数就会按照指定的t

Angular外部使用js调用Angular控制器中的函数方法或变量用法示例_AngularJS

本文实例讲述了Angular外部使用js调用Angular控制器中的函数方法或变量.分享给大家供大家参考,具体如下: <!DOCTYPE html> <html ng-app="myApp" id="myApp"> <head> <meta name="viewport" content="width=device-width" /> <title>Test</

VC++中subclassdlgitem函数的功能、用法及注意事项

subclassdlgitem 该函数用来子类化一个控件. Subclass(子类化)是MFC中最常用的窗体技术之一.子类化完成两个工作:一是把窗体类对象attach到一个windows窗体实体中(即把一个窗体的hwnd赋给该类).另外就是把该类对象的消息加入到消息路由中,使得该类可以捕获消息. SubclassDlgItem可以把对话框中已有的控件与某个窗口对象动态连接起来,该窗口对象将接管控件的消息处理,从而使控件具有新的特性.SubclassDlgItem函数的声明为 BOOL Subcl

PHP中extract()函数的定义和用法_php技巧

定义和用法 PHP extract() 函数从数组中把变量导入到当前的符号表中. 对于数组中的每个元素,键名用于变量名,键值用于变量值. 第二个参数 type 用于指定当某个变量已经存在,而数组中又有同名元素时,extract() 函数如何对待这样的冲突. 本函数返回成功设置的变量数目. 语法 extract(array,extract_rules,prefix) 参数 描述 array 必需.规定要使用的输入. extract_rules 可选.extract() 函数将检查每个键名是否为合法

Excel中隐藏函数Get.Cell的用法

Excel中有一些隐藏的函数,能够实现一些现有的函数无法实现的功能.其中一个很重要的函数就是Get.Cell.Get.Cell翻译过来也就是"得到单元格"的意思,作用是返回单元格中的格式信息. 函数定义: Get.Cell(类型号,单元格(或范围)) 其中类型号,即你想要得到的信息的类型号,经试验,范围为1-66,也就是说这个函数可以返回一个单元格里66种信息. 以下是类型号及代表的意思 1--参照储存格的绝对地址 2--参照储存格的列号 3--参照储存格的栏号 4--类似 TYPE

VC++中subclassdlgitem函数的功能及用法

  该函数用来子类化一个控件. Subclass(子类化)是MFC中最常用的窗体技术之一.子类化完成两个工作:一是把窗体类对象attach到一个windows窗体实体中(即把一个窗体的hwnd赋给该类).另外就是把该类对象的消息加入到消息路由中,使得该类可以捕获消息. SubclassDlgItem可以把对话框中已有的控件与某个窗口对象动态连接起来,该窗口对象将接管控件的消息处理,从而使控件具有新的特性.SubclassDlgItem函数的声明为 BOOL SubclassDlgItem( UI

php中get_headers函数的作用及用法的详细介绍_php实例

get_headers() 是PHP系统级函数,他返回一个包含有服务器响应一个 HTTP 请求所发送的标头的数组.如果失败则返回 FALSE 并发出一条 E_WARNING 级别的错误信息(可用来判断远程文件是否存在). 函数定义 array get_headers ( string $url [, int $format = 0 ] ) 参数 url 目标 URL format 如果将可选的 format 参数设为 1,则 get_headers() 会解析相应的信息并设定数组的键名. 示例

Python中zip()函数用法实例教程_python

本文实例讲述了Python中zip()函数的定义及用法,相信对于Python初学者有一定的借鉴价值.详情如下: 一.定义: zip([iterable, ...])zip()是Python的一个内建函数,它接受一系列可迭代的对象作为参数,将对象中对应的元素打包成一个个tuple(元组),然后返回由这些tuples组成的list(列表).若传入参数的长度不等,则返回list的长度和参数中长度最短的对象相同.利用*号操作符,可以将list unzip(解压). 二.用法示例: 读者看看下面的例子,对

PHP中addcslashes与stripcslashes函数用法分析_php技巧

本文实例分析了PHP中addcslashes与stripcslashes函数用法.分享给大家供大家参考,具体如下: 在写一个网站的英文版时,写完后填加英文资料,我随便填写时一点问题没有,但每当填加指定的内容时却填加不上,也不报错,我查看了数据库,发现这个字段用的是"TEXT"数据数型,我以为是内容过长的原因,于是我把数据类型改成了"longtext",但提交时发现还是出现同样的问题.下面我们给大家介绍一下addcslashes函数吧! 后来请教同事,同事发现在是英文