Введение в xAjax. Статьи. wb0.ru - Все для веб-мастера, on-line сервисы

Введение в xAjax

Что такое xAjax?

xAjax это open source библиотека классов PHP, которая позволяет вам легко создавать мощные, вебориентированные Ajax приложения использующие HTML, CSS, JavaScript, и PHP. Приложения, разработанные при помощи библиотеки xAjax могут асинхронно вызывать расположенные на сервере PHP функции и обновлять содержание без перезагрузки страницы.

Как работает xAjax?

Библиотека xAjax создает функции JavaScript, которые являются оболочкой для PHP функций, которые вы можете вызывать с сервера из вашего приложения. Когда вызывается функция JavaScript то эта функция, которая является оболочкой для функции PHP использует объект XMLHttpRequest для асинхронного соединения с объектом xAjax на сервере, который вызывает соответствующую функцию PHP. После завершения этого действия, возвращается xAjax XML ответ от вызванной PHP функции. Возращенный XML содержит инструкции и данные, которые будут проанализированы специальными функциями JavaScript-овой части xAjax и использованы для обновления содержания вашего приложения.

Почему Вы должны использовать xAjax, а не другую библиотеку для PHP?

Вы выберете эту библиотеку, так как она удовлетворит все ваши потребности при разработке вашего проекта.

xAjax предлагает следующие возможности, которые вместе делают его уникальным и мощным инструментом:

  • xAjax's уникальная система на javaScript, которая может анализировать возращенный XML и автоматически его обрабатывать согласно инструкциям находящимся в этом ответе. Т.к. xAjax обрабатывает все это, то вам не нужно отдельно писать отдельные функции на Javascript для того чтобы обрабатывать возвращенный XML.
  • xAjax это объект ориентированный на создание отношений между программным кодом и данными для хранения кода хajax отдельно от другого программного кода. Так как это объектно-ориентированный код, то вы всегда можете добавлять свои функции в класс xAjaxResponse используя метод addScript().
  • xAjax работает в Firefox, Mozilla, возможно что и в остальных родственных Mozilla браузерах, Internet Explorer, и Safari. Помимо обновления значений элементов (имеется в виду DOM) и innerHTML, xAjax также может быть использован для обновления стилей, css классов, значений чекбоксов и выпадающих списков, или каких либо других свойств элемента.
  • xAjax может использовать одно и многоразмерные массивы, а также ассоциативные массивы из javascript в PHP как параметры ваших функций xAjax. В дополнение, если вы вводите объект javascript в функцию xAjax function, функция PHP будет получать ассоциативных массив, определяющий свойства этого объекта.
  • xAjax предоставляет легкую асинхронную обработку формp. Используя метод javascript xAjax.getFormValues(), вы можете легко отправить массив данных в форме как параметры для асинхронной функции xAjax:

    xAjax_processForm(xAjax.getFormValues('formId');.

    Если действие совершилось совместно с элементом формы input под именем "checkbox[][]" и "name[first]" для того чтобы создать многоразмерные и ассоциативные массивы такие как если бы вы отправляли форму используя массив $_GET. Используя xAjax вы можете динамически подгружать дополнительный javascript для вашего приложения для того чтобы при его исполнении менялись свойства элемента DOM.

  • xAjax автоматически сравнивает данные возвращенные из PHP функций с текущими значениями свойства элемента, который вы хотите изменить. Свойство изменяется только в том случае если это изменение актуально на данный момент. Это позволяет устранить мерцание, которое происходит если элемент обновляется каждый раз через определенные промежутки времени. Каждая функция зарегистрируется для того чтобы быть доступной через xAjax, который имеете различные типы запросов. Все функции по умолчанию используют POST за малым исключением GET. Это сделано для большей безопасности запросов. Если не определен запрашиваемый URI, xAjax пытается автоматически определить запрашиваемый URL скрипта. Алгоритм автоопределения xAjax достаточно универсален, так что он будет работать как на безопасном протоколе https:// так и на http:// и на нестандартных портах.
  • xAjax перекодирует все свои запросы и ответы в кодировку UTF-8 таким образом он поддерживает большой спектр различных знаков и языков.
  • xAjax был протестирован на различных языках в юникоде включая Испанский, Русский, Арабский. Почти весь javascript динамически подгружается через javascript расширения.
  • xAjax может быть использован в шаблонном движке Smarty для создания переменной в smarty должен быть следующий код: $smarty->assign('xAjax_javascript', $xAjax->getJavascript()); Когда используете xAjax подставляйте в заголовок следующий тег {$xAjax_javascript}.
Могу ли я использовать эту библиотеку для написания платного программного обеспечения?

В кратце: Да. Библиотека xAjax распространяется по лицензии GNU Lesser General Public License (LGPL).

Ajax как он есть

Ajax не является технологией. В сущности, это объединение нескольких самостоятельных технологий, которые могут быть эффективно использованы вместе.

При использовании AJAX веб-страница не перезагружается полностью в ответ на каждое действие пользователя. Вместо этого с веб-сервера догружаются только нужные пользователю данные. AJAX - один из компонентов концепции DHTML.

AJAX базируется на двух основных принципах:

  • использование DHTML для динамического изменения содержания страницы;
  • использование технологии динамического обращения к серверу <на лету>, без перезагрузки всей страницы полностью.
Использование этих двух принципов позволяет создавать намного более удобные веб-интерфейсы пользователя на тех страницах сайтов, где необходимо активное взаимодействие с пользователем.

Использование AJAX стало наиболее популярно после того, как компания Google начала активно использовать его при создании своих сайтов, таких как Gmail, Google Maps и Google Suggest. Использование AJAX на этих сайтах подтвердило эффективность использования данного подхода.

AJAX расшифровывается как Asynchronous JavaScript + XML (асинхронный JavaScript+XML) и уже это указывает, на что опирается технология. А опирается практически на все то же самое, что и другие веб-приложения:

  • HTML/XHTML - для написания разметки страницы;
  • CSS - для визуального оформления страницы;
  • DOM - для динамического изменения страницы в ответ на действия пользователя;
  • XML - для обмена данными между клиентской и серверными частями;
  • JavaScript - собственно для написания AJAX движка, для обеспечения интерактивности;
  • XMLHttpRequest объект - для осуществления запросов к серверу.
Модель Ajax

Классическая модель веб-приложения представляет собой следующую цепочку:

  1. Пользователь заходит на веб-страницу и нажимает на какой-нибудь её элемент.
  2. Браузер формирует и отправляет запрос серверу.
  3. В ответ сервер генерирует полностью новую веб-страницу и отправляет её браузеру и т. д.
Модель Ajax расширяет классическую модель:
  1. Пользователь заходит на веб-страницу и нажимает на какой-нибудь её элемент.
  2. Скрипт (на языке JavaScript) определяет, какая информация необходима для обновления страницы.
  3. Браузер отправляет соответствующий запрос на сервер.
  4. Сервер возвращает только ту часть документа, на которую пришел запрос.
  5. Скрипт вносит изменения с учётом полученной информации (без полной перезагрузки страницы).
Для примера, если вы видите на сайте появляется текст "Загрузка", а после него отображаются данные, и при этом на странице не используется Flash, значит вы наблюдаете технологию Ajax в действии.

Кто использует Ajax

Google вкладывает большие деньги в разработку Ajax подхода. Все продукты Google, появившиеся в недавнее время - Orkut, Gmail, последние бета версии Google Groups, Google Sugest and Google maps - это Ajax приложения.

Эти проекты демонстрируют, что Ajax - это не просто технологическая идея, Ajax подход уже используется в реальной жизни. Это не очередная технология, которая работает только в лаборатории. При этом Ajax приложение может быть любого размера: от простого Google suggest до очень сложного, такого как Google Maps.

У нас в компании Adaptive Path мы ведём свои собственные разработки связанные с Ajax, и, постепенно, мы понимаем, что то, что мы создаём - это только верхний слой тех возможностей, которые таит в себе Ajax. Ajax - это очень важный ветка развития Веб-приложений, и её важность постепенно будет нарастать.

И так как уже достаточно большое количество разработчиков знакомы с этими технологиями, то мы ожидаем в будущем увидеть больше организаций, которые последуют примеру Google в использовании возможностей предоставляемых Ajax.


Дата публикации: 07.10.2007
codenet.ru

   Ваш псевдоним:
Ваш комментарий:

Календарь событий


Новости Интернет


Поиск





Последний пересчет

тИЦ:07 Окт 15
PR:09 Дек 13

Наши партнеры

wservices.ru - регистрация доменов, Whois-сервисы Смайлы на все случаи жизни


 
Copyright © 2006-2024, wb0.ru