создание и продвижение сайта (вбиваю в ТОП-10, как гвозди)Настройка и сопровождение платной рекламы яндекс.директ

PHP. Руководство по PHP. 2005

Работа с XForms Пред.

След.

Глава 37. Работа с XForms

XForms являются альтернативой традиционным

веб-формам, и позволяют использовать их на множестве платформ и

браузеров, а также реализовывать нестандартные представления форм, например,

в виде PDF-документа.

Первое существенное отличие XForms заключается в том, как форма отсылается

клиенту. Руководство XForms для HTML-верстальщиков

содержит детальное описание создания XForms. Для того, чтобы очертить

основную идею руководства, приведем несколько простых примеров.

Пример 37-1. Простая XForms для поисковой формы

<h:html xmlns:h="http://w3.org/1999/xhtml"

xmlns="http://w3.org/2002/xforms">

<h:head>

<h:title>Search</h:title>

<model>

<submission action="http://example.com/search"

method="post" id="s"/>

</model>

</h:head>

<h:body>

<h:p>

<input ref="q"><label>Find</label></input>

<submit submission="s"><label>Go</label></submit>

</h:p>

</h:body>

</h:html>

Приведенная выше форма отображает текстовое поле для ввода (названное q)

и кнопку для оправки формы, при нажатии на которую все введенные данные

будут отправлены скрипту, указанному в поле action.

Тут мы подошли к еще одному существенному различию с точки зрения вашего

веб-приложения. Стандартная HTML-форма отправляет данные как

application/x-www-form-urlencoded, а XForms

для передачи данных использует разметку XML.

Если вы решили работать с XForms, скорее всего вы захотите получить

отправленные пользователем данные в формате XML. В таком случае обратите внимание

на переменную $HTTP_RAW_POST_DATA, в ней содержится

XML-документ, сгенерированный браузером, который в дальнейшем можно

обработать предпочитаемым вами движком XSLT или парсером XML.

Если XML-разметка вас не интересует, и вы хотите, чтобы передаваемые данные

были помещены в стандартный массив $_POST, вы можете

указать клиентскому браузеру на необходимость отправлять данные

в формате application/x-www-form-urlencoded.

Для этого установите атрибут method значением

urlencoded-post.

Пример 37-2. Использование XForm совместно с массивом $_POST

<h:html xmlns:h="http://w3.org/1999/xhtml"

xmlns="http://w3.org/2002/xforms">

<h:head>

<h:title>Search</h:title>

<model>

<submission action="http://example.com/search"

method="urlencoded-post" id="s"/>

</model>

</h:head>

<h:body>

<h:p>

<input ref="q"><label>Find</label></input>

<submit submission="s"><label>Go</label></submit>

</h:p>

</h:body>

</h:html>

Замечание:

В дополнение к вышесказанному следует заметить, что большое количество браузеров не поддерживают

XForms. Если приведенные примеры потерпели неудачу, проверьте версию используемого

вами браузера.

Пред.

Начало

След.

Sessions

Уровень выше

Загрузка файлов на сервер

Отвечу на любые вопросы. С уважением, Дмитрий Владимирович.

Ваше письмо×
Free Web Hosting