這篇文章主要為大家詳細介紹了php查詢操作實現投票功能的具體代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
本文實例為大家分享了php查詢操作實現投票功能的代碼,供大家參考,具體內容如下
題目:
解題方法匯總:
方法一:
1. 投票主頁面:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
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
>{$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"
style
=
"display:none"
>
<?
php
//計算總人數:
$
sqlzs
=
"select sum(numbers) from diaoyanxuanxiang where timudaihao='{$tmdh}'"
;
$zrs=$db->query($sqlzs);
foreach ($arrxx as $v)
{
$name=$v[1];
$number=$v[2];
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
>
</
div
>
<
br
/>
";
}
?>
<
input
type
=
"button"
value
=
"返回"
id
=
"fanhui"
onclick
=
"Showfanhui()"
>
</
div
>
<
script
>
function Showjieguo()
{
document.getElementById("list").style.display="none";
document.getElementById("jieguo").style.display="block";
}
function Showfanhui()
{
document.getElementById("list").style.display="block";
document.getElementById("jieguo").style.display="none";
}
</
script
>
</
body
>
</
html
>
|
2.處理投票頁面:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
<?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. 建立訪問數據庫的類,封裝用於引用:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
<?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. 投票主頁面:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
<
html
>
<
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
>{$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. 處理投票頁面:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
<?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. 查看投票結果頁面:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
<
html
>
<
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
>{$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
>
|
顯示結果:
以上就是本文的全部內容,希望對大家學習php程序設計有所幫助。