无需数据库在线投票调查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调用Java对象的方法
Oct 09 PHP
PHP实现文件安全下载
Oct 09 PHP
在线短消息收发的程序,不用数据库
Oct 09 PHP
php防攻击代码升级版
Dec 29 PHP
浅析PKI加密解密 OpenSSL
Jul 01 PHP
PHP实现把数字ID转字母ID
Aug 12 PHP
php使用base64加密解密图片示例分享
Jan 20 PHP
将FCKeditor导入PHP+SMARTY的实现方法
Jan 15 PHP
PHP批量去除BOM头代码分享
Jun 26 PHP
CodeIgniter 完美解决URL含有中文字符串
May 13 PHP
php中json_encode不兼容JSON_UNESCAPED_UNICODE的解决方案
May 31 PHP
php、mysql查询当天,查询本周,查询本月的数据实例(字段是时间戳)
Feb 04 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 检查电子邮件函数(自写)
2014/01/16 PHP
PHP curl实现抓取302跳转后页面的示例
2014/07/04 PHP
php文件上传 你真的掌握了吗
2016/11/28 PHP
JS验证IP,子网掩码,网关和MAC的方法
2015/07/02 Javascript
jquery实现鼠标悬浮停止轮播特效
2020/08/20 Javascript
浅谈JavaScript 标准对象
2016/06/02 Javascript
bootstrap读书笔记之CSS组件(上)
2016/10/17 Javascript
AngularJS中directive指令使用之事件绑定与指令交互用法示例
2016/11/22 Javascript
Webpack实现按需打包Lodash的几种方法详解
2017/05/08 Javascript
AngularJs实现聊天列表实时刷新功能
2017/06/15 Javascript
浅谈JS中的常用选择器及属性、方法的调用
2017/07/28 Javascript
JavaScript中递归实现的方法及其区别
2017/09/12 Javascript
微信小程序使用picker实现时间和日期选择框功能【附源码下载】
2017/12/11 Javascript
react-router browserHistory刷新页面404问题解决方法
2017/12/29 Javascript
js实现unicode码字符串与utf8字节数据互转详解
2019/03/21 Javascript
js 计算图片内点个数的示例代码
2019/04/04 Javascript
vue改变循环遍历后的数据实例
2019/11/07 Javascript
javascript实现鼠标点击生成文字特效
2019/12/24 Javascript
Vue结合路由配置递归实现菜单栏功能
2020/06/16 Javascript
JavaScript 事件代理需要注意的地方
2020/09/08 Javascript
详解阿里Node.js技术文档之process模块学习指南
2021/01/04 Javascript
JavaScript实现点击自制菜单效果
2021/02/02 Javascript
vue仿携程轮播图效果(滑动轮播,下方高度自适应)
2021/02/11 Vue.js
[01:31:22]DOTA2-DPC中国联赛定级赛 LBZS vs Magma BO3第二场 1月10日
2021/03/11 DOTA
Python实现备份MySQL数据库的方法示例
2018/01/11 Python
python中metaclass原理与用法详解
2019/06/25 Python
在cmd中查看python的安装路径方法
2019/07/03 Python
Python操作列表常用方法实例小结【创建、遍历、统计、切片等】
2019/10/25 Python
python利用proxybroker构建爬虫免费IP代理池的实现
2021/02/21 Python
python matplotlib工具栏源码探析二之添加、删除内置工具项的案例
2021/02/25 Python
什么是事务?事务有哪些性质?
2012/03/11 面试题
高级Java程序员面试要点
2013/08/02 面试题
机关作风建设自查报告及整改措施
2014/10/21 职场文书
冰峪沟导游词
2015/02/09 职场文书
浅谈node.js中间件有哪些类型
2021/04/29 Javascript
Go本地测试解耦任务拆解及沟通详解Go本地测试的思路沟通的重要性总结
2022/06/21 Golang