Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Sistem pengundian dalam talian dinamik dilaksanakan menggunakan PHP dan AJAX

Sistem pengundian dalam talian dinamik dilaksanakan menggunakan PHP dan AJAX

WBOY
WBOYasal
2023-08-09 19:01:431079semak imbas

Sistem pengundian dalam talian dinamik dilaksanakan menggunakan PHP dan AJAX

Sistem pengundian dalam talian yang dinamik dilaksanakan menggunakan PHP dan AJAX

Pengenalan:
Dengan perkembangan Internet, semakin banyak aktiviti mula bergantung pada sistem pengundian dalam talian untuk mengumpul pendapat dan pilihan pengguna. Artikel ini akan memperkenalkan cara menggunakan PHP dan AJAX untuk melaksanakan sistem pengundian dalam talian dinamik yang mudah. Melalui sistem ini, pengguna boleh memilih pilihan pengundian dan melihat keputusan pengundian serta-merta.

  1. Bina pangkalan data dan jadual data
    Pertama, kita perlu mencipta pangkalan data MySQL dan mencipta jadual data di dalamnya untuk menyimpan data yang berkaitan dengan pilihan pengundian dan keputusan pengundian. Anda boleh menggunakan pernyataan SQL berikut untuk mencipta jadual data bernama "undi":

BUAT PANGKALAN DATA undian;

GUNAKAN undian;

BUAT pilihan JADUAL (

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

);

  1. Buat undian di halaman undian halaman pengundian , kami perlu memaparkan pilihan pengundian dan mengemas kini keputusan pengundian serta-merta selepas mengklik untuk mengundi melalui AJAX. Berikut ialah contoh kod HTML untuk halaman undian mudah:



<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>


/ body>


    Buat skrip PHP untuk mengendalikan permintaan pengundian
  1. Kami perlu mencipta skrip PHP bernama "vote.php" untuk memproses permintaan pengundian pengguna dan mengemas kini keputusan pengundian pilihan yang sepadan dalam pangkalan data. Berikut ialah contoh kod "vote.php" mudah:
<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>
?>

Ringkasan:

Dengan contoh kod di atas, kami boleh melaksanakan sistem pengundian dalam talian dinamik yang ringkas. Pengguna boleh memilih pilihan mengundi dan melihat keputusan pengundian serta-merta. Sistem ini boleh digunakan dengan mudah untuk keperluan pengundian pelbagai aktiviti. Pada masa yang sama, kami juga boleh mengembangkan dan mengoptimumkan mengikut keperluan sebenar, seperti menambah pelbagai carta statistik pengundian, had masa mengundi dan fungsi lain. Saya harap artikel ini membantu anda memahami dan mengamalkan sistem pengundian dalam talian yang dinamik.

Atas ialah kandungan terperinci Sistem pengundian dalam talian dinamik dilaksanakan menggunakan PHP dan AJAX. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn