文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>PHP新手上路(九) 投票系统

PHP新手上路(九) 投票系统

时间:2008-05-12  来源:剑心通明


建设一个简单交互的网站(五)

8. 投票系统
  在许多时候,我们需要收集上网者和网友们的意见。例如:新版页面与旧版页面的比较;对某一事情的看法;对体育比赛结果的预测等等。这时候,你需要一个非常有效的网上调查系统。使用PHP就可以非常方便地实帜愕恼庖还瓜搿?
8.1 投票系统(mypolls.php3):



新版页面调查






与旧版页面相比较您觉得新版页面:




信息量更大


网页更精美


没什么改进


其它



查看调查结果

"信息量更大",
2=>"网页更精美",
3=>"没什么改进",
4=>"其它"
);
$poll_resultBarHeight = 9; // height in pixels of percentage bar in result table
$poll_resultBarScale = 1; // scale of result bar (in multiples of 100 pixels)
$poll_tableHeader="";
$poll_rowHeader="";
$poll_dataHeader="";
$poll_dataFooter="";
$poll_rowFooter="";
$poll_tableFooter="";
$coutfile="data.pol";
$poll_sum=0;
// read counter-file
if (file_exists( $coutfile))
{
$fp = fopen( $coutfile, "rt");
while ($Line = fgets($fp, 10))
{
// split lines into identifier/counter
if (ereg( "([^ ]*) *([0-9]*)", $Line, $tmp))
{
$curArray[(int)$tmp[1]] = (int)$tmp[2];
$poll_sum =(int)$tmp[2];
}
}
// close file
fclose($fp);
}else{//
for ($i=1;$i 0)
{
$poll_percentScale = (int)($poll_percent * $poll_resultBarScale);
}
printf(" %.2f %% (%d)", $poll_percent, $poll_optionCount);
echo $poll_dataFooter;
}
echo $poll_rowFooter;
}
echo "总共投票次数: $poll_sum";
echo $poll_tableFooter;
echo "
";
echo "";
echo " ";
if(isset($poll)){
// write counter file
$fp = fopen($coutfile, "wt");
reset($curArray);
while (list($Key, $Value) = each($curArray))
{
$tmp = sprintf( "%s %dn", $Key, $Value);
fwrite($fp, $tmp);
}
// close file
fclose($fp);
}
}
?>


注释:从上面我们可以看出该投票系统的基本过程:
1、打开文件取得数据到数组$curArray(文件不存在则初始化数组$curArray)
2、编历数组,处理数据得到所需值
3、计算百分比,控制统计bar图像宽度
4、将数据保存到"data.pol"中
   这里有一点是需要注意:这里的data.pol文本文件需要有写权限。


相关阅读 更多 +
排行榜 更多 +
西安交大通

西安交大通

生活实用 下载
长江云通

长江云通

生活实用 下载
translatez

translatez

生活实用 下载