-3
我目前正在开发一个使用PHP和MySQL的审计Web应用程序。该应用程序是使用XAMPP在本地开发的,没有任何问题。但是,将其部署到我的主机服务器后,使用PDO访问数据库的一个php文件开始生成500内部服务器错误。经过一些调试后,发现fetch()函数是源代码。PDostatement :: fetch导致500内部服务器错误
// works
$sql="INSERT INTO subsection (section_id) VALUES (:section_id)";
$query=$db->prepare($sql);
$query->execute(array(':section_id'=>$section_id));
// doesn't work
$sql="SELECT audit_id FROM audit
WHERE audit_id < :audit_id
ORDER BY audit_id DESC LIMIT 1";
$query=$db->prepare($sql);
$query->execute(array(':audit_id'=>$audit_id));
$prevAuditId=$query->fetch()[0]; // <-- error generated here
phpinfo()显示主机的服务器正在运行PHP版本5.33并启用了PDO支持。总之,Web应用程序可以在XAMPP安装中本地工作,并且托管的PDO除了获取方法()之外似乎可以正常工作。
任何关于这个问题的澄清将不胜感激。
你怎么知道'$ query'运行成功?换一种说法 - 你的错误检查逻辑在哪里? –
500状态码意味着您的脚本出现错误,但您尚未配置PHP以显示错误消息。当然,您不希望在生产服务器中启用该功能,但需要确保记录了错误,然后查看日志以获取详细信息。其他一切只是猜测。 –