PHP新手上路(六)
发布:smiling 来源: php粉丝网 添加日期:2013-11-17 浏览: 评论:0
建设一个简单交互的网站(二)
5.5 计数器
让我们在首页上加上一个计数器。这个例子已经被讲过多次了,但是还是有利于演示怎样读写文件以及创建自己的函数。counter.inc包含以下代码:
- <?
- /*
- || 一个简单的计数器
- */
- function get_hitcount($counter_file)
- {
- /* 将计数器归零
- 这样如果计数器还未被使用,初始值将是1
- 你当然也可以把初始值设成20000来骗人咯
- */
- $count=0;
- // 如果存放计数器文件已经存在,读取其中的内容
- if ( file_exists($counter_file) )
- {
- $fp=fopen($counter_file,"r");
- // 我们只取了前20位,希望你的站点不要太受欢迎啊
- $count=0 fgets($fp,20);
- // 由于函数fgets()返回字符串,我们可以通过加0的方法将其自动转换为整数
- fclose($fp);
- // 对文件操作完毕
- }
- // 增加一次计数值
- $count ;
- // 将新的计数值写入文件
- $fp=fopen($counter_file,"w");
- fputs($fp,$count);
- fclose($fp);
- # 返回计数值
- return ($count);
- }
- ?>
然后我们更改front.php3文件以显示这个计数器:
- <?
- include("include/counter.inc");
- // 我把计数值放在文件counter.txt中,读出并输出
- printf ("<CENTER><B>d</B></CENTER> <BR> n",
- get_hitcount("counter.txt"));
- include("include/footer.inc");
- ?>
看看我们的新front.php3
5.6 反馈表单
让我们再添加一个反馈表单以便你的浏览者填写并e-mail给你。举例来说我们用一种很简单的方法实现它,我们只需要两个页面:一个为浏览者提供输入表单;一个获得表单数据并处理、mail给你。
PHP中获取表单数据是很简单的。当一个表单被发送后,表单中所包含的各个元素被赋上了相应的值,而这样就可以像引用一般变量一样使用了。
- <FORM name="myform" ACTION="process_form.php3" METHOD="POST">
- <INPUT TYPE="TEXT" NAME="mytext" VALUE="Some Value">
- </FORM>
在process_form.php3中,变量$mytext就被赋予了输入的值--非常简单!同样的,你可以从列表框、多选框、单选框、按钮等表单元素中取得变量值。你唯一要做的就是为表单中的每一个元素取名以便将来可以引用。
根据这个方法,我们可以生成一个简单的包含三个元素的表单:姓名、e-mail地址和留言。当浏览者发送表单后,处理该表单的PHP页面(sendfdbk.php3)读取数据,检查姓名是否为空,最后将数据mail给你。
表单:form.php3
- <?
- include("include/common.inc");
- $title = "Feedback";
- include("include/header.inc");
- ?>
- <P>
- <FORM ACTION="sendfdbk.php3" METHOD="POST">
- <INPUT TYPE="text" NAME="name" value="Your name" SIZE="20" MAXLENGTH="30">
- <INPUT TYPE="text" MAXLENGTH="40" WIDTH="20" value="Your Email" NAME="email">
- <BR>
- <TEXTAREA ROWS="7" COLS="40" NAME="comment">
- Your feedback on my home page.
- </TEXTAREA>
- <BR>
- <INPUT TYPE="submit" VALUE="Send Feedback!">
- </FORM>
- </P>
- <?
- include("include/footer.inc");
- ?>
处理表单:sendfdbk.php3
- <?
- include("include/common.inc");
- $title = "Feedback";
- include("include/header.inc");
- if ( $name == "" )
- {
- // 现在我很讨厌匿名的留言!
- echo "Duh ? How come you are anonymous?";
- }
- elseif ($name == "Your name")
- {
- // 这个浏览者真是不想透露姓名啊!
- echo "Hello ? <B>Your name</B> is supposed to be replaced with
- your actual name!</B>";
- }
- else
- {
- // 输出一段礼貌的感谢语
- echo "
- Hello, $name.
- <BR>
- Thank you for your feedback. It is greatly appreciated.
- <BR>
- Thanking you
- <BR>
- $MyName <BR>
- $MyEmailLink
- ";
- // 最后mail出去
- mail($MyEmail, "Feedback.","
- Name : $name
- E-mail : $email
- Comment : $comment
- ");
- }
- include("include/footer.inc");
- ?>
注意:如果在你的测试过程中,该程序末能正常工作,请查看你的PHP配置文件(PHP3为php3.ini,PHP4为php.in)有没有设置好。因为本程序需要您的PHP配置文件作如下的设置:
Tags:php新手入门 php新手上路
分享到:
收藏

相关文章
- ·PHP新手上路(一)(2013-11-17)
- ·PHP新手上路(二)(2013-11-17)
- ·PHP新手上路(三)(2013-11-17)
- ·PHP新手上路(四)(2013-11-17)
- ·PHP新手上路(五)(2013-11-17)

推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)
- 程序员:能花钱的,就不要花时间(2)
- php中超级简单文件上传代码(2)
- php验证码生成与应用实例(2)
- PHP中校验ISBN码的函数详解(2)
- php 面向对象编程之构造方法与析构方法(2)
- 程序员的四种类型(2)
- PHP自学要多久?(2)
- linux系统systemtap监控应用问题分析(2)
- 帝国CMS内容点击无限加载思路分享(2)
- PHPCMS模块的安装和卸载(2)