Używam najnowszego kreatora kodów i próbuję wywołać procedurę przechowywaną z mojego modelu. Również używam mysqli jako sterownika bazy danych. Teraz mam błąd, gdy wywołuję dwie procedury przechowywane. Poniżej przedstawiono błąd:Wywoływanie procedury składowanej w codeigniter
Error Number: 2014
Commands out of sync; you can't run this command now
call uspTest();
Filename: E:\wamp\www\reonomy-dev\system\database\DB_driver.php
Line Number: 330
Należy pamiętać, że po wywołaniu pojedynczej procedury przechowywanej działa poprawnie. Oto kod dla modelu.
class Menus_model extends CI_Model {
function __construct()
{
parent::__construct();
}
public function getMenus()
{
$query = $this->db->query("call uspGetMenus()");
return $query->result();
}
public function getSubMenus()
{
$query = $this->db->query("call uspTest()");
return $query->result();
}
}
Oto kod z kontrolerem
class MYHQ extends CI_Controller {
public function __construct()
{
parent::__construct();
$this->load->model('menus_model');
}
public function index()
{
$menu = $this->menus_model->getMenus();
$submenu = $this->menus_model->getSubMenus();
}
}
Czy istnieje rozwiązanie bez hacking rdzeń CodeIgniter ??
Dzięki Veggen, teraz wydaje się, że nie ma sposobu, aby używać go bez hacking rdzeń codeigniter? –
Cóż, poza zamknięciem i ponownym otwarciem połączenia DB między połączeniami, nie wydaje się, aby było inaczej. Ale jeśli chodzi o jakiekolwiek kondolencje, potrzebna zmiana jest bardzo mała. Używam takiego hacka do mojego obecnego projektu :( – kaqqao
O.K. Chciałbym tylko potwierdzić. Anyways, Thanks i Nice work;) –