【发布时间】:2016-01-30 17:53:25
【问题描述】:
我有一个查询,它给了我完美的结果。但我需要将 mysql 错误(如果有)发送到 UI。所以特意把列名改成blah_text。
$qID = 13
$this->db->select('id AS optionID, blah_text AS option, is_correct AS isCorrect');
$oQuery = $this->db->get_where('xq_options', array('question_id' => $qID));
if($oQuery){
$qnaArray['options'] = $oQuery->result_array();
}
else{
//$qnaArray['error'] = $this->db->_error_message();
echo "Error: " . $this->db->_error_message();
}
所有获取都是Error:
我尝试使用原生 mysqli 函数 mysqli_error($oQuery); 但相同的 O/P
注意:我在数据库配置文件中设置了'db_debug' => FALSE。如果我将其设置为 TRUE,我会收到 CI 错误消息
Error Number: 1054 Unknown column 'blah_text' in 'field list' SELECT id AS optionID, blah_text AS option, is_correct AS isCorrect
如何捕获变量中的 sql 错误并将其发送到 UI,例如 $qnaArray['error']
编辑:'db_debug' 当前设置为 FALSE。我希望将错误消息设置在变量中。没有在屏幕上回显。
【问题讨论】:
-
如果您在使用
'db_debug'=> TRUE时遇到错误。有什么问题? -
@SagarKhatri 我在 CI 样式的页面上遇到错误。我需要将它作为 webservice json 发送到 UI,以便我可以正确显示。
-
哪些客户端将使用您的 WebService? Android、iPhone 还是通过 JS 在前端?
-
@SagarKhatri iPad 和 JS
-
我认为剥离标签并获取消息文本就足够了。你可以使用
$qnaArray['error'] = strip_tags($this->db->_error_message());。
标签: php mysql codeigniter mysqli