无需数据库在线投票调查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 相关文章推荐
一个基于PDO的数据库操作类
Mar 24 PHP
php 判断访客是否为搜索引擎蜘蛛的函数代码
Jul 29 PHP
php 常用算法和时间复杂度
Jul 01 PHP
关于URL最大长度限制的相关资料查证
Dec 23 PHP
Laravel 5框架学习之数据库迁移(Migrations)
Apr 08 PHP
解决ThinkPHP下使用上传插件Uploadify浏览器firefox报302错误的方法
Dec 18 PHP
PHP载入图像imagecreatefrom_gif_jpeg_png系列函数用法分析
Nov 14 PHP
yii 2.0中表单小部件的使用方法示例
May 23 PHP
详细解读php的命名空间(一)
Feb 21 PHP
PHP APP微信提现接口代码
Sep 30 PHP
php中对象引用和复制实例分析
Aug 14 PHP
基于PHP实现邮箱验证激活过程详解
Oct 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
跨域表单提交状态的变相判断代码
2009/11/12 Javascript
解读JavaScript中 For, While与递归的用法
2013/05/07 Javascript
简单的两种Extjs formpanel加载数据的方式
2013/11/09 Javascript
快速解决jquery之get缓存问题的最简单方法介绍
2013/12/19 Javascript
jquery easyui combox一些实用的小方法
2013/12/25 Javascript
js正则表达式中test,exec,match方法的区别说明
2014/01/29 Javascript
jquery、js操作checkbox全选反选
2014/03/12 Javascript
JavaScript数据推送Comet技术详解
2016/04/07 Javascript
Canvas实现放射线动画效果
2017/02/15 Javascript
JavaScript基于扩展String实现替换字符串中index处字符的方法
2017/06/13 Javascript
微信JSAPI Ticket接口签名详解
2020/06/28 Javascript
node中的session的具体使用
2018/09/14 Javascript
bootstrap与pagehelper实现分页效果
2018/12/29 Javascript
详解关于html,css,js三者的加载顺序问题
2019/04/10 Javascript
解决使用layui的时候form表单中的select等不能渲染的问题
2019/09/18 Javascript
JavaScript遍历数组的方法代码实例
2020/01/14 Javascript
vuejs中父子组件之间通信方法实例详解
2020/01/17 Javascript
vue集成一个支持图片缩放拖拽的富文本编辑器
2021/01/29 Vue.js
vue 使用饿了么UI仿写teambition的筛选功能
2021/03/01 Vue.js
Python查看多台服务器进程的脚本分享
2014/06/11 Python
python使用xlrd模块读写Excel文件的方法
2015/05/06 Python
python自动截取需要区域,进行图像识别的方法
2018/05/17 Python
python实现文本界面网络聊天室
2018/12/12 Python
利用PyCharm Profile分析异步爬虫效率详解
2019/05/08 Python
Python OpenCV调用摄像头检测人脸并截图
2020/08/20 Python
Python解析json代码实例解析
2019/11/25 Python
Python使用cn2an实现中文数字与阿拉伯数字的相互转换
2021/03/02 Python
eDreams意大利:南欧领先的在线旅行社
2018/11/23 全球购物
初始化了一个没有run()方法的线程类,是否会出错?
2014/03/27 面试题
高中体育教学反思
2014/01/24 职场文书
学校春季防火方案
2014/06/08 职场文书
父亲节活动策划方案
2014/08/24 职场文书
2016幼儿园教师年度考核评语
2015/12/01 职场文书
七个Python必备的GUI库
2021/04/27 Python
OpenCV-Python实现人脸磨皮算法
2021/06/07 Python
浅谈Python从全局与局部变量到装饰器的相关知识
2021/06/21 Python