连接每次都没问题,每次都有正常返回值
出错的是提交查询mysql_quert("..."),出错时没有任何返回值,正常时返回的也是正常值

解决方案 »

  1.   

    那你在出错的时候记录一下sql语句
      

  2.   

    有可能是有时候你的SQL查询结果中有记录,则没有提示,如果没有记录的话就出现错误,与可能与之相反.你试试看是不是.
      

  3.   

    你注意下 拼写 mysql_quert("..."),
    正确是的是 mysql_query() 的英语不太好
      

  4.   

    那是我打错了,文件中是query那个查询时同一个查询,不存在有时有记录有时没有的情况,况且没有数据时什么都不显示, 而这里却是出错。出错时显示:warning: Supplied argument is not a valid MySQL result resource in .../.../function.php on line 23那个文件23行是$result=mysql_fetch_row($db);这个错误是由于mysql_query()没有任何返回值(包括查询出错的返回值,正常情况返回int值)
    但这不是主要问题,问题在于这个错误是时有时无的,而php文件和数据库都是不变的。望大家继续讨论,谢谢
      

  5.   

    检查出错时的条件串
    因为函数是共用的。所以不能说函数有问题,只能说函数不完备。
    错误:
    warning: Supplied argument is not a valid MySQL result resource in .../.../function.php on line 23
    表示mysql_query的返回值无效,而造成查询失败的原因是查询串有问题

    $rs = mysql_query($stl) or die(mysql_error());
    就能看到问题所在在设计程序时,应加上排错语句。通常供交流的代码为简化起见是不加的。
    if($rs = @mysql_query($stl)) {
      //正常时的操作
    }else {
      //出错时的操作
    }
      

  6.   

    引用:
    /******************************引用*****************************************/
    检查出错时的条件串
    因为函数是共用的。所以不能说函数有问题,只能说函数不完备。
    错误:
    warning: Supplied argument is not a valid MySQL result resource in .../.../function.php on line 23
    表示mysql_query的返回值无效,而造成查询失败的原因是查询串有问题

    $rs = mysql_query($stl) or die(mysql_error());
    就能看到问题所在在设计程序时,应加上排错语句。通常供交流的代码为简化起见是不加的。
    if($rs = @mysql_query($stl)) {
      //正常时的操作
    }else {
      //出错时的操作
    }
    /******************************引用************************************/
    斑竹说的很对,我来说具体点:
    我以前遇到过这样的问题:
    你的$sql = "****";sql语句中肯定用到了参数,
    由于参数为空(程序不健壮造成的!)
    造成:$query = mysql_query($sql) 这一句没能成功执行!
    所以才回出现你发现的错误!
    这样说有点粗糙,可是你去打印参数,你会发现,
    问题多数出在参数上!
      

  7.   

    不可能,再仔细检查一下SQL命令.
      

  8.   

    解决了,我用or die(mysql_error()),显示没有选择数据库,我换用mysql_db_query()提交查询,没出错。但我还是想不明白,为什么有时还能用呢?
    不管如何谢谢各位的热心帮助!