CodeIgniter 3: Ошибка № 2014 Команды не синхронизированы; Вы не можете запустить эту команду сейчас

Я получаю ошибку MySQL 2014 года каждый раз, когда вызываю 2-ю хранимую процедуру (insert_staff_logs) в CodeIgniter 3.

Вот полная сгенерированная ошибка:

Ошибка базы данных Произошла

Номер ошибки: 2014

Команды не синхронизированы; Вы не можете запустить эту команду сейчас

CALL insert_staff_logs (‘1000’, now (), ‘LOGIN’)

Имя файла: C: /wamp/www/db2/system/database/DB_driver.php

Номер строки: +691

Вот моя модель:

class Login_model extends CI_Model
{
public function login($data)
{
$query = $this->db->query("CALL login_auth('".$data['username']."','".$data['password']."')");
if($query->num_rows() == 1)
{
return $query->result();
}else
{
return false;
}
}

public function staff_logs($data)
{
$query = $this->db->query("CALL insert_staff_logs('".$data."',now(),'LOGIN')");
}
}

И вот моя хранимая процедура:

DELIMITER $$

CREATE
/*[DEFINER = { user | CURRENT_USER }]*/
PROCEDURE `must_empc_db`.`insert_staff_logs`(id VARCHAR(10),s VARCHAR(50))

BEGIN
INSERT INTO tblstafflogs(`staffID`,`timestamp`,`session`)
VALUES(id,NOW(),s);
END$$

DELIMITER ;

У кого-нибудь есть решение по этому поводу? Ваш ответ очень ценится. Спасибо!

1

Решение

class Login_model extends CI_Model
{
public function login($data)
{
if (mysqli_more_results($this->db->conn_id)) {
mysqli_next_result($this->db->conn_id);
}
$query = $this->db>query("CALLlogin_auth('".$data['username']."','".$data['password']."')");
if($query->num_rows() == 1)
{
return $query->result();
}
else
{
return false;
}
}

public function staff_logs($data)
{
if (mysqli_more_results($this->db->conn_id)) {
mysqli_next_result($this->db->conn_id);
}
$query = $this->db->query("CALL insert_staff_logs('".$data."',now(),'LOGIN')");
}
}
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector