Сведения о вопросе

Fhohir

14:09, 4th August, 2020

[Решено] CodeIgniter и ajax-post запрос

Просмотров: 467   Ответов: 6

Хабровчане, помогите разобраться.

Имеется простая форма, откуда ajax'ом должна отсылаться информация.
Пробую $.get():

$.get('registration/check/', 's=3', function(html) {
   alert('1');
});

Всё нормально.

Пробую $.post() с теми же параметрами:

$.post('registration/check/', 's=3', function(html) {
   alert('1');
});

FireBug получает в ответ 500-ю ошибку (internal server error).

Кто-нибудь с этим сталкивался?

  Сведения об ответе

Chhiki

08:21, 19th August, 2020

Логи покажите, что выдает?
Так же обычно CodeIgniter настроен на отсечение GET запросов наоборот.
URI я бы с корнем писал — '/registration/check'
А $.post в JQuery имеет действительно формат, что во втором параметре не строка, а объект.
А такое что выдает?
$.ajax({
  type: 'POST',
  url: '/registration/check',
  data: {s:3}
});
</script>


  Сведения об ответе

ASSembler

23:59, 8th August, 2020

Еще одна идея: некоторые фреймворки (например, symfony (насколько мне известно)), если отправлять post вместо get (или наоборот) выдает 404, а не 405 или 406. Может, в CI что-нибудь такое же?


  Сведения об ответе

SEEYOU

22:32, 7th August, 2020

еще одна дурацкая идея, а если так:
$.post('registration/check/', {s: «3»}, function(html) {
alert('1');
});


  Сведения об ответе

padenie

13:38, 5th August, 2020

Кто-нибудь может скинуть рабочие .htaccess (тот, что в корне) и конфиги на почту? Буду сильно благодарен. (Напишу мыло в личку.)


  Сведения об ответе

davran

06:26, 3rd August, 2020

Переустановил CodeIgniter (v2.0.0), ничего не изменилось. Самое интересное, что конфиг как будто игнорируется. Изменение $config['log_threshold'] = 4; и $config['allow_get_array'] = FALSE; ни на что не влияет.


  Сведения об ответе

прога

08:45, 8th August, 2020

Всем спасибо за внимание, причина нашлась — в конфиге было включено $config['csrf_protection'] = true. Выяснил, пройдя по input.class и закоментив, сначала, $this->_sanitize_globals(). В коде метода была отсылка как раз на csrf. Правда теперь не понятно, как отправлять post с включенным csrf, но это уже дело наживное;)

Всем спасибо!


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться