• 技术文章 >后端开发 >php教程

    php中addslashes函数与sql防注入详解

    怪我咯怪我咯2017-07-12 15:20:46原创578
    addslashes() 函数返回在预定义字符之前添加反斜杠的字符串。

    预定义字符是:

    提示:该函数可用于为存储在数据库中的字符串以及数据库查询语句准备字符串。

    注释:默认地,PHP 对所有的 GET、POST 和 COOKIE 数据自动运行 addslashes()。所以您不应对已转义过的字符串使用 addslashes(),因为这样会导致双层转义。遇到这种情况时可以使用函数 get_magic_quotes_gpc() 进行检测。这篇文章主要介绍了php中addslashes函数与sql防注入,实例讲述了采用addslashes函数对于sql防注入的用处,对于PHP安全程序设计来说具有不错的参考借鉴价值,需要的朋友可以参考下具体分析如下:

    addslashes可会自动给单引号,双引号增加\\\\\\,这样我们就可以安全的把数据存入数据库中而不黑客利用,参数'a..z'界定所有大小写字母均被转义,代码如下:

    echo addcslashes('foo[ ]','a..z'); //输出:foo[ ] 
    $str="is your name o'reilly?"; //定义字符串,其中包括需要转义的字符 
    echo addslashes($str);  //输出经过转义的字符串
    $str="<a href='test'>test</a>"; //定义包含特殊字符的字符串 
    $new=htmlspecialchars($str,ent_quotes);  //进行转换操作 
    echo $new;           //输出转换结果 
    //不过输出时要用到 
    $str="jane & 'tarzan'";  //定义html字符串 
    echo html_entity_decode($str);   //输出转换后的内容 
    echo "<br/>"; 
    echo html_entity_decode($str,ent_quotes); //有可选参数输出的内容

    以上就是php中addslashes函数与sql防注入详解的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:addslashes php 详解
    上一篇:php sql防注入程序代码 下一篇:php 自动跳转中英文页面示例代码
    大前端线上培训班

    相关文章推荐

    • PHP数据库学习之怎样使用PDO执行SQL语句?• PHP数据库学习之怎样使用PDO连接数据库?• PHP表单学习之表单的输入与验证• PHP数据库学习之怎样使用PDO获取查询结果?• PHP表单学习之$_GET与$_POST变量的使用与区别

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网