动网论坛,站长建站首选,国内使用量最多的论坛软件 动网论坛官方技术讨论区 站长工具 申请属于您自己的免费论坛
首页 | 新闻资讯 | 网站运营 | 网络编程 | 数据库 | 服务器 | 网页设计 | 图像媒体 | 网络应用 | 搜索优化 | 资源下载 | 动网主机 | DVBOX
    本站内  互联网 ASP论坛  ASP.Net论坛  PHP论坛
  
   PHP → 阅读文章

 用php做一个简单的表单

作者来源: 
阅读 1368 人次 , 2006-3-29 4:12:00 


php最有用的特性之一是它能够自动将表单中的变量值赋予php变量。这使得表单处理变得非常快捷。



因此,如果你送出一个内含输入栏位值的表单如下:

<input type=text name="name" value="glen morris">

当你用php处理此页面,$name变量的值就会是 glen morris。

因此,你可以用如下的方式把值打印出来:

echo "hi $name!";

或者像这样测试其值:

if ($name == "glen morris") { echo "please check your email."; }

这有一个用php处理基本表单的很好方法。例如,我们需要做一个简单的问卷调查,要求填写者必须填写他们的姓名,电子邮件地址,并回答一些我们感兴趣的问题。

首先,我们会将页面拆成两个函数。因此,我们只需要写一个 php页面并用程序逻辑去控制对用户的显示内容就可以了,而不是写两个单独的网页(一个针对表单部分,另外一个针对处理表单的cgi脚本)。

显示表单
第一个函数用来显示表单:

<?php

functiondisplay_form() {

global $php_self;

?>

<form target="<?php echo $php_self; ?>" method=get>

name: <input type=text name="name"><br>

favorite cheese: <input type=radio name="cheese" value="brie">very soft french brie

<input type=radio name="cheese" value="cheddar">farmhouse english cheddar

<input type=radio name="cheese" value="mozzarella">italian buffalo mozzarella

favorite times to eat cheese:

<input type=checkbox name="times[]" value="m">morning

<input type=checkbox name="times[]" value="n">noon

<input type=checkbox name="times[]" value="d">dinner

<input type=checkbox name="times[]" value="l">late night

<input type=hidden name="stage" value="results">

<input type=submit value="thanks!">

</form>

<?php

}

?>
php最有用的特性之一是它能够自动将表单中的变量值赋予php变量。这使得表单处理变得非常快捷。



因此,如果你送出一个内含输入栏位值的表单如下:

<input type=text name="name" value="glen morris">

当你用php处理此页面,$name变量的值就会是 glen morris。

因此,你可以用如下的方式把值打印出来:

echo "hi $name!";

或者像这样测试其值:

if ($name == "glen morris") { echo "please check your email."; }

这有一个用php处理基本表单的很好方法。例如,我们需要做一个简单的问卷调查,要求填写者必须填写他们的姓名,电子邮件地址,并回答一些我们感兴趣的问题。

首先,我们会将页面拆成两个函数。因此,我们只需要写一个 php页面并用程序逻辑去控制对用户的显示内容就可以了,而不是写两个单独的网页(一个针对表单部分,另外一个针对处理表单的cgi脚本)。

显示表单
第一个函数用来显示表单:

<?php

functiondisplay_form() {

global $php_self;

?>

<form target="<?php echo $php_self; ?>" method=get>

name: <input type=text name="name"><br>

favorite cheese: <input type=radio name="cheese" value="brie">very soft french brie

<input type=radio name="cheese" value="cheddar">farmhouse english cheddar

<input type=radio name="cheese" value="mozzarella">italian buffalo mozzarella

favorite times to eat cheese:

<input type=checkbox name="times[]" value="m">morning

<input type=checkbox name="times[]" value="n">noon

<input type=checkbox name="times[]" value="d">dinner

<input type=checkbox name="times[]" value="l">late night

<input type=hidden name="stage" value="results">

<input type=submit value="thanks!">

</form>

<?php

}

?>



首先,如同我们处理$php_self一样,我们获取表单里面的全局变量。然后检查cheese选项中哪一个被选中以按选择创建回应。



下面,我们使用count()函数,以计算被选为喜好时段的时段数。在过去,必须通过检查$cheese每一个可能的值来实现,而现在我们只要利用大于、小于来比较$favorite_times的大小就可以了。如果你希望知道“$favorite_times > 1 && $favorite_times < 4”中“&&”的含义,它表示“and”。因此,$favorite_times必须大于一而且小于四,此条件才能成立。

在代码最后,我们输出用户名以及我们提供给他的信息。当然,你也可以实现各种各样有趣的变化,例如,将信息存在数据库中,或通过查询数据库中信息并以适当格式返回结果。

组合表单
现在我们已得到此二函数,接着只需要再放入一小段代码,就可以把二者连接一起,并建立代码所需的逻辑关系。在display_form() 以及process_form() 下加入以下代码:



<?php

if (empty($stage)) { display_form(); }

else { process_form(); }



?>



首先,我们检查变量$stage是否为空。在 php中,一个变量如果未曾初始化(即未曾赋值)或其值为零(也就是被赋值为零,即空白字串或者是零值),则该变量被视为空值。当用户首次访问网页时,$stage变量值为空。因此我们希望显示表单;否则我们将处理表单内容。



以上即如何使用php处理表单的过程。

 
 收藏本文  打印本文  论坛讨论  关闭窗口
· 上一篇:学习用php创建多页表单
· 下一篇:使用PHP模拟HTTP认证
· 用PHP将数据导入到Foxmail
· 在数据库中使用对象的好处
· PHP中实现进程间通讯
· 最简单的文本计数器
· Win2000下PHP服务器安装攻略


关于本站 | 联系我们 | 业务合作 | 客户案例 | 诚聘英才 | 广告合作 | 收藏本站
海口动网先锋网络科技有限公司版权所有
Copyright © 2000 - 2006 Cndw.Com
中华人民共和国电信与信息服务业务经营许可证编号 琼 ICP 020077