Тема 1.7 - обновление выполнено успешно, но возвращает ошибку на переднем конце

Тема 1.7 - обновление выполнено успешно, но возвращает ошибку на переднем конце

26.10.2018 11:18:51 Просмотров 49 Источник

Я пытаюсь выполнить SQL-запрос, но был возвращен с ошибкой ниже:

У вас есть ошибка в синтаксисе SQL; проверьте руководство, которое соответствует вашей версии сервера MariaDB для правильного синтаксиса, чтобы использовать рядом " в строке 1

$option = Tools::getValue('option');

$sql = 'INSERT INTO `'._DB_PREFIX_.'slot` VALUES ('.(int)$params['cart']->id.', '.$option.') ON DUPLICATE KEY UPDATE id_slot='.$option;
Db::getInstance()->execute($sql);

После проверки в базе данных, он был фактически выполнен и успешно запущен. Но на переднем конце, я был брошен ошибка выше. Я использую крюк ниже, чтобы выполнить мои коды:

  • hookActionCarrierProcess

Я пробовал $option = (int)pSQL (Tools::getValue ('option')); но он возвращает 0 при сохранении.

Есть идеи?

У вопроса есть решение - Посмотреть?

https://stackoverflow.com/questions/53004407/prestashop-1-7-on-update-executed-successfully-but-returns-error-on-front-end#comment92918750_53004407
Что такое $стоимость опциона?
https://stackoverflow.com/questions/53004407/prestashop-1-7-on-update-executed-successfully-but-returns-error-on-front-end#comment92918830_53004407
Значение из формы, которую я создал для пользователя, чтобы выбрать из списка параметров. Таким образом, он будет принимать значение и вставлять в базу данных.

Ответы - Тема 1.7 - обновление выполнено успешно, но возвращает ошибку на переднем конце / Prestashop 1.7 - On Update Executed Successfully but Returns Error on Front-End

Mahdi Shad

26.10.2018 02:36:54

Если ваше значение целое: вы должны использовать (int) перед параметром $

Если ваше значение-строка:

$option = Tools::getValue('option');

$sql = 'INSERT INTO `'._DB_PREFIX_.'slot` VALUES ('.(int)$params['cart']->id.', "'.pSQL($option).'") ON DUPLICATE KEY UPDATE id_slot='.$option;
Db::getInstance()->execute($sql);
https://stackoverflow.com/questions/53004407/prestashop-1-7-on-update-executed-successfully-but-returns-error-on-front-end/53007898#comment92939390_53007898
Он по - прежнему возвращает ту же ошибку-у вас есть ошибка в синтаксисе SQL; проверьте руководство, которое соответствует вашей версии сервера MariaDB для правильного синтаксиса для использования рядом " в строке 1. Я попытался удалить "" и он возвращает еще одну ошибку, мой синтаксис неправильный?
https://stackoverflow.com/questions/53004407/prestashop-1-7-on-update-executed-successfully-but-returns-error-on-front-end/53007898#comment92939405_53007898
Я также пробовал с $option = (int)pSQL(Tools:: getValue ('option')); но он возвращает 0 при сохранении
https://stackoverflow.com/questions/53004407/prestashop-1-7-on-update-executed-successfully-but-returns-error-on-front-end/53007898#comment92939566_53007898
Если ваш параметр целочисленный, используйте это: $option = (int)Tools:: getValue ('option')); используйте pSQL только для строковых значений. Вы уверены в стоимости опциона?
https://stackoverflow.com/questions/53004407/prestashop-1-7-on-update-executed-successfully-but-returns-error-on-front-end/53007898#comment92940148_53007898
Да, я пробовал $ option = (int)Tools::getValue('option')); но он по-прежнему хранится как 0 без каких-либо ошибок. Если я использую $option = Tools:: getValue ('option')); .... это работает, но ошибка покажет. Тогда я буду копаться в этом...
https://stackoverflow.com/questions/53004407/prestashop-1-7-on-update-executed-successfully-but-returns-error-on-front-end/53007898#comment92940188_53007898
Можете ли вы опубликовать окончательный запрос, который успешно выполнялся в БД?
https://stackoverflow.com/questions/53004407/prestashop-1-7-on-update-executed-successfully-but-returns-error-on-front-end/53007898#comment92940202_53007898
То же самое я написал в этом посте. Он успешно запущен, но возвращает ошибку. База данных обновляется в надлежащем порядке.
https://stackoverflow.com/questions/53004407/prestashop-1-7-on-update-executed-successfully-but-returns-error-on-front-end/53007898#comment93050592_53007898
При дальнейших проверках, есть на самом деле ошибка, когда я получаю значение. Я проверяю это, но спасибо за ваши предложения.
Закрыть X