答えを得た! codeigniterのmysqlドライバーには、ストアドプロシージャを処理するバグがあるようです。
config / databaseでドライバーをmysqlからmysqliに変更しました 変更してファイル
$db['default']['dbdriver'] = 'mysql';
に
$db['default']['dbdriver'] = 'mysqli';
system / database / drivers / mysqli / mysqli_result.phpを変更したことを投稿します ファイルを追加し、以下の機能を追加しました
function next_result()
{
if (is_object($this->conn_id))
{
return mysqli_next_result($this->conn_id);
}
}
モデルを以下のように変更しました
$db = $this->load->database('mailbox',TRUE);
$qry_res = $db->query('Call circle_pending_p()');
echo $db->_error_message();
$res = $qry_res->result_array();
$qry_res->next_result();
$qry_res->free_result();
if (count($res) > 0) {
return $res;
} else {
return 0;
}
これで問題は解決しました!