SqlHelper::exectue_dql1 是怎么写的了
看形式,成功返回的是查询结果资源,那么除非查询失败,一般不会返回空值
如果从资源中读不到数据,那么 $b 就是未定义的了

解决方案 »

  1.   

    $sqlhelper->exectue_dql1($sql); 这个返回是什么?不过打印print_r($res); 可以方便找到问题。提示$b不存在是没有满足以下条件
        if($row=mysql_fetch_row($res)){
            $b=$row[0];
        }
    所以$b 是未定义。改成这样就可以避免$b不存在的错误。$sql="select disnum from disease where disname='$disname'";
    $sqlhelper=new SqlHelper();
    $res=$sqlhelper->exectue_dql1($sql);
    if(!empty($res)){
        $b = 0;   // 先设置一个默认值。
        if($row=mysql_fetch_row($res)){
            $b=$row[0];
        }
        mysql_free_result($res);
        $sqlhelper->close_connect();
        return $b;
    }else{
        return 0;
    }
      

  2.   

    谢了,问题已经解决了在判断那块的函数让我换了不用empty();用了一个mysql_num_row();这样就可以出结果了