За последние 24 часа нас посетили 22858 программистов и 1223 робота. Сейчас ищут 760 программистов ...

контроллер не сохраняет сессию

Тема в разделе "Laravel", создана пользователем Qvei, 27 сен 2020.

  1. Qvei

    Qvei Новичок

    С нами с:
    10 ноя 2019
    Сообщения:
    60
    Симпатии:
    4
    Что не так в контроллере?

    форма:

    Код (Text):
    1. <select id="tema" name="tema" onchange="cords()">
    2.               <option class="btnn" value="{{$light}}"></option>
    3.               <option class="btnn" value="{{$dark}}"></option>
    4.            </select>
    Ajax запрос:

    Код (Text):
    1. <script>
    2. function cords(){
    3. $.ajaxSetup({
    4.           headers: {
    5.             'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
    6.          }
    7.      });
    8. $.ajax
    9. ({
    10. type: "POST",
    11. url: "{{url('/tema/store')}}",
    12. data: $('.btnn').value,
    13. success: function(data)
    14. {
    15.   alert('ko');
    16. }
    17. });}
    18. </script>
    Роут: Route:post('/tema/store', 'TemaController@store');

    Контроллер:

    Код (Text):
    1. class TemaController extends Controller
    2. {
    3.  
    4.  
    5.     public function store(Request $request){
    6.         if($request->ajax())
    7.      {
    8.  
    9.         $light = 'allthisshit.css';
    10.         $dark = 'allthisshit2.css';
    11.         $tema = $request->input('tema');
    12.         Session::put('tema', $tema);
    13.         exit;
    14.     }
    15.  
    16.   }
    17. }
    alert('ok') срабатывает, ошибок в консоли нет и ничего не происходит
     
  2. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.825
    Симпатии:
    738
    Адрес:
    Татарстан
    А что должно происходить? Чего вы ожидаете?

    Отправляете хз чего, у селекта ,id = tema
    Значение будет $('.tena,').val();

    Ну отработает контролёр и что? Чтоб увидеть работу с новой сессией надо страницу на клиенте перегрузить
     
    Qvei нравится это.
  3. Qvei

    Qvei Новичок

    С нами с:
    10 ноя 2019
    Сообщения:
    60
    Симпатии:
    4
    Все верно. Все настроил именно так как вы сказали, отрабатывает как положено теперь. Благодарю
     
  4. Qvei

    Qvei Новичок

    С нами с:
    10 ноя 2019
    Сообщения:
    60
    Симпатии:
    4
    A можете еще подсказать..
    Как лучше делать при создании сайта:
    К елементам можно обратиться например onchange(); в самом элементе а можно $('елемент'). change()
    Я понимаю что второй вариант лучше если что-то поменяется на сайте меньше менять надо будет, возможно еще что-то.
    Суть вопроса: имеет ли значение (скорость, нагрузка,хз) каким образом это делать? Или тут как хочешь?
     
  5. Sail

    Sail Старожил

    С нами с:
    1 ноя 2016
    Сообщения:
    1.591
    Симпатии:
    360
    Qvei нравится это.
  6. mkramer

    mkramer Суперстар
    Команда форума Модератор

    С нами с:
    20 июн 2012
    Сообщения:
    8.555
    Симпатии:
    1.754
    Если пишешь по старой модели через jQuery / VanillaJS, то лучше не использовать атрибуты для назначения событий.
     
    Qvei нравится это.