我正在尝试在sql查询中传递数组。
数组包含列名作为索引,它们被分配给我使用get方法得到的各自的值。
例如,我试图编译以下代码:
$a='email';
$b=array($a => $_GET['x']);
$sql="SELECT * FROM users WHERE $b";
echo $sql;
我需要的输出是:
SELECT * FROM users WHERE email='/*value of $_GET['x']*/'
我得到的结果是:
SELECT * FROM users where Array
有人能帮我怎么做吗。
1条答案
按热度按时间6qfn3psc1#
你需要操纵
$b
数组使其成为字符串,此时它只是以自己的格式转储内容。这个版本会做你的。。。
我已经用过了
and
作为链接多个列的条件,您可以根据自己的需求进行更改。此版本使用绑定参数,插入占位符而不是查询中的值,然后需要绑定
$data
数组到准备好的语句(如何使用取决于您使用的api)。这是更安全和更灵活的(建议)。。。