作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
下面是我的表格:
CREATE TABLE `sku` (
`id` int(11) NOT NULL,
`sk_val` text CHARACTER SET utf8 COLLATE utf8_unicode_ci,
`date_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
INSERT INTO `sku` (`id`, `sk_val`, `date_time`) VALUES
(3, '[removed]alert('xss');[removed]', '2017-04-12 12:58:38'),
(4, '[removed]alert('xss');[removed]', '2017-04-12 13:46:34');
我正在使用 CI 框架。当我尝试从 sku
表中获取数据时,它返回 false。下面是我的代码。
$query = "SELECT * FROM sku WHERE sk_val IN (?)";
$result = $this->db->query($query, array("[removed]alert('xss');[removed]"));
任何帮助将不胜感激。提前致谢。
最佳答案
您是否尝试过使用FIND_IN_SET(field_name,param)
而不是IN(param)
?通常,FIND_IN_SET 的工作方式就像带有参数的魅力。然后您可以像这样编写查询:
$query = "SELECT * FROM sku WHERE FIND_IN_SET(sk_val,?);
$result = $this->db->query($query, array("[removed]alert(\'xss\');[removed]"));
希望这有帮助。
关于mysql - 如何在 mysql IN 运算符的 codeigniter 中使用绑定(bind)参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43385760/
我是一名优秀的程序员,十分优秀!