GaRY's Blog

Beginning is always beautiful

php调用mysql存储过程返回结果集的处理

最近开发一个项目,用到这个,记一下:

关键就是两点

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

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

 1 <?php
 2     define('CLIENT_MULTI_RESULTS', 131072);
 3 
 4     $link = mysql_connect("127.0.0.1", "root", "",1,CLIENT_MULTI_RESULTS) or die("Could not connect: ".mysql_error());
 5     mysql_select_db("vs") or die("Could not select database");
 6 ?>
 7 
 8 <?php
 9         $result = mysql_query("call get_news_from_class_id(2)") or die("Query failed:" .mysql_error());
10         while($row = mysql_fetch_array($result, MYSQL_ASSOC))
11         {
12                 $line = '<tr><td><a target = _blank href=\''.$row["url"].'\'>'.$row["title"].'('.$row["page_time"].')'.'</a></td></tr>';
14                 echo $line;
15                 printf("\n");
16 
17         }
18         mysql_free_result($result);
19 ?>
20 
21 <?php
22     mysql_close($link);
23 ?>

另外说个事,因为最近用的是FleaPHP这个框架进行开发的.设置了DSN的options发现没有作用,debug了一下发现问题出在FLEA::parseDSN函数中,代码如下:

1    function parseDSN($dsn)
2     {
3         if (is_array($dsn)) {
4             $dsn['host'= isset($dsn['host']) ? $dsn['host': '';
5             $dsn['port'= isset($dsn['port']) ? $dsn['port': '';
6             $dsn['login'= isset($dsn['login']) ? $dsn['login': '';
7             $dsn['password'= isset($dsn['password']) ? $dsn['password': '';
8             $dsn['database'= isset($dsn['database']) ? $dsn['database': '';
9             $dsn['options'= isset($dsn['options']) ? serialize($dsn['options']) : '';

这里多加了个serialize,不知道是开发人员手误还是咋的.

posted on 2008-01-29 15:15 wofeiwo 阅读(9534) 评论(2)  编辑 收藏 引用 网摘 所属分类: Tips

评论

# re: php调用mysql存储过程返回结果集的处理 2008-02-23 15:12 156544632

你写的代码真难看!
看你的blog,让人感觉你精通所有操作系统,一切windows,nux内核,所有地球上已知编程语言,所有计算机有关的一切技术。如果有机会,我到要看看你是神仙还是妖怪,你有那么牛B吗?  回复  更多评论   

# re: php调用mysql存储过程返回结果集的处理 2008-02-26 16:49 wofeiwo

@156544632
我没这么牛逼,我也不会那么多内核,那么多编程语言
当然,如果你也懂这些,应该看得出来,我写的大多数很浅显.真正的牛人是不噱一顾的.
所以,我其实根本不懂多少.纯粹凭兴趣写点.恰恰,我兴趣就是有那么点广泛而已.  回复  更多评论   


只有注册用户登录后才能发表评论。
网站导航:

导航

<2008年2月>
272829303112
3456789
10111213141516
17181920212223
2425262728291
2345678

统计

留言簿(10)

随笔分类(90)

随笔档案(61)

搜索

最新随笔

最新评论