我使用Zend Framework。代码Zend Framework mysql查询返回服务器500错误
$this->_db->query("INSERT INTO blog SET ....")
返回500错误。但如果我将其替换为
mysql_query("INSERT INTO blog SET ....")
一切都好。什么可能是错误的?
我使用Zend Framework。代码Zend Framework mysql查询返回服务器500错误
$this->_db->query("INSERT INTO blog SET ....")
返回500错误。但如果我将其替换为
mysql_query("INSERT INTO blog SET ....")
一切都好。什么可能是错误的?
我认为你的SQL语法是错误的。正确的语法:
INSERT INTO table (fields) VALUES (values)
编辑:哦,对不起,只是读取您的mysql_query()正在使用相同的SQL。正如别人推荐,我建议检查日志。
您确定$this->_db
是您期望的吗?
如果您使用的是默认ErrorController,设置
resources.frontController.params.displayExceptions = 1
应该给你错误的回溯。另外,如果它确实只是生成异常的查询,那么可以将它封装在try/catch中并查看异常。
try {
$this->_db->query("INSERT INTO blog SET ....");
} catch(Exception $e) {
echo $e->getMessage();
}
十分肯定你的$this->_db
不是Zend_Db_Adapter_Abstract的实例:)更可能是NULL;)
我有同样的问题与Zend的select语句。只需在$ this-> fetchRow($ select)行周围添加try..catch块即可解决问题。奇怪的是,没有发现任何异常。
错误日志中的任何内容? – JohnP 2011-06-02 14:29:50
没什么,但它是共享主机,所以可能不是所有显示的错误。我应该在localhost上添加一切都很好! – 2011-06-02 14:31:32
甚至共享主机应该产生一些东西。甚至没有在Apache日志? – JohnP 2011-06-02 14:34:10