1

我有这样的表:

ID | title       | category
-----------------------------
1  | product1    | 0
2  | product2    | 0
3  | product3    | 1
4  | product4    | 1
5  | product5    | 3

我有带有 ID 的数组,如何选择带有这些 ID 的产品?

我的意思是这样的,但类别可以是数组中的任何值,而不仅仅是像示例中的一个值。

$result = mysql_query("SELECT * FROM product where category = '$var'");
4

3 回答 3

3

试试这个方法

$arr = array(1,2);
$str = implode(',',$arr);

$result = mysql_query("SELECT * FROM product where category IN (".$str.") ");

注意:尽量避免 MySQL 扩展,尽量使用 PDO 或prepared statements 代替。

于 2013-03-01T09:00:35.737 回答
1
$ids = implode(',', $ids); // array(1,2,3,4) =>  '1,2,3,4'
$result = mysql_query("SELECT * FROM product WHERE category IN ('$ids')");
于 2013-03-01T08:59:44.550 回答
1

除了过时的mysql_* 函数sql 注入...

$result = mysql_query("SELECT * FROM product where category in ('$list_of_ids')");

于 2013-03-01T08:59:48.113 回答