2013-06-15 2 views
0

Я осмотрелся, но я не могу найти решение.Занятия JQuery и codeigniter

У меня есть выпадающее меню в моем html, и когда вы выбираете один из вариантов, он перенаправляет на другой URL-адрес в моем jquery.

как этот

$('#chapter').change(function(){ 
    var chapter = $(this).val(); 
    $(location).attr('href','http://www.writeyourfiction.com/story/readStory/'+chapter); 
}); 

Это все работает отлично, но мой вопрос, когда это происходит редирект CodeIgniter, кажется, сбросив свои сессии. Я var_dumped мои сессии перед перенаправлением, и они есть, но когда я верну их снова после перенаправления, сеансы пустые.

Любая помощь будет потрясающей!

+0

Почему вы используете полный URL? Возможно, ваша сессия находится в другом (суб) домене? – jeroen

+0

CI какая версия? – egig

+0

, потому что я думал, что вам нужно переопределить jQuery ... Не могу поверить, что я не пытался стереть это раньше ... вау ... и теперь это работает! Спасибо, что исправил мой очень глупый момент! – zazvorniki

ответ

0

Я думаю, что класс сеанса должен быть либо инициализирован в ваших конструкторах контроллера, используя функцию $this->load->library('session');, либо Если данные сеанса не существуют (или если они истекли), новый сеанс будет создан и сохранен в файле cookie ,

+0

Я получил его для работы, спасибо за ответ. Моя проблема заключалась в том, что я помещал весь URL-адрес в перенаправление jquery, когда должен был просто поставить контроллер и функционировать. Глупый шаг с моей стороны! – zazvorniki

+0

хорошо, если вы столкнулись с проблемой сессии CI, просто проверьте этот сказочный ответ: http://stackoverflow.com/questions/7980193/codeigniter-session-bugging-out-with-ajax-calls?lq=1 – mboullouz

+0

Я на самом деле уже посмотрел на это! Спасибо за публикацию, хотя, это очень хорошая вещь, чтобы читать ... любой, кто использует ci и jquery, должен прочитать это! – zazvorniki

0

Лучше загрузить библиотеку сеанса в/приложения/Config/Автозагрузка

для JQuery с CodeIgniter упасть вниз, вы могли бы сделать что-то вроде этого я использовал JQuery Ajax: здесь пример кода:

<select name="all_users" id="all_users" onchange="javascript:cal_ajax(this.value);"> 
    <?=$my_option_list?> 
</select> 

<script type="text/javascript"> 
var base_url = '<?=base_url()?>'; 

function cal_ajax(id) 
{ 
    $.ajax({ 
    type:"POST", 
    url: base_url+"history/home/get_users", 
    data: "userid=" + id, 
    success: function(result){ 
     $("#Mehdi_ajax").html(result); 
    } 
    }); 

} 
</script> 

в нашей функции контроллера, например, здесь, в функции get_users() вы установите переназначения

Смежные вопросы