使用PDO执行SQL,导致的连接被重置

sky3hao 发布于 2012/03/29 13:11
阅读 910
收藏 0

用PDO连接数据库是没问题的:



$dsn = "mysql:host=localhost;dbname=example";

try {

    $dbo = new PDO($dsn, 'root', '123');

} catch(Exception $e) {

    die($e->getMessage());

}

预处理和绑定也没问题:


$sth = $dbo->prepare('SELECT id, title, desc

    FROM events

    WHERE id < ?');

$sth->bindParam(1, $calories, PDO::PARAM_INT);

问题在执行上:


$sth->execute();
页面直接死掉,提示连接被重置

直接执行也会出现同样的问题:


foreach ($dbo->query('select * from events') as $row) { ...}


用原始的方法连接和查询是没问题的.这是PDO执行SQL语句造成的,纠结了两天了.请高手帮帮我啊.....


加载中
0
Liuxd
Liuxd
捕获异常啊,看看异常里的详细信息是什么。
0
sky3hao
sky3hao
页面被重置了.怎么捕获? 没用
0
opal
opal
在命令行下运行,不要在浏览器上运行
0
d
deer

把你代碼複製到本地,完全沒問題

 

boolean true 
0
mark35
mark35

应该不是PDO的问题。

另,代码可以这样简单些

$sth = $dbo->prepare('SELECT id, title, desc
	    FROM events
	    WHERE id < ?');

$res = $sth->execute(array($id,));
foreach ($res as $row) {
....
}

返回顶部
顶部