解决方案 »

  1.   

    我刚开始学习PHP,请多指教。
      

  2.   

    $str = "0213,0214,0318,0419,0196";
    $exp = explode(',', $str);
    foreach ($exp as $value) {
    $sql = "SELECT count(*) count FROM test WHERE bh = '".$value."'";
    $query = mysql_query($sql);
    $result = mysql_fetch_row($query);
    if($result['count'] > 0){//存在
          echo '存在';
    }else{
    echo '不存在';
    }
    }
      

  3.   

    bh字段是放什么的,多个数还是一个数?
    如果是放一个数的,microlab2009已经给出答案了。
      

  4.   


    $str = '0213,0214,0318,0419,0196';
    $arr = explode($str,',');
    foreach($arr as $key => $value){
       $sql = sprintf('select count(*) from test where bh=%s',$value);
       $query = mysql_query($sql);
       $r = mysql_fetch_rows($query);
       if($r['count'] > 0) 
            echo "$value存在";
       else 
           echo "$value不存在";
    }
      

  5.   


    $str = '0213,0214,0318,0419,0196';
    $arr = explode($str,',');
    foreach($arr as $key => $value){
       $sql = sprintf('select count(*) from test where bh="%s"',$value);
       $query = mysql_query($sql);
       $r = mysql_fetch_rows($query);
       if($r['count'] > 0) 
            echo "$value存在";
       else 
           echo "$value不存在";
    }
      

  6.   

    表test 结构:
    id       pa         bh
    1       11        0213
    2       12         0214
    3       13       0318
    4       14         0419 多个数
      

  7.   

    另外一种方法,不用foreach扫库,用PHP处理。
    $link = mysql_connect('localhost', 'user', 'passwd');
    mysql_select_db("dbname");
    //mysql_query("SET SESSION group_concat_max_len=2048");//group_concat有长度限制,也可以在my.ini中设置$bhs = '0213,0214,0318,0419,0196';//有字符串需要处理下。看IN
    $result = mysql_query("SELECT GROUP_CONCAT(bh) AS bhs FROM sipa_users WHERE user_id IN ({$bhs})");
    $exists = mysql_fetch_object($result)->bhs;
    var_dump($exists);//存在的$noexists = array_diff(explode(',',$bhs),explode(',',$exists));//不存在的取下差集
    var_dump($noexists);
      

  8.   

    那之前给的方法可行啊 报什么错误了吗?根据您给我的方法,我稍作改动成:$bmh= "0213,0214,0318,0419,0196";
    $exp = explode(',', $bmh);
    foreach ($exp as $value){
    $sql=mysql_query("select * from xs where bh='".$value."'",$conn);
      $num= mysql_num_rows($sql); 
      if(!$num){
            echo $value . ' 不存在 ';
        }现在问题是 如果全部存在的话  怎么分别显示出来对应表test bh字段的id和pa数据 需要while 吗?