### 实例学习 PHP 之表单处理篇(一）

学习前的准备：
PHP4.03 在 linux 下的安装
PHP4.04 在 win98 下的安装
PHP4.04 在英文 win2000 下的安装
如果你找不到安装程序请到下面下载：
PHP4.04Beta WIN32 安装程序
PHP4.03 源程序
PHP3.0.16 WIN32 安装程序
PHP3.0.16 源程序
OK!现在应该已经没有什么可以阻止我们学习了，Let＇s go!
在学习开始以前，我们先交待一下关于表单的基础知识，如果你对 HTML 非常熟悉，那么可以跳过该部分，直接学习。
故名思议表单是利用网页收集数据的工具，比如你想在网上搞个群众调查啊什么的，肯定是少不了要用他的。下面我简单介绍一下表单的基础知识，关于他的详细内容请自行查阅 HTML 手册。
表单的使用其实非常简单,大家先看一下下面的例子：
< FORM action="< ?php echo ＄PHP_SELF; ?>"METHOD=post>
名字: < INPUT TYPE=TEXT NAME="name">
单项选择:
< INPUT TYPE=RADIO NAME="first" VALUE="我很笨">我很笨
< INPUT TYPE=RADIO NAME="first" VALUE="我非常笨">我非常笨
< INPUT TYPE=RADIO NAME="first" VALUE="我简直就是个傻冒"> 我简直就是个傻冒
多项选择:
< INPUT TYPE=CHECKBOX NAME="second[]" VALUE="我喜欢打蓝球">我喜欢打蓝球
< INPUT TYPE=CHECKBOX NAME="second[]" VALUE="我喜欢游泳">我喜欢游泳
< INPUT TYPE=CHECKBOX NAME="second[]" VALUE="我喜欢跳舞">我喜欢跳舞
< INPUT TYPE=CHECKBOX NAME="second[]" VALUE="我喜欢爬山">我喜欢爬山
< INPUT TYPE=HIDDEN NAME="stage" VALUE= "results">
< INPUT TYPE=SUBMIT VALUE= "谢谢">
< /FORM>
名字:
单项选择: 我很笨 我非常笨 我简直就是个傻冒
多项选择: 我喜欢打蓝球 我喜欢游泳 我喜欢跳舞 我喜欢爬山
怎么样？看明白了吗？上部分是表单的 html 源代码，下部分则是这个表单在浏览器的表现形式。 标志< FORM action="< ?php echo ＄PHP_SELF; ?>"METHOD=post> 表示开始一个表单，到标志< /Form>时表单结束。处理这个表单的程序，用 Form 标志里的 action 属性指出。在这里为< ? echo ＄PHP_SELF; ?>, 其中＄PHP_SELF 是 PHP 中的一个 global 变量，用于保存目前执行 PHP 程式页面的档名，< ? echo ＄PHP_SELF; ?>的意思就是用当前的 PHP 程序来处理这个表单。那么下面的 METHOD=post 表示什么意思呢？其实表单从浏览器发给服务器有两种方法. GET 和 POST. GET 方法将数据打包放置在环境变量 QUERY_STRING 中作为 URL 整体的一部分传递给服务器。 POST 做很多类似 GET 同样的事情, 不同的地方就是它是分离地传递数据给脚本. 你的脚本通过标准输入获取这些数据. QUERY_STRING 环境变量将不再设置.因此 POST 有更好的安全性，尤其如果你的表单中有很多数据的话. 当你用 GET, 这个服务器就分配变量 QUERY_STRING 给所有的表单数据, 但是这个变量可存储量是有限的. 换句话说，如果你有很多数据但是你又用 GET，你会丢失很多数据。 如果你用 POST, 你可以尽可能多地使用数据, 因为这些数据从来也不分配到一个变量里。此外用 post 传递数据还有一个好处，它不会象 get 那样把你传送的数据暴露在浏览器的地址栏中，比如象下面这种：form.php?name=genius&pwd=123456 ，明白了吧？所以还是用 post 让人安心一点啦。