php调用存储过程返回结果集,解决can't return a result set in the given context错误的方法需要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);
?>
新闻热点
疑难解答