警告:mysql_data_seek():偏移量 1 对于 MySQL 结果索引 5 无效(或者查询数据未缓冲)


Warning: mysql_data_seek(): Offset 1 is invalid for MySQL result index 5 (or the query data is unbuffered)

请任何人帮忙。我正在尝试执行以下php代码:

   $sql="SELECT * FROM vendors WHERE vuid=".$uid."AND status="."'c'";
   $sql=$sql . "LIMIT 0, 10"; 
   $result=mysql_query($sql);
   $numrows=mysql_num_rows($result);        
   for($i=0;$i<$numrows;$i++)
   {
    if($numrows>0) 
    {
    mysql_data_seek($result,$i);
}

我收到以下错误警告:mysql_data_seek():偏移量 1 对于 MySQL 结果索引 5 无效(或者查询数据未缓冲)。 $numrows为 2,因此mysql_data_seek的范围有效。

提前致谢

如果结果集为空mysql_data_seek() 将失败并显示E_WARNING。我认为这种情况发生在您的情况下,因为您在调用 mysql_data_seek() 之前没有检查结果集是否为空。

始终检查结果中的行数,如果它们为>=1,那么您可以安全地调用 mysql_data_seek()

if ( mysql_num_rows ( $sql ) > 0 )
{
    // do stuff, you have some results
}
else
{
    // no results to process
}