На самом деле все не так уж сложно.
Что происходит при вводе URL в адресную строку в браузере? Если очень упрощенно, то:
- Браузер отправляет запрос по этому URL
- На сервере отрабатывает PHP и возвращает браузеру некую информацию (в большинстве случаев HTML)
- Браузер выводит эту информацию на экран.
В случае с AJAX общая суть остается той же:
- JavaScript (вместо адресной строки) просит браузер сделать запрос по некоторому URL
- Браузер отправляет запрос по этому URL
- На сервере отрабатывает PHP и возвращает браузеру некую информацию
- Вместо того, чтобы выводить информацию на экран, браузер передает её JavaScript
- Всё, данные находятся под управлением скрипта. и мы можем с ними делать что угодно.
В самом простом виде AJAX-запрос с использованием JQuery выглядит так:
$.ajax({
url: 'some url' //URL, по которому будет сделан запрос
}).done(function(dataFromPHP){
//Сюда мы попадаем, если запрос завершен успешно
//Все что PHP должен был вывести в браузер при классическом обращении
//через адресную строку браузера (текст, HTML, всё что угодно),
//будет прочитано JavaScript-ом и помещено в переменную dataFromPHP.
//Далее мы можем свободно работать с этими данными.
//К примеру, показать их с помощью alert
alert(dataFromPhp);
}).fail(function(){
//Сюда мы попадаем, если по каким-то причинам запрос прошел не успешно
alert('Не удалось произвести запрос')
});
Я выложил пару простых примеров использования AJAX на github:
https://github.com/Merzley/ajax-examples. Для запуска ничего кроме PHP не требуется. Если что-то будет не понятно - обращайтесь