php调用mysql存储过程返回结果集的处理
2011-09-05 20:14
886 查看
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,不知道是开发人员手误还是咋的.
相关文章推荐
- php调用mysql存储过程返回结果集的处理
- php调用mysql存储过程返回结果集
- PHP调用MySQL存储过程并返回值的方法
- EF6调用存储过程,返回多个结果集处理
- php PDO调用多个结果集的mysql存储过程
- PHP调用MySQL存储过程并返回值的方法
- php调用mysql存储过程返回多个结果集的处理
- mysql调用存储过程无法返回结果集的问题
- MySQL 存储过程调用 返回结果集 实现分页
- php pdo调用SQLServer存储过程无法获取返回结果
- Java 调用 MySQL 存储过程并获得返回值
- Oracle存储过程中执行查询返回的结果集,并使用java代码调用【转】
- 存储过程返回多个结果集处理
- PHP调用MYSQL存储过程实例
- 最完整的:JAVA调用ORACLE的存储过程、函数的返回结果集例子
- Python简单调用MySQL存储过程并获得返回值的方法
- Java调用MySQL存储过程并获得返回值的方法
- 返回结果集的存储过程 及调用sys_refcursor--结果集
- PHP调用MYSQL存储过程实例