我有个很奇怪的问题。
我正在向服务器发出一个ajax调用,将表单详细信息发送到一个php脚本。然后使用PDO将值插入到数据库中。Firebug返回500错误,但值已插入到数据库中。我在错误日志中找不到任何东西(我在apache错误日志和mysql错误日志中查找)
我运行的是centos 6,php 5.3.3和mysql 5.1。
我查看了php sysinfo,在apache配置中看到了以下内容:
'--disable-pdo‘
不知道这是不是有什么关系,但是嘿..
下面是我使用的代码:
try {
$conn = new PDO('mysql:dbname=dbname;host=localhost', 'username', 'password');
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$query = $conn->prepare('INSERT INTO sometable (naam, beroep, telefoon, emailadres, bericht, ismedical)
VALUES(:naam, :beroep, :telefoon, :emailadres, :bericht, :ismedical)');
$query->execute(array(
':naam' => $naam,
':beroep' => $beroep,
':telefoon' => $telefoon,
':emailadres' => $emailadres,
':bericht' => $bericht,
':ismedical' => $ismedical
));
echo $stmt->rowCount(); // should be 1
} catch (PDOException $e) {
echo 'ERROR: ' . $e->getMessage();
}发布于 2012-11-25 03:28:46
默认情况下,PDO使用无缓冲模式,这会降低页面加载时间的延迟,这通常是您想要的。权衡的是,在获取整个数据集之前,rowCount()不会返回有效信息。
https://stackoverflow.com/questions/13544430
复制相似问题