Оператор метода не работает на производственном сервере, работает на localhost - PullRequest
0 голосов
/ 12 апреля 2019

Когда AJAX вызывает мой метод laravel, вызывается метод, но переменная для поискового запроса равна нулю (используя Select2 для моего комбинированного списка). Тем не менее, тот же код отлично работает на моей локальной машине разработчика.

Я обновил laravel до 5.8.11, чтобы посмотреть, поможет ли это, так как на моей локальной машине работает немного более новая сборка, php, просмотренные журналы, инспектор chrome, ничего не показывает ошибок для этого.

   public function get_codes(Request $request)
    {
        $search = trim($request->q);

        if(empty($search))
        {
            return response()->json([]);
        }     

        $data = [];
        $data = DB::table("codes")
                ->select("id","dx_code", "description")
                ->where('dx_code','LIKE',"$search%")
                ->get();

        return response()->json($data);
    }
    ajax: {
            url: "/dxcodes",
            dataType: "json",
            delay: 250,
            data: function (params) {
              return {
                q: $.trim(params.term)
              };
            },
            processResults: function (data) {
              return {
                results: data
              };
            },
            cache: true
        }

мой ответ json: [] (после выполнения тестов я обнаружил, что мой $ request-> q считается пустым), однако, если я удалю if (empty), я получу свой ответ. Я не понимаю ... опять же, пожалуйста, помните, все это прекрасно работает на моей локальной машине. У меня есть другие вызовы ajax в моем приложении на рабочем сервере, и они работают нормально, это всего лишь один вызов.

Исправлена ​​ошибка, из-за которой файл конфигурации веб-сервера nginx для этого сайта был установлен неправильно. Nginx не использует файлы .htaccess. ? отсутствовал после index.php

   try_files $uri $uri/ /index.php$query_string; (BAD)
   try_files $uri $uri/ /index.php?$query_string; (GOOD)
...