Измените значение сеанса с событием щелчка в CI - PullRequest
0 голосов
/ 06 августа 2020

Я пробую что-то вроде вариантов для пользователей, чтобы переключаться между низкой и высокой пропускной способностью, чтобы обрабатывать использование данных в соответствии с их желанием. Но работа не выполняется должным образом.

HTML:

<li <?php echo $lowbandwidth ?>  class="list-inline-item">  <?php if($lowbandwidth == 'low')  {    ?>
<a href="javascript:;" class="change-bandwidth" id="high"
   title="<?='Low bandwidth'?>">
       <?='Low bandwidth'?>
   </a>  <?php } else{?>
<a href="javascript:;" class="change-bandwidth" id="low"
   title="<?='High bandwidth'?>">
       <?='High bandwidth'?>
   </a>

Тогда я использовал Ajax для отправки запроса на сервер:

AJAX

<script>
    $('.change-bandwidth').click(function(){
       var id = $(this).attr('id');
        $.ajax({
            type: "POST",
            url:"<?php echo base_url().'welcome/changeBandwidth/' ?>" + id,
            dataType: 'json',
        }).always(function(resp){
            location.reload();
        });
    });
</script>

Наконец контроллер:

Добро пожаловать. php

function changeBandwidth($id){
    $bandwidth = $_POST[$id];
    if($bandwidth == 'low'){
        $_SESSION['lowbandwidth'] = 'high';
    }else{
        $_SESSION['lowbandwidth'] = 'low';
    }
    return json_encode($bandwidth . " + " . $_SESSION['lowbandwidth'], 200);
}

Мне не хватает знаний, как с этим справиться.

Идентификатор отправляется правильно, но во время ответа ничего не происходит.

...