検索
ホームページphp教程php手册シンプルな PHP 投票プログラムのソース コード

シンプルな PHP 投票プログラムのソース コード

Jun 13, 2016 pm 12:32 PM
php分析する利用ストレージ私たち投票する書類カラム単純

分析:
ファイル (data.dat) を使用して、各列が 1 行を占めます。
この方法で、投票する列を自由に追加および削除できます。次に、ファイル (votes.dat) を使用して投票結果を保存します
そして、1 人が複数回投票することを防ぐために、最新の投票者の IP アドレスを記録します。
そのため、それを自分で作成する必要があります。プログラム ディレクトリ内 2 つのファイル data.dat と votes.dat
プログラム実行プロセスの一部
プログラムが実行されると、最初に投票 HTML フォームが表示され、誰かが投票するのを待ちます。 HTML フォームで、その IP が最新の投票者の IP であるかどうかを確認します。
この人が投票したばかりの場合、2 つの値は等しく、「すでに投票しました。ありがとうございます」と表示されます。
この人が投票したばかりの場合、投票していない場合、2 つの値が等しくない場合は、その投票をファイル (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 "$poll_name
n ";
echo "

"; >for ($i=0; $i{
echo " ; $dataf[$i]
n"; }
echo "echo "

";
echo "

";
echo "結果を表示";
}
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 "
あなたはすでに投票しています、ご参加いただきありがとうございます!
";
exit;
}
// IP が重複しない場合は、次の手順を実行します
$ficdest=fopen($votes, "w ") ;
for ($i=0; $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 ""; >for ( $i=0; $i{
//総投票数を取得
$tot_votes =$single_vote[$i] ;
}
for ($i=0; $i{
//パーセンテージを計算する
$stat[$i] =$single_vote[$i ]/$tot_votes*100;
echo "";
echo "
  • "; $i] font>
  • ";
    echo "シンプルな PHP 投票プログラムのソース コード ";
    //出力パーセンテージ printf("%.1f", "$stat[$i]");
    echo "%
    "; //この列の投票数を出力します
    echo "$single_vote[$i]
    " ; echo "

    "; 総投票数: $tot_votes font>";
    }
    }
    ?>

    声明
    この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

    ホットAIツール

    Undresser.AI Undress

    Undresser.AI Undress

    リアルなヌード写真を作成する AI 搭載アプリ

    AI Clothes Remover

    AI Clothes Remover

    写真から衣服を削除するオンライン AI ツール。

    Undress AI Tool

    Undress AI Tool

    脱衣画像を無料で

    Clothoff.io

    Clothoff.io

    AI衣類リムーバー

    Video Face Swap

    Video Face Swap

    完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

    ホットツール

    EditPlus 中国語クラック版

    EditPlus 中国語クラック版

    サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

    ドリームウィーバー CS6

    ドリームウィーバー CS6

    ビジュアル Web 開発ツール

    SublimeText3 中国語版

    SublimeText3 中国語版

    中国語版、とても使いやすい

    メモ帳++7.3.1

    メモ帳++7.3.1

    使いやすく無料のコードエディター

    SublimeText3 Mac版

    SublimeText3 Mac版

    神レベルのコード編集ソフト(SublimeText3)