铁血霸主 2007-8-1 22:11
php调用存储过程返回结果集,解决can't return ...错误的方法
<p><span class="t18"><p>需要php调用存储过程,返回一个结果集,发现很困难,找了半天,终于在老外的论坛上找到解决方案,这里本地化一下。</p><p>关键就是两点</p><p>1)define('CLIENT_MULTI_RESULTS', 131072);</p><p>2)$link = mysql_connect("127.0.0.1", "root", "",1,CLIENT_MULTI_RESULTS) or die("Could not connect: ".mysql_error());</p><p><br>下面就可以正常使用了,以下是例子程序。</p><p> </p><p><?php<br> define('CLIENT_MULTI_RESULTS', 131072);</p><p> $link = mysql_connect("127.0.0.1", "root", "",1,CLIENT_MULTI_RESULTS) or die("Could not connect: ".mysql_error());<br> mysql_select_db("vs") or die("Could not select database");<br>?></p><p> <?php<br> $result = mysql_query("call get_news_from_class_id(2)") or die("Query failed:" .mysql_error());<br> while($row = mysql_fetch_array($result, MYSQL_ASSOC))<br> {<br> $line = '<tr><td><a target = _blank href=http://www.phpchina.com/\''.$row["url"].'\'>'.$row["title"].'('.$row["page_time"].')'.'</a></td></t<br>r>';<br> echo $line;<br> printf("\n");</p><p> }<br> mysql_free_result($result);<br> ?> </p><p> </p><p><?php<br> mysql_close($link);<br>?></p></span><!--正文内容结束--><div>