Sophie

Sophie

distrib > Mandriva > 2008.1 > x86_64 > by-pkgid > 05cd670d8a02b2b4a0ffb1756f2e8308 > files > 69

php-manual-zh-5.2.4-1mdv2008.1.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML
><HEAD
><TITLE
>处理 XForms</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="PHP 手册"
HREF="index.html"><LINK
REL="UP"
TITLE="特点"
HREF="features.html"><LINK
REL="PREVIOUS"
TITLE="会话"
HREF="features.sessions.html"><LINK
REL="NEXT"
TITLE="文件上传处理"
HREF="features.file-upload.html"><META
HTTP-EQUIV="Content-type"
CONTENT="text/html; charset=UTF-8"></HEAD
><BODY
CLASS="chapter"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
>PHP 手册</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="features.sessions.html"
ACCESSKEY="P"
>上一页</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
></TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="features.file-upload.html"
ACCESSKEY="N"
>下一页</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><DIV
CLASS="chapter"
><H1
><A
NAME="features.xforms"
>章 37. 处理 XForms</A
></H1
><P
>&#13;  <A
HREF="http://www.w3.org/MarkUp/Forms/"
TARGET="_top"
>XForms</A
> 定义了一种传统 web
  表单的变种,它可以用于更多的平台和浏览器,甚至非传统的媒体例如 PDF 文档。
 </P
><P
>&#13;  XFroms 的第一个关键区别是表单怎样发送到客户端。<A
HREF="http://www.w3.org/MarkUp/Forms/2003/xforms-for-html-authors.html"
TARGET="_top"
>XForms for HTML Authors</A
>
  包含有怎样创建 XForms 的详细说明。本节只看一个简单例子。
 </P
><TABLE
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
CLASS="EXAMPLE"
><TR
><TD
><DIV
CLASS="example"
><A
NAME="AEN6989"
></A
><P
><B
>例 37-1. 一个简单的 XForms 搜索表单</B
></P
><TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
CELLPADDING="5"
><TR
><TD
><PRE
CLASS="html"
>&#60;h:html xmlns:h="http://www.w3.org/1999/xhtml"
        xmlns="http://www.w3.org/2002/xforms"&#62;
&#60;h:head&#62;
 &#60;h:title&#62;Search&#60;/h:title&#62;
 &#60;model&#62;
  &#60;submission action="http://example.com/search"
              method="post" id="s"/&#62;
 &#60;/model&#62;
&#60;/h:head&#62;
&#60;h:body&#62;
 &#60;h:p&#62;
  &#60;input ref="q"&#62;&#60;label&#62;Find&#60;/label&#62;&#60;/input&#62;
  &#60;submit submission="s"&#62;&#60;label&#62;Go&#60;/label&#62;&#60;/submit&#62;
 &#60;/h:p&#62;
&#60;/h:body&#62;
&#60;/h:html&#62;</PRE
></TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
><P
>&#13;  上面的表单显示一个文本输入框(命名为
  <CODE
CLASS="parameter"
>q</CODE
>)和一个提交按钮。当点击提交按钮,表单将被发送到
  <TT
CLASS="literal"
>action</TT
> 所指示的页面。
 </P
><P
>&#13;  下面是从 web 应用端的角度看上去的区别。在普通的
  HTML 表单中,数据发送格式是
  <TT
CLASS="literal"
>application/x-www-form-urlencoded</TT
>,在
  XForms 的世界中,该信息是以 XML 格式数据发送的。
 </P
><P
>&#13;  如果选择使用 XForms,那么数据为 XML,这种情况下,在
  <CODE
CLASS="varname"
>$HTTP_RAW_POST_DATA</CODE
> 中包含了由浏览器产生的
  XML 文档,可以将其传递给所偏好的 XSLT 引擎或者文档解析器。
 </P
><P
>&#13;  如果对格式不感兴趣,只想让数据进入到传统的
  <CODE
CLASS="varname"
>$_POST</CODE
> 变量中,可以指示客户端浏览器将其以
  <TT
CLASS="literal"
>application/x-www-form-urlencoded</TT
>
  格式发送,只要将 <CODE
CLASS="parameter"
>method</CODE
> 属性改成
  <SPAN
CLASS="emphasis"
><I
CLASS="emphasis"
>urlencoded-post</I
></SPAN
> 即可。
 </P
><TABLE
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
CLASS="EXAMPLE"
><TR
><TD
><DIV
CLASS="example"
><A
NAME="AEN7004"
></A
><P
><B
>例 37-2. 使用 XForm 来产生 <CODE
CLASS="varname"
>$_POST</CODE
></B
></P
><TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
CELLPADDING="5"
><TR
><TD
><PRE
CLASS="html"
>&#60;h:html xmlns:h="http://www.w3.org/1999/xhtml"
        xmlns="http://www.w3.org/2002/xforms"&#62;
&#60;h:head&#62;
 &#60;h:title&#62;Search&#60;/h:title&#62;
 &#60;model&#62;
  &#60;submission action="http://example.com/search"
              method="urlencoded-post" id="s"/&#62;
 &#60;/model&#62;
&#60;/h:head&#62;
&#60;h:body&#62;
 &#60;h:p&#62;
  &#60;input ref="q"&#62;&#60;label&#62;Find&#60;/label&#62;&#60;/input&#62;
  &#60;submit submission="s"&#62;&#60;label&#62;Go&#60;/label&#62;&#60;/submit&#62;
 &#60;/h:p&#62;
&#60;/h:body&#62;
&#60;/h:html&#62;</PRE
></TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
><DIV
CLASS="note"
><BLOCKQUOTE
CLASS="note"
><P
><B
>注意: </B
>
   在写本文档时,许多浏览器还不支持 XForms。如果上面例子失败请检查自己的浏览器版本。
  </P
></BLOCKQUOTE
></DIV
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="features.sessions.html"
ACCESSKEY="P"
>上一页</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
ACCESSKEY="H"
>起始页</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="features.file-upload.html"
ACCESSKEY="N"
>下一页</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>会话</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="features.html"
ACCESSKEY="U"
>上一级</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>文件上传处理</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>