Fatal error: Call to undefined function sqlsrv_has_rows() in D:\wwwroot\gosense\mssql.php on line 18
源代码如下:
<?php
$mysqlHost_ms = "localhost"; //你的MSSQL主机
$connectionInfo = array( "UID"=>"sa",
                         "PWD"=>"123459",
                         "Database"=>"3737-cc");
$conn=sqlsrv_connect($mysqlHost_ms, $connectionInfo);
              if(! $conn){                      echo "o no!!!!!";                      die( print_r( sqlsrv_errors(), true));             }
   
$sql = "SELECT id FROM xy"; 
$data = sqlsrv_query($conn, $sql);     $row_count = sqlsrv_has_rows( $data );
   
   if ($row_count === false)
      echo "\nerror\n";
   else if ($row_count >=0)
      echo "\n$row_count\n";
?>

解决方案 »

  1.   

    PHP没有加载sqlsrv模块
    加载方法,参看:
    http://msdn.microsoft.com/zh-cn/library/cc296203(v=SQL.90).aspx
      

  2.   

    找不到这个函数sqlsrv_has_rows()楼上的方法应该可以解决
      

  3.   


    我在程序上加上这个:dl('php_sqlsrv_ts.dll');之后提示以下错误:
    Warning: Module 'sqlsrv' already loaded in Unknown on line 0Fatal error: Call to undefined function sqlsrv_has_rows() in D:\wwwroot\gosense\mssql.php on line 18
      

  4.   

    去sqlsrv的网站对着手册重新安装一下,然后用phpinfo查看sqlsrv加载有没有成功。
      

  5.   

    终于搞明白了。原来我用的驱动'php_sqlsrv_ts.dll' for mssql 2005是1.0是不支持sqlsrv_has_rows() 函数的,而1.1才支持sqlsrv_has_rows()。