Що таке AJAX?
За допомогою використання AJAX Ви можете помітно збільшити швидкість реакції інтерфейсу і значно зменшити навантаження на сервер.
Це стає можливим завдяки асинхронного обміну інформацією і здатністю перезавантажувати тільки "оновлену" частина сторінки без необхідності перезавантаження сторінки цілком.
AJAX використовується багатьма відомими веб-додатками такими як: Facebook, Flickr, Gmail, Google Maps і Youtube і ін.
GET запит
Використовується для запиту вмісту зазначеного ресурсу.
Для передачі GET запиту використовується
Клієнт може передавати параметри виконання запиту в URI цільового ресурсу після символу «?»:
GET запити.
Під час звичайної відправки форми браузер сам кодує значення полів і становить тіло GET / POST-запит для посилки на сервер.
Більшість проблем і питань тут пов'язано з нерозумінням, де і яке кодування потрібно здійснювати.
При роботі з кодуванням UTF-8 кодування завжди йде через encodeURIComponent ()
Стандартне кодування URL:
Пропуск представляється як% 20, російські літери і більшість спецсимволов кодуються, англійські букви і дефіс залишаються як є.
Спосіб, яким слід кодувати дані форми при submit'е, задається в її HTML-тезі: Якщо форма відправляється звичайним чином, то браузер сам кодує (urlencode) назва і значення кожного поля даних і відсилає форму на сервер в закодованому вигляді.
Формуючи XMLHttpRequest. ми повинні формувати запит "руками", кодуючи поля функцією encodeURIComponent.
Наприклад, для посилки GET-запит з довільними параметрами name і lastname. їх необхідно закодувати ось так:
Створення об'єкта XMLHttpRequest
У браузері IE, який зараз поступово еволюціонує і має 11 версію об'єкт XMLHttpRequest є частиною ActiveX, причому, що цікаво, версії в різних ActiveX відрізняються. Тому Об'єкт доводиться в кожній створювати по-різному.
Виходячи з вище сказаного, функція освіти XMLHttpRequest. Функція повертає об'єкт XMLHttpRequest.
Треба буде відразу сказати, що всі файли та інше повинно бути в кодуванні UTF-8.
Для перетворення символів в urlencoded формат будемо використовувати вбудовану функцію encodeURIComponent ()
і далі PHP отримавши такий розклад починає виводити дані згідно із запитом.
callback - параметр. тип function (функція)
Щоб отримати те що нам відправить сервер, треба організувати функцію в одним параметром. наприклад: у функції getAjax. яку ми будемо використовувати, callback буде функцією. Якщо ми відповіді від сервера не чекаємо, то замість функції треба написати порожню функцію Приклад
ajax_GET_UTF8.js Підключимо цей файл до форми, на якій буде робити AJAX запит
form.html Роль файлу приймача буде виконувати
Відкрийте приклад в новому вікні і подивіться вихідний код
завантажити ajax_get.zip