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

PHP
利用discuz实现PHP大文件上传应用实例代码
php 遍历显示文件夹下所有目录、所有文件的函数,没有分页的代码
php在字符串中查找另一个字符串
php下HTTP Response中的Chunked编码实现方法
PHP实现定时生成HTML网站首页实例代码
PHP下一个非常全面获取图象信息的函数
PHP strtr() 函数使用说明
php 删除无限级目录与文件代码共享
php AJAX实例根据邮编自动完成地址信息
php miniBB中文乱码问题解决方法
cmd下运行php脚本
PHP 遍历XP文件夹下所有文件
php 移除数组重复元素的一点说明
discuz论坛 用户登录 后台程序代码
Optimizer与Debugger兼容性问题的解决方法
Zend Studio 无法启动的问题解决方法
php 页面执行时间计算代码
php smarty的预保留变量总结
php获取网页内容方法总结
php读取msn上的用户信息类

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 263 ::
收藏到网摘: 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 "你已经投过票了";