$t = implode(',', $q);
$query = $db->query("SELECT * FROM mytable WHERE id in ($t)");看看。

解决方案 »

  1.   

    $q= array(1,2,3,4,5,6,a,b,c,d,e);
    你这个数组能成立吗?字母算什么?
    ----------
    SELECT * FROM mytable WHERE id in (1,2,3,4,5,6,a,b,c,d,e);
    你觉得这个SQL语句能通过吗?至少应该是
    SELECT * FROM mytable WHERE id in (1,2,3,4,5,6,'a','b','c','d','e');
    $q= array(1,2,3,4,5,6,'a','b','c','d','e');
    那么应该是
    $t = join("','", $q);
    $query = $db->query("SELECT * FROM mytable WHERE id in ('$t')");
      

  2.   

    哦.抱歉,当时没考虑~~~呵呵,我是PHP初学者.那如果:
    $q= array(1,2,3,4,5,6,7,8,9);用以下方法查询出来的内容只有$t的最后一个元素的记录。即$t=(1,2,3,4,5,6,7,8,9);只能查出
    "9"的记录。而我需要查的是1,2,3,4,5,6,7,8,9共9条记录。应该怎么做?$t = join(',', $q);
    $query = $db->query("SELECT * FROM mytable WHERE id in ($t)");
      

  3.   

    你把你整个程序写出来吧!
    $t = join(',', $q);
    $query = $db->query("SELECT * FROM mytable WHERE id in ($t)");
    这个是可以做到是,应该是你别的地放错了
      

  4.   

    $q= '"1","2","3","4","5","6","a","b","c","d","e"';
    $query = $db->query("SELECT * FROM test WHERE id in ($q)");简单点儿吧。
      

  5.   

    首先,你定义的数组是有问题的。
    用你的思路重新修改的一个:
    $array= array('1','2','3','4','5','6','a','b','c','d','e');
    $t = join("','", $array);
    $query = mysql_query("SELECT * FROM test WHERE id in ('".$t."')");
      

  6.   

    我是PHP初学者.那如果:
    $q= array(1,2,3,4,5,6,7,8,9);用以下方法查询出来的内容只有$t的最后一个元素的记录。即$t=(1,2,3,4,5,6,7,8,9);只能查出"9"的记录。而我需要查的是1,2,3,4,5,6,7,8,9共9条记录。应该怎么做?$t = join(',', $q);
    $query = $db->query("SELECT * FROM mytable WHERE id in ($t)");