php调用存储过程返回结果集,解决can't return a result set in the given context错误的方法

王朝php·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

需要php调用存储过程,返回一个结果集,发现很困难,找了半天,终于在老外的论坛上找到解决方案,这里本地化一下。

关键就是两点

1)define('CLIENT_MULTI_RESULTS', 131072);

2)$link = mysql_connect("127.0.0.1", "root", "",1,CLIENT_MULTI_RESULTS) or die("Could not connect: ".mysql_error());

下面就可以正常使用了,以下是例子程序。

<?php

define('CLIENT_MULTI_RESULTS', 131072);

$link = mysql_connect("127.0.0.1", "root", "",1,CLIENT_MULTI_RESULTS) or die("Could not connect: ".mysql_error());

mysql_select_db("vs") or die("Could not select database");

?>

<?php

$result = mysql_query("call get_news_from_class_id(2)") or die("Query failed:" .mysql_error());

while($row = mysql_fetch_array($result, MYSQL_ASSOC))

{

$line = '<tr><td><a target = _blank href=\''.$row["url"].'\'>'.$row["title"].'('.$row["page_time"].')'.'</a></td></t

r>';

echo $line;

printf("\n");

}

mysql_free_result($result);

?>

<?php

mysql_close($link);

?>

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航