• PHP magic_quotes_gpc的详细使用方法


     

    我们今天要向大家介绍的是PHP magic_quotes_gpc的具体使用方法。大家都知道在PHP中一个特殊的函数魔术函数,它在引用的过程中只有在传递$_GET,$_POST,$_COOKIE时才会发生作用。

    1.
    条件: PHP magic_quotes_gpc=off
    写入数据库的字符串未经过任何过滤处理。从数据库读出的字符串也未作任何处理。

    数据:  $data=”snow”’’sun” ; (snow和sun之间是四个连续的单引号).

    操作: 将字符串:”snow”’’sun” 写入数据库,

    结果: 出现sql语句错误,mysql不能顺利完成sql语句,写入数据库失败。

    数据库保存格式:无数据。

    输出数据格式:无数据。

    说明: 对于未经处理的单引号在写入数据库时会使sql语句发生错误。

    2.
    条件: PHP magic_quotes_gpc=off
    写入数据库的字符串经过函数addlashes()处理。从数据库读出的字符串未作任何处理。

    数据:  $data=”snow”’’sun” ; (snow和sun之间是四个连续的单引号).

    操作: 将字符串:”snow”’’sun” 写入数据库,

    结果: sql语句顺利执行,数据成功写入数据库

    数据库保存格式:snow”’’sun (和输入一样)

    输出数据格式:snow”’’sun (和输入一样)

    说明: addslashes()函数将单引号转换为’的转义字符使sql语句成功执行,
    但’并未作为数据存入数据库,数据库保存的是snow”’’sun 而并不是我们想象的snow’’’’sun

    3.
    条件: PHP magic_quotes_gpc=on
    写入数据库的字符串未经过任何处理。从数据库读出的字符串未作任何处理。

    数据:  $data=”snow”’’sun” ; (snow和sun之间是四个连续的单引号).

    操作: 将字符串:”snow”’’sun” 写入数据库,

    结果: sql语句顺利执行,数据成功写入数据库

    数据库保存格式:snow”’’sun (和输入一样)

    输出数据格式:snow”’’sun (和输入一样)

    说明: PHP magic_quotes_gpc=on 将单引号转换为’的转义字符使sql语句成功执行,
    但’并未作为数据入数据库,数据库保存的是snow”’’sun而并不是我们想象的snow’’’’sun。

    4.
    条件: PHP magic_quotes_gpc=on
    写入数据库的字符串经过函数addlashes()处理。从数据库读出的字符串未作任何处理。

    数据:  $data=”snow”’’sun” ; (snow和sun之间是四个连续的单引号).

    操作: 将字符串:”snow”’’sun” 写入数据库,

    结果: sql语句顺利执行,数据成功写入数据库

    数据库保存格式:snow’’’’sun (添加了转义字符)

    输出数据格式:snow’’’’sun (添加了转义字符)

    说明: PHP magic_quotes_gpc=on 将单引号转换为’的转义字符使sql语句成功执行,
    addslashes又将即将写入数据库的单引号转换为’,后者的转换被作为数据写入
    数据库,数据库保存的是snow’’’’sun

    总结如下:
    1. 对于PHP magic_quotes_gpc=on的情况,

    我们可以不对输入和输出数据库的字符串数据作
    addslashes()和stripslashes()的操作,数据也会正常显示。

    如果此时你对输入的数据作了addslashes()处理,
    那么在输出的时候就必须使用stripslashes()去掉多余的反斜杠。

    2. 对于PHP magic_quotes_gpc=off 的情况

    必须使用addslashes()对输入数据进行处理,但并不需要使用stripslashes()格式化输出
    因为addslashes()并未将反斜杠一起写入数据库,只是帮助mysql完成了sql语句的执行。

    补充:

    PHP magic_quotes_gpc作用范围是:WEB客户服务端;作用时间:请求开始时,例如当脚本运行时.
    magic_quotes_runtime 作用范围:从文件中读取的数据或执行exec()的结果或是从SQL查询中得到的;作用时间:每次当脚本访问运行状态中产生的数据

    原文:PHP magic_quotes_gpc的详细使用方法

  • 相关阅读:
    CSS3—— 2D转换 3D转换 过渡 动画
    CSS3——边框 圆角 背景 渐变 文本效果
    CSS3——表单 计数器 网页布局 应用实例
    CSS3——提示工具 图片廓 图像透明 图像拼接技术 媒体类型 属性选择器
    CSS3——对齐 组合选择符 伪类 伪元素 导航栏 下拉菜单
    CSS3——分组和嵌套 尺寸 display显示 position定位 overflow float浮动
    CSS3——盒子模型 border(边框) 轮廓(outline)属性 margin外边距 padding填充
    Eclipse连接数据库报错Local variable passwd defined in an enclosing scope must be final or effectively final
    数据库——单表查询
    数据库——添加,修改,删除
  • 原文地址:https://www.cnblogs.com/scutwang/p/3202244.html
Copyright © 2020-2023  润新知