• <label id="pxtpz"><meter id="pxtpz"></meter></label>
      1. <span id="pxtpz"><optgroup id="pxtpz"></optgroup></span>

        當前位置:雨林木風下載站 > 技術開發教程 > 詳細頁面

        一個容易的PHP投票程序

        一個容易的PHP投票程序

        更新時間:2019-05-30 文章作者:未知 信息來源:網絡 閱讀次數:

        分析:
        我們利用一個文件(data.dat)來存儲投票欄目.每個欄目占據一行.
        這樣一來,便可隨意加入和減去想要投票的欄目.

        我們再利用一個文件(votes.dat)來存儲我們的投票結果.
        并紀錄最近一位投票者的IP地址,簡單的防止一人多投.

        所以,您應該在該程序目錄下自行建立兩個文件data.dat和votes.dat

        程序運行過程部分

        程序運行時應該先有一個投票的HTML表單,等待投票.
        當有人在HTML表單上投票時,判斷它的IP是否為最近一位投票者的IP,
        如果此人剛剛投過票,則兩個值應該相等,顯示"您已投過票了,謝謝您的參與!"  
        如果此人沒投過票,則兩個值不等,將它的投票寫入文件(votes.dat)  
        (這里得到投票者的IP方法是:Web客戶機在對服務器發送請求時需要提供一個表識,
        這個表識就存儲在環境變量REMOTE_ADDR里,我們引用它就可以了.)

        最后是顯示投票結果,通常我們是以"條形圖表+百分數"來顯示投票情況.
        所以,我們要選擇一個顏色單一的矩形圖形,以適應橫向縮放的要求.  

        --------------------------------------------------------------------------------

        程序代碼部分 可下載程序代碼

          

          //投票欄目存儲文件,您可更改文件名
        $data="data.dat";  
        //投票結果儲存文件  
        $votes="votes.dat";

        //用以顯示投票結果比例的圖形文件名圖形文件名,  
        //用單一顏色的矩形較好,方便投票結果橫向縮放,  
        //自行上傳到本程序目錄下  
        $path_img="vote.gif";

        //投票標題
        $poll_name="您喜歡我的哪個欄目?";  


        // 以下部分不需改動 //  


        //打開投票欄目文件,并以數組的形式將全部內容存在變量$dataf中備用  
        $dataf=file($data);  
        if ($go !=1)

        {  
        //顯示投票程序表單  
        echo "<font color=red><i>$poll_name</i></font><br>n";  
        echo "<form method=post>";  
        for ($i=0; $i<=count($dataf)-1; $i++)  

        {  
        echo "<input type=radio name="vote" value="$i"> $dataf[$i]<br>n"; }  

        echo "<input type=hidden name=go value=1>";  
        echo "<p><input type=Submit value=投票>";  
        echo "</form>";  
        echo "<a href='vote.php?result=1&go=1'>查看結果</a>";  

        }  

        else  

        {  
        // $go==1 表示有人投票, // 現在將投票情況以另外一種方式從文件中讀出 $file_votes=fopen($votes, "r");  
        $line_votes=fgets($file_votes, 255);  
        fclose($file_votes);

        // 并將數據按指定的字串切開,再將字串傳回到陣列變量中  
        $single_vote=explode("|", $line_votes);  

        //準備寫入投票結果  
        if ($result!=1)  

        {  
        //檢查IP地址是否重復  
        $file_votes=file($votes, "r");  
        if ($REMOTE_ADDR == $file_votes[1])  

        {  
        echo "<center><font color=red>您已投過票了,謝謝您的參與! </font>    </center>";
        exit;
        }

        //如果IP不重復,則執行以下程序  
        $ficdest=fopen($votes, "w");  
        for ($i=0; $i<=count($dataf)-1; $i++)

        {  
        //判斷投了那一個欄目  
        if ($i == $vote)  

        {  
        $single_vote[$i]+=1;
        }  

        //將數據寫回文件  
        fputs($ficdest, "$single_vote[$i]|");  

        }  


        //寫入投票者IP  
        fputs($ficdest, "n$REMOTE_ADDR");  
        fclose($ficdest);
        $result=1; //投票成功

        }  


        //寫入投票結果后并顯示投票結果  
        if ($result==1)  

        { echo "<table cellpadding=10>";  
        for ($i=0; $i<=count($dataf)-1; $i++)  

        {  
        //取得投票總數
        $tot_votes+=$single_vote[$i];  
        }  

        for ($i=0; $i<=count($dataf)-1; $i++)  

        {  
        //計算百分比  
        $stat[$i]=$single_vote[$i]/$tot_votes*100;  
        echo "<tr><td><li><font face=Verdana size=2>";  
        echo "$dataf[$i]</font></td><td align=left><font face=Verdana       size=2>";  
        echo "<img src="$path_img" height=10 width=$stat[$i] align=middle> ";  
        //輸出百分數 printf("%.1f", "$stat[$i]");  
        echo "%</font></td><td align=center><font face=Verdana size=2>"; //輸出本欄目投票數  
        echo "$single_vote[$i]</font>"; echo "</td></tr>";  
        }  

        echo "</table><p>";  
        echo "<font face=Verdana size=2>總投票數:$tot_votes </font>";  
        }

        }

        ?>  

        溫馨提示:喜歡本站的話,請收藏一下本站!

        本類教程下載

        系統下載排行

        主站蜘蛛池模板: 久久精品视频免费播放| 亚洲国产成人精品无码区花野真一 | 一边摸一边桶一边脱免费视频| 免费毛片在线视频| 亚洲高清乱码午夜电影网| 成人免费视频一区二区三区| 亚洲香蕉在线观看| 全免费一级毛片在线播放| 亚洲AV永久无码天堂影院| 永久免费看bbb| 一区免费在线观看| 亚洲欧洲日产国码无码网站| a毛片成人免费全部播放| 亚洲熟妇无码AV在线播放| 中文字幕高清免费不卡视频| 人人狠狠综合久久亚洲88| 久久青草免费91线频观看不卡| 亚洲视频在线免费观看| 114一级毛片免费| 亚洲精品中文字幕| 免费大香伊蕉在人线国产| eeuss影院免费92242部| 亚洲尹人九九大色香蕉网站| 黄页网站免费观看| 黄色毛片视频免费| 国产成人亚洲综合无码精品| 91香蕉国产线在线观看免费| 亚洲 欧洲 视频 伦小说| 亚洲国产精品第一区二区三区| 男男gay做爽爽免费视频| 免费在线观看毛片| 一级毛片全部免费播放| 亚洲中文字幕无码久久| 亚洲午夜激情视频| 91免费国产自产地址入| 18禁亚洲深夜福利人口| 亚洲视频在线观看免费| 免费a级毛片永久免费| 99久久人妻精品免费一区| 亚洲成a人无码亚洲成av无码| 久久亚洲AV无码西西人体|