您现在的位置是:网站首页 > 情感婚姻

PHP新手上路(九)-经典文章-PHP教程-幽默笑话

本站2019-07-08141人围观
简介 文章内容PHP新手上路(九)修改时间:[2008/11/0821:03]阅读次数:[444]发表者:[起缘]建设一个简单交互的网站(五)8.投票系统 在许多时候,我们需要收集上网者和网友们的

PHP新手上路(九)-经典文章-PHP教程-幽默笑话

文章内容PHP新手上路(九)修改时间:[2008/11/0821:03]阅读次数:[444]发表者:[起缘]建设一个简单交互的网站(五)8.投票系统  在许多时候,我们需要收集上网者和网友们的意见。 例如:新版页面与旧版页面的比较;对某一事情的看法;对体育比赛结果的预测等等。 这时候,你需要一个非常有效的网上调查系统。 使用PHP就可以非常方便地实现你的这一构想。 投票系统():$status=0;if(isset($polled)($polled=="c-e")){$status=1;}#echo"$status";if(isset($poll)($status==0)){setcookie("polled","c-e",time()+86400,"/");#time=24h}htmlheadtitle新版页面调查/titlemetahttp-equiv="Content-Type"content="text/html;charset=gb2312"styletype="text/css"!--.tb{border="1"bordercolor="#009933"cellspacing="0"font-size:9pt;color:#000000}.head{font-family:"宋体";font-size:12pt;font-weight:bold;color:#009933;text-decoration:none}.pt9{font-size:9pt}:link{font-size:9pt;color:#000000;text-decoration:none}:visited{font-size:9pt;color:#000000;text-decoration:none}:hover{font-size:9pt;color:#FF0000;text-decoration:underline}:active{font-size:9pt;color:#FF0000;text-decoration:underline}--/style/headbodybgcolor="#FFFFFF"divclass="head"与旧版页面相比较您觉得新版页面:/divbrif(!isset($submit)){formaction=""method="get"inputtype="radio"name="poll_voteNr"value="1"checkedspanclass="pt9"信息量更大/spanbrinputtype="radio"name="poll_voteNr"value="2"spanclass="pt9"网页更精美/spanbrinputtype="radio"name="poll_voteNr"value="3"spanclass="pt9"没什么改进/spanbrinputtype="radio"name="poll_voteNr"value="4"spanclass="pt9"其它/spanbrinputtype="submit"name="submit"value="OK"inputtype="hidden"name="poll"value="vote"AHREF="=OK"class="p9"查看调查结果/A/form/*如果想增加其它的选项可直接加上即可*/}else{$descArray=array(1="信息量更大",2="网页更精美",3="没什么改进",4="其它");$poll_resultBarHeight=9;//heightinpixelsofpercentagebarinresulttable$poll_resultBarScale=1;//scaleofresultbar(inmultiplesof100pixels)$poll_tableHeader="tableborder=1class="tb"$poll_rowHeader="tr$poll_dataHeader="tdalign=center$poll_dataFooter="/td$poll_rowFooter="/tr$poll_tableFooter="/table$coutfile="";$poll_sum=0;//readcounter-fileif(file_exists($coutfile)){$fp=fopen($coutfile,"rt");while($Line=fgets($fp,10)){//splitlinesintoidentifier/counterif(ereg("([^]*)*([0-9]*)",$Line,$tmp)){$curArray[(int)$tmp[1]]=(int)$tmp[2];$poll_sum+=(int)$tmp[2];}}//closefilefclose($fp);}else{//for($i=1;$i=count($descArray);$i++){$curArray[$i]=0;}}if(isset($poll)){$curArray[$poll_voteNr]++;$poll_sum++;}echo$poll_tableHeader;//cyclethroughalloptions编历数组reset($curArray);while(list($K,$V)=each($curArray)){$poll_optionText=$descArray[$K];$poll_optionCount=$V;echo$poll_rowHeader;if($poll_optionText!=""){echo$poll_dataHeader;echo$poll_optionText;echo$poll_dataFooter;if($poll_sum)$poll_percent=100*$poll_optionCount/$poll_sum;else$poll_percent=0;echo$poll_dataHeader;if($poll_percent0){$poll_percentScale=(int)($poll_percent*$poll_resultBarScale);}printf("%.2f%%(%d)",$poll_percent,$poll_optionCount);echo$poll_dataFooter;}echo$poll_rowFooter;}echo"总共投票次数:fontcolor=red$poll_sum/fontecho$poll_tableFooter;echo"brecho"inputtype="submit"name="Submit1"value="返回主页"onClick="javascript:location=http:///"echo"inputtype="submit"name="Submit2"value="重新投票"onClick="javascript:location=http:///"if(isset($poll)){//writecounterfile$fp=fopen($coutfile,"wt");reset($curArray);while(list($Key,$Value)=each($curArray)){$tmp=sprintf("%s%dn",$Key,$Value);fwrite($fp,$tmp);}//closefilefclose($fp);}}/body/html注释:从上面我们可以看出该投票系统的基本过程:1、打开文件取得数据到数组$curArray(文件不存在则初始化数组$curArray)2、编历数组,处理数据得到所需值3、计算百分比,控制统计bar图像宽度4、将数据保存到""中  这里有一点是需要注意:这里的文本文件需要有写权限。