Автор Тема: Не работает фильтрация в одном из контроллеров  (Прочитано 246 раз)

01 Ноябрь 2021, 21:03:56
  • Старожил
  • ****
  • Сообщений: 259
  • Репутация: +2/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Здравствуйте
Восстановить хронологию возникновения ошибки - нет возможности, потому что данным пунктом меню пользуемся редко. Проявилось сегодня.
Версия 1.6
Раздел меню - Запасы -> Движение запасов
Выводится список движений. При попытке фильтрации по кнопке Поиск, либо перехода на следующую страницу - белый экран.
Включения показа ошибок - безрезультатно.
Полдня мучений -> результат анализа:
1. После нажатия Поиск в AdminController (а значит в любом контроллере) после цепочки вызовов разных функций происходит
Tools::redirectAdmin($this->redirect_after);При этом в $this->redirect_after находится: "Текущий URL" + "&submitFilter" + "$this->table" + "=1"
2. Так вот после этого Tools::redirectAdmin (только в этом контроллере) - белый экран
Куда копать???
02 Ноябрь 2021, 11:28:42
Ответ #1
  • Ветеран
  • *****
  • Сообщений: 1285
  • Репутация: +13/-1
  • Сообщество PrestaShop
    • Просмотр профиля
В url не хватает параметра token. В консоле браузера проверить нужно передачу параметров. Поиск работает на ajax и проверить можно только так.
02 Ноябрь 2021, 11:46:06
Ответ #2
  • Старожил
  • ****
  • Сообщений: 259
  • Репутация: +2/-0
  • Сообщество PrestaShop
    • Просмотр профиля
В url не хватает параметра token. В консоле браузера проверить нужно передачу параметров. Поиск работает на ajax и проверить можно только так.
"Текущий URL" - я подразумевал уже с токеном
02 Ноябрь 2021, 12:56:13
Ответ #3
  • Ветеран
  • *****
  • Сообщений: 16670
  • Репутация: +14630/-5
  • Сообщество PrestaShop
    • Просмотр профиля
При включении режима отладки и показа белого экрана должно показать ошибки.
Можно еще в консоле javascript ошибки проверить.
В логе смотреть.
Так просто не определить причину.
02 Ноябрь 2021, 13:54:13
Ответ #4
  • Старожил
  • ****
  • Сообщений: 259
  • Репутация: +2/-0
  • Сообщество PrestaShop
    • Просмотр профиля
При включении режима отладки и показа белого экрана должно показать ошибки.
Можно еще в консоле javascript ошибки проверить.
В логе смотреть.
Так просто не определить причину.
В консоли ошибок нет
Провел эксперимент:
Нажал поиск в окне с заказами - сохранил заголовки запроса из консоли
Повторил тоже самое в "плохом" контроллере stock_mvt
Сравнил заголовки
Различие одно:
order
Referer: http://pirotehnika-optom.ru/admin100/index.php?controller=AdminOrders&token=126239f62d01d49b22c987d9e1dd931e&submitFilterorder=1stock_mvt
Referer: https://pirotehnika-optom.ru/admin100/index.php?controller=AdminStockMvt&token=653b574b8c2107238910b38935e331c5Полезная информация для диагноза?

Написал, прочитал и вижу что https откуда-то взялся...
02 Ноябрь 2021, 19:31:02
Ответ #5
  • Старожил
  • ****
  • Сообщений: 259
  • Репутация: +2/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Все было банально: файл StockMvt.php был сохранён как UTF-8 с BOM