Système de vote en ligne dynamique implémenté à l'aide de PHP et AJAX
Introduction :
Avec le développement d'Internet, de plus en plus d'activités commencent à s'appuyer sur des systèmes de vote en ligne pour recueillir les opinions et les choix des utilisateurs. Cet article explique comment utiliser PHP et AJAX pour implémenter un système de vote en ligne dynamique simple. Grâce à ce système, les utilisateurs peuvent sélectionner les options de vote et consulter instantanément les résultats du 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)
);
<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>
<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>
< / body>
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(); }
?>
Résumé :
Avec l'exemple de code ci-dessus, nous pouvons implémenter un système de vote en ligne dynamique simple. Les utilisateurs peuvent sélectionner les options de vote et afficher instantanément les résultats du vote. Ce système peut être facilement appliqué aux besoins de vote de diverses activités. Dans le même temps, nous pouvons également étendre et optimiser en fonction des besoins réels, par exemple en ajoutant une variété de graphiques de statistiques de vote, de délais de vote et d'autres fonctions. J'espère que cet article vous aidera à comprendre et à mettre en pratique les systèmes de vote en ligne dynamiques.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!