Использование jQuery и Ajax в Codeigniter (Урок
<?php
class User extends CI_Controller {
public function login() {
// Тут мы получаем переданные нам данные из предыдущего файла
$userLogin = $this->input->post('user_login');
$userPassword = $this->input->post('user_login');
// Создаём переменную куда будем записывать результат работы
// потом мы его вернём обратно яваскрипту
$returnText = '';
// Делаем простую проверку, замените на свою
if($userLogin != 'admin' and $userPassword != 'password'){
$returnText = '<div sryle="color: red;">Вы ввели неверные данные!</div>';
} else {
$returnText = '<strong>Вы успешно прошли авторизацию!</strong>';
}
// Возвращаем ответ
echo $returnText;
}
}
?><div id="ajax_login">
<form action="">
Login: <input type="text" name="user_login" id="user_login"><br>
Password: <input type="password" name="user_password" id="user_password"><br>
<input type="button" name="send_data" id="send_data" value="Send">
</form>
</div>
<script type="text/javascript">
$('#send_data').live('click', (function(){
// Сначала присваеваем переменным значения из наших полей ввода
// Доступ к полям по их ID
var user_login = $("#user_login").val();
var user_password = $("#user_password").val();
// Это функция запроса ajax, в переменной html
// мы сможем получить обратный текст после обработки
var html = $.ajax({
type: "POST",
// Тут в качестве параметра url мы указываем на
// controller который будет обрабатывать наши данные
url: "<?=base_url()?>user/login",
data: ({
// Перечесляем передаваемые переменные
// Сначала идёт название которое получит controller
// через метод post, следом наша переменная с данными
'user_login' : user_login,
'user_password' : user_password
}),
dataType: "html",
async: false
}).responseText;
// Здесь мы просто перезаписываем div с id="ajax_login" данными
// которые вернул наш controller
$("#ajax_login").empty().append(html);
}));
</script>