无需数据库在线投票调查php代码


Posted in PHP onJuly 20, 2016

这是一款由php +txt文本文件做的在线调用投票系统,无需数据库支持可以完成在线用户调查功能,具体内容如下

<html> 
<head> 
<title>在线调查程序代码</title> 
</head> 
<body> 
<form method="post" action="survey.php"> 
 <p><input type="radio" value="0" name="vote">调查项目一</p> 
 <p><input type="radio" name="vote" value="1">调查项目二</p> 
 <p><input type="radio" name="vote" value="2">调查项目三</p> 
 <p><input type="radio" name="vote" value="3">调查项目四</p> 
 <p><input type="radio" name="vote" value="4">调查项目五</p> 
 <p><input type="hidden" name="go" value="1"> 
 <p><input type="submit" value="提交" name="b1"></p> 
 <a href="#">查看结果</a> 
</form> 
</body> 
</html> 
//survey.php 
<? 
/* 
无需数据库教程在线投票调查php代码 
这是一款由php +txt文本文件做的在线调用投票系统,无需数据库支持可以完成在线用户调查功能。 
*/ 
 $data="data.txt"; 
 $votes="survey.txt"; 
 $dataf=file($data);    /*读出调查项目文件中的项目*/ 
 $file_votes=fopen($votes, "r"); 
 $line_votes=fgets($file_votes, 255); /*读出已经记录的调查结果*/ 
 fclose($file_votes); 
 $single_vote=explode("|", $line_votes); /* 并将数据按指定的字串切开,再将字串传回到数组变量中 */ 
  if ($result!=1)     /*如果已经接受了调查*/ 
  { 
  $file_votes=file($votes, "r"); 
  if ($remote_addr == $file_votes[1])              /*检查是不是同一个人*/ 
   { 
    echo "<center><font color=red>您已投过票了,谢谢您的参与!</font></center>"; 
    exit; 
   } 
  /*如果ip不重复,则执行以下程序*/ 
  $ficdest=fopen($votes, "w"); 
  for ($i=0; $i<=count($dataf)-1; $i++) 
   { 
     if ($i == $vote) 
     {                 /*判断选择了哪个项目*/ 
     $single_vote[$i]+=1; 
     } 
       fputs($ficdest, "$single_vote[$i]|"); /*将数据写回文件*/ 
   } 
    fputs($ficdest, "n$remote_addr");/* //写入投票者ip*/ 
  fclose($ficdest); 
  $result=1; /*投票成功*/ 
 } 
 /*写入投票结果后并显示投票结果*/ 
 if ($result==1) 
 { 
  echo "<table cellpadding=10>"; 
  for ($i=0; $i<=count($dataf)-1; $i++) 
  { 
   /*取得投票总数*/ 
   $tot_votes+=$single_vote[$i]; 
  } 
  for ($i=0; $i<=count($dataf)-1; $i++) 
  { 
   $imag=strval($i).".gif";/*判断用哪种条形图片来显示统计结果*/ 
   $stat[$i]=$single_vote[$i]/$tot_votes*100; /*计算百分比*/ 
   $scla=$stat[$i]*5;/*条形图和放大倍数,这里是安百分数的5倍的相素的宽度来显示的*/ 
   echo "<tr><td><li><font face=verdana size=2>"; 
   echo "$dataf[$i]</font></td><td align=left><font face=verdana size=2>"; 
   echo "<img src="$imag" height=20 width=$scla align=middle> ";/*输出条形码图*/ 
   printf("%.1f", "$stat[$i]"); 
   echo "%</font></td><td align=center><font face=verdana size=2>"; 
   /*输出本栏目投票数*/ 
   echo "$single_vote[$i]</font>"; 
   echo "</td></tr>"; 
  } 
  echo "</table><p>"; 
  echo "<font face=verdana size=2>总投票数:$tot_votes </font>"; 
} 
/* 
data.txt 文件 
调查项目一 
调查项目二 
调查项目三 
调查项目四 
调查项目五 
*/ 
?>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
谈谈PHP语法(5)
Oct 09 PHP
也谈 PHP 和 MYSQL
Oct 09 PHP
邮箱正则表达式实现代码(针对php)
Jun 21 PHP
php实现图片缩放功能类
Dec 18 PHP
PHP中CURL的CURLOPT_POSTFIELDS参数使用细节
Mar 17 PHP
php出现内存位置访问无效错误问题解决方法
Aug 16 PHP
php调用shell的方法
Nov 05 PHP
php模拟post提交数据的方法
Feb 12 PHP
PHP结合jQuery实现找回密码
Jul 22 PHP
php基于websocket搭建简易聊天室实践
Oct 24 PHP
浅谈PHP中的面向对象OOP中的魔术方法
Jun 12 PHP
PHP实现简单注册登录系统
Dec 28 PHP
thinkPHP2.1自定义标签库的导入方法详解
Jul 20 #PHP
php自定义函数实现二维数组排序功能
Jul 20 #PHP
Ajax提交表单时验证码自动验证 php后端验证码检测
Jul 20 #PHP
php使用get_class_methods()函数获取分类的方法
Jul 20 #PHP
PHP+Ajax验证码验证用户登录
Jul 20 #PHP
PHP+Ajax实现验证码的实时验证
Jul 20 #PHP
php+ajax注册实时验证功能
Jul 20 #PHP
You might like
PHP array 的加法操作代码
2010/07/24 PHP
Erlang的运算符(比较运算符,数值运算符,移位运算符,逻辑运算符)
2012/07/23 PHP
php实现curl模拟ftp上传的方法
2015/07/29 PHP
Yii2创建控制器(createController)方法详解
2016/07/23 PHP
PHPExcel导出2003和2007的excel文档功能示例
2017/01/04 PHP
php实现连接access数据库并转txt写入的方法
2017/02/08 PHP
php获取微信基础接口凭证Access_token
2018/08/23 PHP
javascript下对于事件、事件流、事件触发的顺序随便说说
2010/07/17 Javascript
filters.revealTrans.Transition使用方法小结
2010/08/19 Javascript
javaScript 删除字符串空格多种方法小结
2012/10/24 Javascript
高效的获取当前元素是父元素的第几个子元素
2013/10/15 Javascript
基于jQuery实现文本框缩放以及上下移动功能
2014/11/24 Javascript
JQuery中属性过滤选择器用法实例分析
2015/05/18 Javascript
jQuery实现html元素拖拽
2015/07/21 Javascript
Angularjs中如何使用filterFilter函数过滤
2016/02/06 Javascript
JS 拼凑字符串的简单实例
2016/09/02 Javascript
详解获取jq ul第一个li定位的四种解决方案
2016/11/23 Javascript
微信小程序中用WebStorm使用LESS
2017/03/08 Javascript
Bootstrap常用组件学习(整理)
2017/03/24 Javascript
JS按钮闪烁功能的实现代码
2017/07/21 Javascript
VUE 使用中踩过的坑
2018/02/08 Javascript
this.$toast() 了解一下?
2019/04/18 Javascript
Angular之jwt令牌身份验证的实现
2020/02/14 Javascript
Python判断操作系统类型代码分享
2014/11/22 Python
Python实现向服务器请求压缩数据及解压缩数据的方法示例
2017/06/09 Python
CSS3实现多背景模拟动态边框的效果
2016/11/08 HTML / CSS
NFL加拿大官方网上商店:NHLShop.ca
2019/03/12 全球购物
财务副总经理工作职责
2013/11/25 职场文书
大三学生做职业规划:给未来找个方向
2014/02/24 职场文书
农民工工资支付承诺函
2014/03/31 职场文书
党的群众路线教育实践活动个人剖析材料
2014/10/07 职场文书
2015年乡镇发展党员工作总结
2015/03/31 职场文书
宣传稿格式范文
2015/07/23 职场文书
认识实习感想
2015/08/10 职场文书
Nginx 根据URL带的参数转发的实现
2021/04/01 Servers
Go语言基础切片的创建及初始化示例详解
2021/11/17 Golang