PHP 练习(投票)
1.建立数据库
表1:DiaoYanTiMu

表2:DiaoYanXuanXiang

2.页面
页面1:投票首页

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<style type="text/css">
#fanhui{ display:none}
</style>
</head> <body>
<form action="tpchuli.php" method="post">

<?php
$db = new MySQLi("localhost","root","123","mydb");
$sql = "select * from diaoyantimu";
$result = $db->query($sql);
$attr = $result->fetch_all();
foreach($attr as $v)
{
echo "<div>{$v[1]}</div>";
$sxx = "select * from diaoyanxuanxiang where timudaihao='{$v[0]}'";
$rxx = $db->query($sxx);
$axx = $rxx->fetch_all();
$bs = 0;
if(!empty($_GET["a"]))
{
$bs = $_GET["a"];
}
$s = $bs==1?"none":"block";
echo "<div id='toupiao' style='display:{$s}'>";
foreach($axx as $v1)
{
echo "<div><input type='checkbox' name='tp[]' value='{$v1[0]}' />{$v1[1]}</div>";
}
echo "</div>";
$s1 = $bs==0?"none":"block";
//显示投票结果
echo "<div id='jieguo' style='display:{$s1}'>";
foreach($axx as $v2)
{
$v2[2]; //当前选项的人数
//求总人数
$szrs = "select sum(numbers) from diaoyanxuanxiang where timudaihao='{$v[0]}'";
$rzrs = $db->query($szrs);
$azrs = $rzrs->fetch_row();
$azrs[0]; //总人数
$bfb = ($v2[2]/$azrs[0])*100;
echo "<div>{$v2[1]}<div style='width:100px; height:10px; border:1px solid black;'><div style='width:{$bfb}%; height:10px; </div></div>{$v2[2]} {$bfb}%</div>";
}
echo "</div>";
}
?>

<input type="submit" value="投票" />
<input type="button" id="jg" value="查看结果" onclick="showjg()" />
<input type="button" id="fanhui" value="返回" onclick="showtp()" />
</form>
</body> <script type="text/javascript">
function showjg()
{
document.getElementById("jieguo").style.display="block";
document.getElementById("toupiao").style.display="none";
document.getElementById("jg").style.display="none";
document.getElementById("fanhui").style.display="block"; } function showtp()
{
document.getElementById("jieguo").style.display="none";
document.getElementById("toupiao").style.display="block";
document.getElementById("jg").style.display="block";
document.getElementById("fanhui").style.display="none";
}
</script>
</html>

页面2:处理页面

<?php
$attr = $_POST["tp"]; $str = implode("','",$attr); $sql = "update diaoyanxuanxiang set numbers = numbers+1 where ids in('{$str}')"; $db = new MySQLi("localhost","root","123","mydb");
$db->query($sql); header("location:toupiao.php?a=1");

PHP 练习(投票)的更多相关文章
- 运用php做投票题,例题
要求大概是这样的,有一个题目,题目下面是复选框,要求点完复选框提交后会变成进度条,各选项的进度条百分比,和投票数量 首先还是要在数据库建两张表,如下: 要完成这个题目,需要建两个页面 <!DOC ...
- easy_UI 投票列表
首先我们考虑一下在项目投票种用到的属性(ID,投票标题,备选项目,参与人数) entity package cn.entity; public class GridNode { private Lon ...
- 利用django创建一个投票网站(六)
建你的第一个 Django 项目, 第六部分 这一篇从第五部分(zh)结尾的地方继续讲起.再上一节中我们为网络投票程序编写了测试,而现在我们要为它加上样式和图片. 除了服务端生成的 HTML 以外,网 ...
- 利用django创建一个投票网站(五)
创建你的第一个 Django 项目, 第五部分 这一篇从第四部分(en)结尾的地方继续讲起.我们在前几章成功的构建了一个在线投票应用,在这一部分里我们将其创建一些自动化测试. 自动化测试简介 自动化测 ...
- 利用django创建一个投票网站(四)
创建你的第一个 Django 项目, 第四部分 这一篇从第三部分(zh)结尾的地方继续讲起.我们将继续编写投票应用,专注于简单的表单处理并且精简我们的代码. 编写一个简单的表单 让我们更新一下在上一个 ...
- 利用django创建一个投票网站(三)
创建你的第一个 Django 项目, 第三部分 这一篇从第二部分(zh)结尾的地方继续讲起.我们将继续编写投票应用,并且聚焦于如何创建公用界面--也被称为"视图". 设计哲学 Dj ...
- 利用django创建一个投票网站(二)
创建你的第一个 Django 项目, 第二部分 这一篇从第一部分(zh)结尾的地方继续讲起.本节我们将继续写 Web 投票应用,并主要关注 Django 提供的自动生成的管理页面(admin site ...
- 利用django创建一个投票网站(一)
这是教程的原始链接:http://django-intro-zh.readthedocs.io/zh_CN/latest/part1/ 创建你的第一个 Django 项目, 第一部分 来跟着实际项目学 ...
- Django基础,Day5 - form表单投票详解
投票URL polls/urls.py: # ex: /polls/5/vote/ url(r'^(?P<question_id>[0-9]+)/vote/$', views.vote, ...
- PHP类的封装和做投票和用进度条显示
三处理传过来的数据1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http:// ...
随机推荐
- 如何将同一 VNET 下的虚拟机从经典部署模型迁移到 Azure Resource Manager
本文内容 适用场景 解决方案 适用场景 用户拥有多个云服务但是在同一个 VNET 下,希望将这些虚拟机从经典部署模型(以下简称:ASM)迁移到 Azure Resource Manager(以下简称: ...
- Vue2学习笔记:数据交互vue-resource
基本语法 必须引入一个库:vue-resource github地址 // 基于全局Vue对象使用http Vue.http.get('/someUrl', [options]).then(succe ...
- Linux基础优化和安全重点小结
Linux基础优化和安全重点小结 1.不用root管理,以普通用户的名义通过sudo管理授权(/etc/sudoers) 2.更改默认的ssh服务端口,禁止root用户远程连接,甚至监听 ...
- 《C++ Primer Plus》读书笔记之八—对象和类
第十章 对象和类 1.面向对象编程(OOP)的特性:抽象.封装和数据隐藏.多态.继承.代码的重用性. 2.指定基本类型完成了3项工作:①决定数据对象需要的内存数量.②决定如何解释内存中的位(lon ...
- Sublime Text 3 调用cmd运行c、java、python、batch file
一.调用cmd运行c(首先复制MinGW到C盘根目录,并添加环境变量) Tools --> Build System --> New Build System 删除所有内容 复制如下代码进 ...
- (转)透明光照模型与环境贴图之基础理论篇(折射率、色散、fresnel定律) .
摘抄“GPU Programming And Cg Language Primer 1rd Edition” 中文名“GPU编程与CG语言之阳春白雪下里巴人” 材质和光的交互除了反射现象,对于透明物 ...
- 一、HTML概述 二、web相关的概念 三、HTML的常用标签
一.HTML概述###<1>概念 HTML:Hypertext Markup Language,超文本 标记语言,用来描述网页的一种语言. 非编程语言,由浏览器直接解释运行. ###< ...
- multi_index_container
转自:https://blog.csdn.net/buptman1/article/details/38657807 multi_index_container: Boost Multi-index ...
- Uva1395 POJ3522 Slim Span (最小生成树)
Description Given an undirected weighted graph G, you should find one of spanning trees specified as ...
- 微软YY公开课[《微软中国云计算Azure平台体验与新企业架构设计》 周六晚9点
YY频道是 52545291//@_勤_: YY账号真的是一次一账号啊! 全然记不得之前注冊的//@老徐FrankXuLei: 最火爆的微软免费公开课.第一次顶峰126人.第二次96人.第三次我们又来 ...