CakePHP重定向错误

时间:2012-07-25 21:19:13

标签: cakephp redirect

我从strange error数据库的电话号码中收到了query()。这通常不会有问题,除了似乎查询调用将我重定向到500服务器错误页面而不执行我的其余代码。

无论错误如何,这个PHP都是在AJAX调用期间执行的,这意味着我无法返回包含错误的格式正确的json字符串,因为CakePHP正在重定向。

解决方法是在发生错误时解析来自服务器的大HTML响应,并使用javascript找出出错的地方并正确显示它,但我宁愿从后端返回一个小的json字符串与我已有的代码很好地配合。

这是我的电话:

$this->FileUpload->query('exec sproc_runjob_ProcessTests', false);

非常感谢任何帮助。提前谢谢!

1 个答案:

答案 0 :(得分:1)

正如bfavaretto上面提到的那样,正确的答案是在try catch中包围查询行。

以下是我使用的代码:

try{
    $this->dbParent->FileUpload->query('exec sproc_runjob_ProcessTests', false);
} catch(PDOException $e){
    if($e['errorInfo'][0] == 42000 && $e['errorInfo'][1] == 22022)
        return array('error' => 'sproc_blocked');
}
return array('success'=>true);