如果你来这里是想学习基本的PHP4或者PHP5知识,那这就是为你准备的,开始享受吧!
并非你的期待
在该系列教程的第一章中(《PHP开发经典教程(Part 1):入门,》http://tech.it168.com/o/2007-08-20/200708201014531.shtml),我向你简单介绍了PHP,以及PHP是如何适应你的Web应用软件开发环境的。我也教给你了PHP变量的基本内容,以及如何将他们相加、相乘与连接在一起。
既然你已经知道了PHP的基本内容,那么该到学习PHP更好的特征之一的时间了,这就是它能够自Web表单自动接收用户输入并将其转换为PHP变量。如果你习惯于编写Perl代码以检索在你的CGI脚本中的表单值,那么,PHP更加简单的方法将会使你高兴的热泪四溅。掏出手绢继续向下看吧。
表单(Form)
表单(Form)一直是向你的Web站点添加交互性的最快及最容易的方式之一。表单允许你向客户询问他们是否喜欢你的产品、向偶尔的拜访者要求他们在你的站点留下评价,以及向漂亮的姑娘询问她们的电话号码。并且,PHP可充分地简化处理自Web-based表单所产生的数据的任务,正如第一个例子所示范。这个例子含有两个脚本,一个含有HTML表单(即,form.htm)且另一个含有表单处理逻辑(message.php)。下面是form.htm:
html>
<head></head>
<body>
<form action="message.php" method="post">
Enter your message: <input type="text" name="msg" size="30">
<input type="submit" value="Send">
</form>
</body>
</html>
在此页面中的关键行在于<form>标签这一行。
<form action="message.php" method="post">
...
</form>
正如你可能已经知道的,<form>标签的“action”属性指定了服务器端脚本(在该实例中为message.php)的名称,该服务器端脚本将处理输入表单中的信息。“method”属性指定了信息将如何传递。
表单操作
现在来看看问题的另一半:message.php脚本。该脚本读取用户提交的数据且“用该数据来做一些事情”。下面就是message.php的内容:
<html>
<head></head>
<body>
<?php
// retrieve form data
$input = $_POST['msg'];
// use it
echo "You said: <i>$input</i>";
?>
</body>
</html>
当你将一些数据输入form.htm(让我们输入“Boo”)内且将其提交时,表单处理器message.php对其进行读取且向你进行展示(输出结果是”You said:Boo”)。因此,不论什么时候将一表单提交至PHP脚本,在该表单内的所有变量值对将通过一特殊的PHP容器变量$_POST自动变成可在脚本内使用的变量值对。接着可通过使用$_POST容器内的其“名称”而存取表单变量的值,正如我在上述脚本中所做的。
显然,PHP也支持表单提交的GET方法。所有你需要做的就是将“method”属性改变为“get”且从变量$_GET而不是$_POST取值。$_GET与$_POST变量实际上是一种特殊类型的PHP类型,该类型被称为“数组(Array)”——我将在稍后教给你们。在此不要对其太担心,仅仅确保你能轻松地用PHP自一表单获取简单的值,且接着向下学习更多的在本文中有用的操作符即可。