mysql_num_rows()参数无效

时间:2009-07-22 05:01:43

标签: php mysql

  

警告:mysql_num_rows():提供   参数不是有效的MySQL结果   资源   /home/ango/public_html/ficha/findUser.php   在线201

这是代码:

$query = mysql_query("SELECT ango_turnos.planilla.fecha_turno, ango_turnos.planilla.cod_estado, ango_personas.dominio_interno.* FROM ango_turnos.planilla RIGHT OUTER JOIN ango_turnos.reserva ON ango_turnos.reserva.id_turno = ango_turnos.planilla.id_turno LEFT OUTER JOIN ango_turnos.paciente ON ango_turnos.reserva.id_reserva = ango_turnos.paciente.id_reserva LEFT OUTER JOIN ango_personas.dominio_interno ON ango_turnos.paciente.id_persona = ango_personas.dominio_interno.id_persona LEFT OUTER JOIN ango_turnos.horario_medico ON ango_turnos.planilla.id_horario = ango_turnos.horario_medico.id_horario");

if(mysql_num_rows($query)>0){
    while($row = mysql_fetch_array($query)){
        //echo some stuff from $row
    }
}

没有涉及与数据库连接的警告或错误。这是我得到的唯一警告。 SQL查询工作正常并在PHPMyAdmin中返回4行,所以我不知道问题是什么。

2 个答案:

答案 0 :(得分:4)

您应该在mysql_query()之后添加错误检查以查看出现了什么问题:

if (!$query) {
    die('Invalid query: ' . mysql_error());
}

答案 1 :(得分:2)

执行SQL查询时可能出现错误。

您可以使用msqyl_errnomysql_error检查该内容。

(作为旁注:当你在开发机器上时,输出错误信息很好,但是一旦你在生产服务器上就不应该这样做:它应该被记录到文件中;所以不要不要忘记输入一些配置选项,或者像这样的东西)

作为另一个侧节点:“query”是您给mysql_query的SQL字符串;不是该函数的结果,因此您的$query变量应该有另一个名称,以便将来更容易理解代码。