zoukankan      html  css  js  c++  java
  • UCHome: 转义mysql_escape_string()

    在查询数据库时,很多时候我们会在查询的条件中包含反斜线(/),双引号("),单引号(')。这三种符号在SQL语句中通常都有着特殊的含义,不能直接使用。

    mysql_escape_string()可以帮我们解决这个问题。

    假设这样一个例子:客户端有一个HTML表单,表单里面有一个input输入框,名称为item。当使用者在item输入框输入如下内容:Zak's Laptop,然后点击提交按钮。服务端在收到这个请求时该如何处理呢?

    不正确的处理方式:

    <?php
    $item = $_REQUEST[‘item’];
    $sql_query = "SELECT * FROM admin_items WHERE item_name = '$item'";
    printf ("SQL: %s\n", $sql_query);
    ?> 

    输出结果:

    SQL: SELECT * FROM admin_items WHERE item_name = 'Zak's Laptop' 

    从结果可以看书,输出的SQL很明显就是错误的。正确的处理方式:

    <?php
    $item = mysql_escape_string($_REQUEST[‘item’]);
    $sql_query = "SELECT * FROM admin_items WHERE item_name = '$item'";
    printf ("SQL: %s\n", $sql_query);
    ?>

    输出结果:

    SQL: SELECT * FROM admin_items WHERE item_name = 'Zak\'s Laptop' 

    可以看出,mysql_escape_string()函数为$item里面的单引号在前面加了一个转义反斜线字符。

  • 相关阅读:
    CSS—BFC学习
    JS函数声明及函数表达式相关
    你想要的正则表达式笔记
    WordPress搭建自己的网站
    声纹识别
    WordPress搭建自己的网站
    L--jsp和servlet
    L--网页跳转
    L1--指针
    L--Java关键字final、static
  • 原文地址:https://www.cnblogs.com/eastson/p/2837896.html
Copyright © 2011-2022 走看看