ホームページ  >  記事  >  バックエンド開発  >  PHP と AJAX を使用して実装された動的なオンライン投票システム

PHP と AJAX を使用して実装された動的なオンライン投票システム

WBOY
WBOYオリジナル
2023-08-09 19:01:431118ブラウズ

PHP と AJAX を使用して実装された動的なオンライン投票システム

PHP と AJAX を使用して実装された動的なオンライン投票システム

はじめに:
インターネットの発展に伴い、オンライン投票に依存する活動がますます増えています。ユーザーの意見や選択肢を収集するシステム。この記事では、PHP と AJAX を使用して、シンプルな動的オンライン投票システムを実装する方法を紹介します。このシステムを通じて、ユーザーは投票オプションを選択し、投票結果を即座に確認できます。

  1. データベースとデータ テーブルを確立する
    まず、MySQL データベースを作成し、その中に投票オプションと投票結果に関連するデータを保存するデータ テーブルを作成する必要があります。次の SQL ステートメントを使用して、「vote」という名前のデータ テーブルを作成できます:

CREATE DATABASE vote;

USE vote;

CREATE TABLE options (

id INT(11) NOT NULL AUTO_INCREMENT,
name VARCHAR(255) NOT NULL,
votes INT(11) NOT NULL,
PRIMARY KEY (id)

);

  1. 投票ページの作成
    投票ページでは、投票オプションを表示し、クリックして AJAX 経由で投票した後、すぐに投票結果を更新する必要があります。単純な投票ページの HTML コードの例を次に示します。



<title>动态在线投票系统</title>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script>
    $(document).ready(function(){
        $(".vote-button").click(function(){
            var optionId = $(this).data("option-id");
            $.ajax({
                url: "vote.php",
                method: "POST",
                data: {optionId: optionId},
                success: function(response){
                    $("#result-container").html(response);
                }
            });
        });
    });
</script>

< ; /head>

<h1>动态在线投票系统</h1>
<div id="options-container">
    <?php
        // 连接数据库
        $conn = new mysqli("localhost", "username", "password", "vote");
        if ($conn->connect_error) {
            die("连接数据库失败: " . $conn->connect_error);
        }
        
        // 查询投票选项
        $sql = "SELECT * FROM options";
        $result = $conn->query($sql);
        
        // 输出投票选项
        if ($result->num_rows > 0) {
            while($row = $result->fetch_assoc()) {
                echo '<div class="option">
                        <span class="option-name">' . $row["name"] . '</span>
                        <button class="vote-button" data-option-id="' . $row["id"] . '">投票</button>
                    </div>';
            }
        } else {
            echo "暂无投票选项";
        }
        
        $conn->close();
    ?>
</div>
<div id="result-container">
    <!-- 投票结果将在这里显示 -->
</div>


  1. 投票リクエストを処理する PHP スクリプトを作成します
    us ユーザーの投票リクエストを処理し、データベース内の対応するオプションの投票結果を更新するには、「vote.php」という名前の PHP スクリプトを作成する必要があります。以下は簡単な「vote.php」コード例です:

if(isset($_POST["optionId"])){
    // 连接数据库
    $conn = new mysqli("localhost", "username", "password", "vote");
    if ($conn->connect_error) {
        die("连接数据库失败: " . $conn->connect_error);
    }
    
    // 获取选项ID和更新投票结果
    $optionId = $_POST["optionId"];
    $sql = "UPDATE options SET votes = votes + 1 WHERE id = $optionId";
    $conn->query($sql);
    
    // 查询更新后的投票结果
    $sql = "SELECT * FROM options";
    $result = $conn->query($sql);
    
    // 输出投票结果
    if ($result->num_rows > 0) {
        while($row = $result->fetch_assoc()) {
            echo '<div class="result">
                    <span class="option-name">' . $row["name"] . '</span>
                    <span class="option-votes">' . $row["votes"] . ' 票</span>
                </div>';
        }
    } else {
        echo "暂无投票结果";
    }
    
    $conn->close();
}

?>

要約:
上記の内容コード例では、単純な動的なオンライン投票システムを実装できます。ユーザーは投票オプションを選択し、投票結果を即座に確認できます。このシステムは、さまざまな活動の投票ニーズに簡単に適用できます。同時に、各種投票統計グラフや投票期限などの機能の追加など、実際のニーズに合わせた拡張・最適化も可能です。この記事が、動的なオンライン投票システムの理解と実践に役立つことを願っています。

以上がPHP と AJAX を使用して実装された動的なオンライン投票システムの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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