【问题标题】:Codeigniter 2.1, MySQL - insert image source into DB [duplicate]Codeigniter 2.1,MySQL - 将图像源插入数据库 [重复]
【发布时间】:2012-12-11 23:46:52
【问题描述】:

可能重复:
Codeigniter global_xss_filtering

我在将图像源(HTML 标记)插入数据库时​​遇到了小问题。例如在 textarea 有一部分是这样的:

<img src"http://10.0.0.101/okc/public/img/vesti/event Za Dz Cacak.jpg"  />

当我尝试从上面加载文章的文本而不是格式时,我得到了这个:

<img cacak.jpg"="" dz="" za="" event="" vesti="" img="" public="" okc="" 10.0.0.101="" src"http:="">

这部分代码在DB中插入文章文本:

...

    'opis'=>mysql_real_escape_string(htmlentities($this->input->post('text'))),
...

这里似乎有什么问题?

【问题讨论】:

  • 只是好奇...这是一个有效的图像名称吗? (有空格)
  • 在我的情况下 global_xss_filtering 设置为 false。
  • @manix 镜像名称有效。
  • 'opis'=>$this->db->e​​scape($this->input->post('text', TRUE)),你应该这样消毒。
  • 我设法找到了问题。 html_entity_decode 正在剥离斜杠 (//)。我怎样才能避免这种情况?

标签: php mysql codeigniter codeigniter-2


【解决方案1】:

这是做你想做的事情的正确方法:

'opis'=>$this->db->escape($this->input->post('text', TRUE)),

有关如何安全编码的更多信息,请参阅此内容:

【讨论】:

  • 不知道。谢谢你的建议:)
猜你喜欢
  • 2013-01-27
  • 1970-01-01
  • 2020-01-21
  • 1970-01-01
  • 2015-02-20
  • 2013-03-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多