Прежде всего, давайте запустим ваш пример, ваши данные поста - это json, а тип данных - json, но ваша реализация CI обращается к переменным поста.
Быстрое и грязное исправление - отправить строку uriв данных поста, таких как:
&headline=test%20headline&article=test%20article
Это можно сгенерировать из формы с помощью функции сериализации jquery:
var myData = $('#form-id').serialize();
Эти данные публикации будут установлены в переменной $ _POST при отправке, а затем будут доступны через функцию записи CI:
$this->input->post()
* Примечание: запомните, чтобы удалить параметр dataType в ajaxпопросите, чтобы это сработало.
Для более политически корректного способа решения этой проблемы вы захотите оставить свой javascript в одиночку (это все хорошо), но вам нужно настроить бэкэнд CI какСлужба RESTful, установленный по умолчанию контроллер и входные классы не справятся с этим.Вам нужно использовать что-то вроде реализации REST Фила Стерджона:
- Для кода существует проект github ,
- A запись в блоге (прочтите это в первую очередь - это хороший краткий учебник по REST-серверам для использования CI),
- И учебник , о котором вы уже знаете.
- О и видео о настройке.