doufei2355 2013-05-14 12:47
浏览 31
已采纳

pdo在网址中插入\获取\

I am trying to insert html by tinymce.

For example:

<img title="q" src="../kcfinder/upload/image/3b5330574c883fe1040eaddeb596ea20.jpg" alt="q" width="640" height="480" />

the PDO makes this

<img title=\"q\" src=\"../../../kcfinder/upload/image/3b5330574c883fe1040eaddeb596ea20.jpg\" alt=\"q\" width=\"640\" height=\"480\" />

this is the insertAction:

    $data = array_slice($data1, 0, -1);
    foreach ($data as $column => $value) {
        $ins[] = ':' . $column;
    } 
    $ins = implode(',', $ins);
    $fields = implode(',', array_keys($data));
    $sql = "insert into $this->tableName ($fields) values ($ins)";
    $sth = $this->connection->getConnection()->prepare($sql);
    foreach ($data as $f => $v) {
        $sth->bindValue(':' . $f, $v);
    }
    return $sth->execute();      

I tried the str_replace, but that doesnt work. Someone an idea how to remove the \ ?

Solution:

 if (get_magic_quotes_gpc()) {
 $process = array(&$_GET, &$_POST, &$_COOKIE, &$_REQUEST);
 while (list($key, $val) = each($process)) {
    foreach ($val as $k => $v) {
        unset($process[$key][$k]);
        if (is_array($v)) {
            $process[$key][stripslashes($k)] = $v;
            $process[] = &$process[$key][stripslashes($k)];
        } else {
            $process[$key][stripslashes($k)] = stripslashes($v);
        }
    }
}
unset($process);
}
  • 写回答

1条回答 默认 最新

  • douou9094747 2013-05-14 12:54
    关注

    It is not PDO but some your own code.

    It's either magic quotes of some sort of "sanitizing" function. You have to get rid of either of them.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 自适应 AR 模型 参数估计Matlab程序
  • ¥100 角动量包络面如何用MATLAB绘制
  • ¥15 merge函数占用内存过大
  • ¥15 Revit2020下载问题
  • ¥15 使用EMD去噪处理RML2016数据集时候的原理
  • ¥15 神经网络预测均方误差很小 但是图像上看着差别太大
  • ¥15 单片机无法进入HAL_TIM_PWM_PulseFinishedCallback回调函数
  • ¥15 Oracle中如何从clob类型截取特定字符串后面的字符
  • ¥15 想通过pywinauto自动电机应用程序按钮,但是找不到应用程序按钮信息
  • ¥15 如何在炒股软件中,爬到我想看的日k线