doujiao3074 2013-06-28 12:28
浏览 25
已采纳

在这种情况下如何逃避报价?

I want to return a new string after replacing any CHAR(10) by " " inside a string passed as the parameter of a function :

function executerCalcul($initial_string)
{
   $ret = "";
   $conn = new mysqli(BDD_SERVER, BDD_USER, BDD_PWD, BDD_NAME);
   if ($conn->connect_error) {
        trigger_error('Database connection failed: '  . $conn->connect_error, E_USER_ERROR);
   }
   if (stripos($initial_string, "'") === false)
        $sql = "SELECT REPLACE('$initial_string', char(10 using utf8),'
') as resultat";
   else
   {
        // how to write correctly $sql here because we are here in the case when there are single quotes inside the string parameter
   }
   $rs = $conn->query($sql);

   if($rs === false) {
        trigger_error('Wrong SQL: ' . $sql . ' Error: ' . $conn->error, E_USER_ERROR);
    } else {
                $rows_returned = $rs->num_rows;
    }
    $rs->data_seek(0);
    while($row = $rs->fetch_assoc()) {
        $ret .= $row['resultat'];
    }
    $rs->free();
    return $ret;
}

So how to escape single quotes in the case the string parameter contains single quotes ?

  • 写回答

2条回答 默认 最新

  • duanjie2701 2013-06-28 12:33
    关注

    Use built-in functions as shown in documentation.

    For example:

    $new_query = $conn->real_escape_string($query);
    

    and then execute the SQL normally.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥60 用visual studio编写程序,利用间接平差求解水准网
  • ¥15 Llama如何调用shell或者Python
  • ¥20 谁能帮我挨个解读这个php语言编的代码什么意思?
  • ¥15 win10权限管理,限制普通用户使用删除功能
  • ¥15 minnio内存占用过大,内存没被回收(Windows环境)
  • ¥65 抖音咸鱼付款链接转码支付宝
  • ¥15 ubuntu22.04上安装ursim-3.15.8.106339遇到的问题
  • ¥15 blast算法(相关搜索:数据库)
  • ¥15 请问有人会紧聚焦相关的matlab知识嘛?
  • ¥15 网络通信安全解决方案