当前位置: 首页 > 图文教程 > 网络编程 > PHP > 实例学习PHP之投票程序篇(二)

PHP
php 多线程上下文中安全写文件实现代码
PHP类的使用 实例代码讲解
用php实现让页面只能被百度gogole蜘蛛访问的方法
php 学习笔记
PHP编程过程中需要了解的this,self,parent的区别
php 操作excel文件的方法小结
使用PHP获取网络文件的实现代码
PHP 巧用数组降低程序的时间复杂度
php下将XML转换为数组
php 文件上传代码(限制jpg文件)
php 无极分类(递归)实现代码
PHP 采集获取指定网址的内容
PHP 将图片按创建时间进行分类存储的实现代码
PHP 存储文本换行实现方法
PHP 批量更新网页内容实现代码
用PHP查询搜索引擎排名位置的代码
用php实现的获取网页中的图片并保存到本地的代码
php实现首页链接查询 友情链接检查的代码
处理php自动反斜杠的函数代码
php实现的遍历文件夹下所有文件,编辑删除

实例学习PHP之投票程序篇(二)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 262 ::
收藏到网摘: n/a

      
  实例学习PHP之投票程序篇(二)
  作 者 : 地藏
  
  
     好了,基础的东西已经学完,让我们来进行实战吧!大家先下这个范例程序。然后可以在自己的平台上先试试看。相信这样会得到一点感性认识。
  
     在这个应用中一共使用了三个文件vote.php,config.php,1.gif以及一个保存数据的文件(该文件的名字可以自由设定,在这里我们设为sum.txt),其中vote.php是主程序文件,config.php则用于设置一些经常需要修改的信息。
  
      //config.php文件
  
     < ?
  
     //title变量设定本html档中的title标记,也就是在浏览器标题栏里出现的标题
     $title=读者类型调查表;
  
     //设定调查内容。这里用了一个数组,注意用""号把内容括起来
     $option= array("学生","工人","农民","知识分子","资本家","流氓");
  
     //设定调查结果保存到哪个文件中去
     $countfile = "sum.txt";
  
     //设定同一机器可以再次投票的时间
     $limitdate = time()+60*60*24*365;
  
     ?>
  
      // vote.php文件
  
     /*首先将配置信息装进来,这里我简单说明一下 require和include的区别,require通常放在PHP 程序的最前面,PHP 程式在执行前,就会先读入 require 所指定引入的档案,使它变成 PHP 程式网页的一部份。常用的函式,亦可以这个方法将它引入网页中。 include 则一般是放在流程控制的处理区段中。PHP 程式网页在读到 include 的档案时,才将它读进来。这种方式可以把程式执行时的流程简单化。 */
  
     < ? require "config.php";?>
  
     /*下面这部分就是cookie了,它的expire时间在上面的config.php中设置,另外大家可能已经发现了,在这里有两个 if比较语句,第一个是检测是否已经有cookie设置,第二个则是为了避免人家还没有投票程序就把cookie发出去。*/
     < ?
     if (isset($vote) && $vote=="Ready") $status = 1;
     else $status=0;
     if ($ready=="true")
     {
     setcookie("vote","Ready",$limitdate);
     }
     ?>
  
     < html>
     < head>
     < title>< ? echo $title ?>< /title>
     < meta http-equiv="Content-Type" content="text/html; charset=gb2312">
     < /head>
  
     < body bgcolor="#FFFFFF">
  
     //读出原来的选票结果,赋给变量$result
     < ?
     if (file_exists ($countfile)){
     $result = file($countfile);
     }
     ?>
  
     /*下面是主程序 用switch做了三个分支,Case 1、查看结果;Case 2、提交选择;Case 3、生成表   单*/
     < ?
     switch ($elect) {
  
  
     /* 查看结果,实际就是把上面用file()函数读出来的变量显示出来*/
     case "查看结果":
     echo "< table border='0'>";
     for($i=0;$i< count($result);$i++){
     echo "< tr>"."< td>".$option[$i]."< /td>";
     echo "< td>"."< img src="/upload/tech/20091102/20091102235133_c058f544c737782deacefa532d9add4c.gif" width='";
     echo "$result[$i]*10";
     echo "' height='8'> < /td>";
     echo "< td>"."    ".$result[$i]."< /td>< /tr>";
     }
     echo "< /table>";
     break;
  
  
     /*把选择结果写入到文件中去,注意要用flock把文件锁住!虽然对投票程序来说这个问题不是特别   突出*/
     case "提交":
     if ($status == 1){
     echo "你已经投过票了";