При подключении к API я получаю вот эту ошибку Notice: Undefined index: api_token in /catalog/controller/startup/session.php on line 8
Для исправления ошибок разработчиков придётся как обычно менять код в файлах.
1. Идём в файл /catalog/controller/startup/session.php и ищем строку
и перед этой строкой надо добавить:
2. Идём в файл catalog/model/account/api.php и ищем строку:
в этой строке также допущена ошибка пропущен and. Ниже я указал правильную строку, просто замените на неё:
3. Идём в файл /catalog/controller/api/login.php и ищем там строку :
И тут разработчики чуток напутали. Правильный синтаксис такой :
Для исправления ошибок разработчиков придётся как обычно менять код в файлах.
1. Идём в файл /catalog/controller/startup/session.php и ищем строку
PHP:
$this->db->query(“DELETE FROM `” . DB_PREFIX . “api_session` WHERE TIMESTAMPADD(HOUR, 1, date_modified) < NOW()”);
и перед этой строкой надо добавить:
PHP:
if (!isset($this->request->get[‘api_token’])) { $this->request->get[‘api_token’] = ”; }
2. Идём в файл catalog/model/account/api.php и ищем строку:
PHP:
$query = $this->db->query(“SELECT * FROM `” . DB_PREFIX . “api` WHERE `username` = ‘” . $this->db->escape($username) . “‘ AND `key` = ‘” . $this->db->escape($key) . “‘ AND status = ‘1’”);
в этой строке также допущена ошибка пропущен and. Ниже я указал правильную строку, просто замените на неё:
PHP:
$query = $this->db->query("SELECT * FROM `" . DB_PREFIX . "api` WHERE `username` = '" . $this->db->escape($username) . "' AND `key` = '" . $this->db->escape($key) . "' AND status = '1'");
3. Идём в файл /catalog/controller/api/login.php и ищем там строку :
Код:
$session = new Session($config->get('session_engine'), $registry);
И тут разработчики чуток напутали. Правильный синтаксис такой :
PHP:
$session = new Session($this->config->get('session_engine'), $this->registry);