検索
ホームページphp教程php手册php 之 查询 投票练习(0508),php0508

php 之 查询 投票练习(0508),php0508

练习题目:

解题:

方法一:

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>
#list
{
	width:400px;
	height:300px;}
#jieguo
{
	width:400px;
	height:300px;}
.x
{
	
	float:left;}

</style>
</head>

<body>

<form action="TouChuLi.php" method="post">
<?php
include ("DBDA.class.php");
$db=new DBDA();
//从调研题目表中找出题目代号和名称
$sql="select * from diaoyantimu limit 0,1";
$arr=$db->query($sql);
$tmmc=$arr[0][1];
$tmdh=$arr[0][0];
echo "<div><h2 id="tmmc">{$tmmc}:</h2></div>";
//从调研选项表中输出选项内容:
$sqlxx="select * from diaoyanxuanxiang where timudaihao='{$tmdh}'";
$arrxx=$db->query($sqlxx);
echo "<div id='list'>";
foreach ($arrxx as $v)
{
	echo "<div><input type='checkbox' value='{$v[0]}' name='xx[]'>{$v[1]}</div><br />";
}

?>
<input type="submit" value="提交">
<input type="button" value="查看结果" id="check" onclick="Showjieguo()">
</form>
</div>

<div id="jieguo"><?php
$arr=$_POST["xx"];
include ("../DBDA.class.php");
$db=new DBDA();


foreach($arr as $v)
{
	$sql = "update diaoyanxuanxiang set numbers = numbers+1 where ids = '{$v}'";
	$db->Query($sql,1);//1代表$sql的类型
}
header ("location:TouPiao.php");
?>

 3. 建立访问数据库的类,封装用于引用:

<?php
//执行一个sql语句,返回相应的结果
class DBDA
{
	public $host="localhost";//数据库服务器地址
	public $uid="root";//数据库用户名
	public $password="";//数据库密码
	//执行SQL语句的方法
	//参数里面:$sql代表要执行的sql语句;$type是sql语句的类型,0代表查询,1代表其他(增删改);$db代表要操作的数据库
	function Query($sql,$type=0,$db="mydb")
	{
		//造连接对象
		$dbconnect=new MySQLi($this->host,$this->uid,$this->password,$db);
		//判断连接是否出错
		!mysqli_connect_error() or die("连接失败!");
		//执行sql语句
		$result=$dbconnect->query($sql);
		//判断SQL语句类型
		if($type==0)
		{
			 //如果是查询语句返回结果集的二维数组
			return $result->fetch_all();
			}
		else
		{
			//如果是其他语句,返回true或false
			return $result;
			}		
		}
		
	}

  方法二:

1. 投票主页面:

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>投票</title>
<style>
.x
{
	
	float:left;}

</style>
</head>

<body>

<form action="TouChuLi.php" method="post">
<?php
include ("../DBDA.class.php");
$db=new DBDA();
//从调研题目表中找出题目代号和名称
$sql="select * from diaoyantimu limit 0,1";
$arr=$db->query($sql);
$tmmc=$arr[0][1];
$tmdh=$arr[0][0];
echo "<div><h2 id="tmmc">{$tmmc}:</h2></div>";
//从调研选项表中输出选项内容:
$sqlxx="select * from diaoyanxuanxiang where timudaihao='{$tmdh}'";
$arrxx=$db->query($sqlxx);
echo "<div id='list'>";
foreach ($arrxx as $v)
{
	echo "<div><input type='checkbox' value='{$v[0]}' name='xx[]'>{$v[1]}</div><br />";
}

?>
<input type="submit" value="提交">
<a href="ChaKan.php"><input type="button" value="查看结果" id="check" ></a>
</form>
</body>
</html>

 2. 处理投票页面:

<?php
$arr=$_POST["xx"];
include ("../DBDA.class.php");
$db=new DBDA();


foreach($arr as $v)
{
	$sql = "update diaoyanxuanxiang set numbers = numbers+1 where ids = '{$v}'";
	$db->Query($sql,1);//1代表$sql的类型
}
header ("location:TouPiao.php");
?>

  3. 查看投票结果页面:

<!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>
.x
{
	float:left;}
</style>
</head>
<body>

<?php
include ("../DBDA.class.php");
$db=new DBDA();
//从调研题目表中找出题目代号和名称
$sql="select * from diaoyantimu limit 0,1";
$arr=$db->query($sql);
$tmmc=$arr[0][1];
echo "<div><h2 id="tmmc">{$tmmc}:</h2></div>";
//从调研选项表中输出选项内容:
$sqlxx="select * from diaoyanxuanxiang where timudaihao='{$arr[0][0]}'";
$arrxx=$db->query($sqlxx);

//计算总人数:
$sqlzs="select sum(numbers) from diaoyanxuanxiang where timudaihao='{$arr[0][0]}'";
$zrs=$db->query($sqlzs);

foreach ($arrxx as $v)
{
	 $name=$v[1];//调研项目名称
	 $number=$v[2];//选择该项的人数
	 //判断总人数是否为0
	 if($zrs[0][0]==0)
     {
         $bfb = 0;
     }
     else
     {
          $bfb = ($number/$zrs[0][0])*100;//求百分比
     }
	
	$bfb=round($bfb,2);	//取小数点后两位
	echo "<div>
	<span class='x'>{$name} </span>
	<div  class='x' style='width:200px; height:10px; background-color:#808080'>
	<div style='width:{$bfb}%; height:10px; background-color:#FF8040'> </div>
	</div>
	<span class='x'>{$number}  </span>
	<span class='x'>{$bfb}%</span><br />
	</div><br />";	
}
?>
<br />
<a href="TouPiao.php"><input type="button" value="返回"></a>
</body>
</html>

  

 

网页显示结果:

 

 

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

VSCode Windows 64 ビットのダウンロード

VSCode Windows 64 ビットのダウンロード

Microsoft によって発売された無料で強力な IDE エディター

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。