Php 如何使用多个语句进行复选框查询?

Php 如何使用多个语句进行复选框查询?,php,mysql,Php,Mysql,我的mysql和php技能有限。 我有一个歌曲数据库,有一个流派专栏。 我正在尝试使用复选框进行查询,使用下面的帖子: HTML <html> <span><input type="checkbox" name="check_list[]" value="1">Rock</span> <span><input type="checkbox" name="check_list[]" value="2">Jazz</

我的mysql和php技能有限。 我有一个歌曲数据库,有一个流派专栏。 我正在尝试使用复选框进行查询,使用下面的帖子:

HTML

 <html>
 <span><input type="checkbox" name="check_list[]" value="1">Rock</span>
 <span><input type="checkbox" name="check_list[]" value="2">Jazz</span>... (other 10 genres)

  <?php
  $genre = implode(' or ', (array)$_POST['check_list'.$i]);
  ?>   
  </html>
结果是10首随机歌曲(来自两种选定类型)。我需要的是每种检查类型10首(20首歌,每首10首)。可能吗

编辑: 结果应该是(如果选择摇滚和爵士乐),先是10摇滚,然后是10爵士乐,而不是混合

Thx请使用下面的代码

  $genre = implode(' , ', (array)$_POST['check_list'.$i]);
 $sql = mysql_query("select * from songs where genre_id IN ($genre) ORDER BY RAND() limit 10")

仍然在打印10个混合结果。实现这一点的一种方法是使用Php重新排列从查询返回中得到的答案。另一种方法是在for-each循环中运行查询,这是不明智的,也是不推荐的。
  $genre = implode(' , ', (array)$_POST['check_list'.$i]);
 $sql = mysql_query("select * from songs where genre_id IN ($genre) ORDER BY RAND() limit 10")