一小时学会简易在线投票系统(php)

烟雨青岚
发布: 2023-04-09 08:28:01
转载
3527 人浏览过

一小时学会简易在线投票系统(php)

投票的结果页面的功能是根据投票的统计数据,显示当前的投票结果。只有在登录的情况下才能查看。

1、数据库连接部分

<?php
        if($ouser == &#39;&#39;){
            echo "<script>alert('请先登录!');location.href='index.php';</script>";
        }else{
            $voteid=@$_GET['vid'];
            if($voteid == ''){
                echo "location.href='index.php';</script>";
            }else{
                $sql="select vname,starttime,uid,vintro,open,more,max,min from vote where vid='".$voteid."'";
                $voteitem=mysql_query($sql);
                $vitem=mysql_fetch_array($voteitem);

                $sql2="SELECT itemcount,item,num FROM votetitle where vid='".$voteid."'";
                $votetitle=mysql_query($sql2);
                $vtitle=mysql_fetch_array($votetitle);

                $sql3="SELECT username FROM users where uid='".$vitem['uid']."'";
                $uname=mysql_query($sql3);
                $username=mysql_fetch_row($uname);
        ?>
登录后复制

2、投票活动基本信息的显示

<center><h2><?php echo $vitem[&#39;vname&#39;]; ?></h2></center>
            <p id="vote">
            	<table>
                	<tr>
                   	  <td>发布人:<?php echo $username[0];?></td><td>发布时间:<?php echo $vitem[&#39;starttime&#39;]; ?></td>
                    </tr>
                </table>
                <p id="vote_intro">
                	<?php echo $vitem[&#39;vintro&#39;] ?>
                </p>
                <p id="vote_contend">
登录后复制

3、逐条输出结果

<?php
                	$itemcount=$vtitle[&#39;itemcount&#39;];
					$option=explode(&#39;*&#39;,$vtitle[&#39;item&#39;]);
					$ballot=explode(&#39;*&#39;,$vtitle[&#39;num&#39;]);
					$total=0;
					$rate;
					$ratewidth;
					for($i=0;$i<count($ballot);$i++){
						$total=$total+$ballot[$i];
					}
					for($i=0;$i<count($ballot);$i++){
						if($total==0){
							$rate[$i]=0;
							$ratewidth[$i]=0;
						}else{
							$rate[$i]=round(($ballot[$i]/$total)*100);
							$ratewidth[$i]=$rate[$i]*2;
						}
					}
					for($i=0;$i<$itemcount;$i++){
						echo "<p class=&#39;vote_contend_item&#39;> ".$option[$i]."</p>".
							"<p class=&#39;vote_contend_img&#39;><p class=&#39;vote_contend_strip&#39; style=&#39;width:".$ratewidth[$i]."px&#39;></p></p>".
							"<p class=&#39;vote_contend_count&#39;> 票数:".$ballot[$i]." 得票率:".$rate[$i]."%</p>";
					}
                	?>
登录后复制

(1)通过方法计算出得票率,并形成图表

for($i=0;$i<count($ballot);$i++){
						$total=$total+$ballot[$i];
					}
					for($i=0;$i<count($ballot);$i++){
						if($total==0){
							$rate[$i]=0;
							$ratewidth[$i]=0;
						}else{
							$rate[$i]=round(($ballot[$i]/$total)*100);
							$ratewidth[$i]=$rate[$i]*2;
						}
					}
登录后复制

4、效果

e0611f4f4cbe184565269cbce24629f.png

感谢大家的阅读,希望大家有所收益。

推荐教程:《PHP教程

以上是一小时学会简易在线投票系统(php)的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
php
来源:csdn.net
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板