【发布时间】:2014-05-14 05:42:19
【问题描述】:
我有一个像“dubai,sharjah”这样的字符串,我想把它变成这样的“dubai”,“sharja”,
我正在使用 ajax 和 my code 在 url 中传递值 dubai,sharjah
$city=$_GET['city'];
$sql = "SELECT * FROM filter where isdeleted = 0 ";
if ($city !="" && $city !="Empty" ){
$sql.=" and twon in ('".$citydata."')";
}
当我像这样打印查询时
SELECT * FROM filter where isdeleted = 0 and twon in ('dubai,sharjah,')
但我想要这样
SELECT * FROM filter where isdeleted = 0 and twon in ('dubai','sharja')
谁能指导我如何使用php做到这一点。
【问题讨论】:
-
你从哪里得到
$citydata -
如果您尝试生成一个实际用于运行查询的 sql 查询,我建议您在此处停下来阅读有关如何使用绑定变量的内容:@ 987654321@ 更好地保护自己免受 SQL 注入攻击。
-
$sql.=" and twon in ('".str_replace(",","','",$citydata)."')"; -
@GarySchreiner
mysqli_stmt::bind_param在处理一组值时是一场噩梦。对于这类事情,我推荐 PDO。 -
@Phil 我同意,只是想在 10 个答案出现之前匆忙完成准备好的陈述:) 正如我在对您的回答的评论中提到的那样,我发现您的解决方案是最佳选择。不幸的是,cmets 上的编辑窗口仅持续 5 分钟。