РЕДАКТИРОВАТЬ : Удаление файла index.php с помощью .htaccess создает только что обнаруженный мной пробем.Теперь я приступаю к ее решению.
РЕДАКТИРОВАТЬ : Проблема решена.Javascript был неправильным: url: "/login/"
Требовалась косая черта.
ORIGINAL : На своем домашнем экране я создал форму:
<div id="login"><?php
echo form_open('login');
echo form_input('username', 'Username', 'id="username"');
echo form_submit('submit', 'Login', 'id="login_submit"');
echo form_close();
?></div>
С некоторымиjavascript (спасибо Nettuts) Я попытался реализовать некоторый ajax:
$('#login_submit').click(function() {
var form_data = {
username: $('#username').val(),
password: $('#password').val()
};
$.ajax({
url: "/login",
type: 'POST',
data: form_data,
success: function(msg) {
$('#login').html(msg);
}
});
return false;
});
Как видите, он отправляет значения формы в контроллер входа в систему.
class Login extends CI_Controller {
function index()
{
if($this->input->is_ajax_request())
{
echo '<h2>Login succeeded with ajax</h2>';
}
else
{
echo '<p>But your ajax failed miserably</p>';
}
}
}
проблема в том, что это не работает. Функция $this->input->is_ajax_request()
выводит FALSE.Игнорируя это, все остальные данные поста отсутствуют. Ничего не проходит.
Что я делаю не так?