Heim  >  Artikel  >  Backend-Entwicklung  >  Dynamisches Online-Abstimmungssystem, implementiert mit PHP und AJAX

Dynamisches Online-Abstimmungssystem, implementiert mit PHP und AJAX

WBOY
WBOYOriginal
2023-08-09 19:01:431135Durchsuche

Dynamisches Online-Abstimmungssystem, implementiert mit PHP und AJAX

Dynamisches Online-Abstimmungssystem, implementiert mit PHP und AJAX

Einführung:
Mit der Entwicklung des Internets verlassen sich immer mehr Aktivitäten auf Online-Abstimmungssysteme, um Benutzermeinungen und -entscheidungen zu sammeln. In diesem Artikel wird erläutert, wie Sie mit PHP und AJAX ein einfaches dynamisches Online-Abstimmungssystem implementieren. Über dieses System können Benutzer Abstimmungsoptionen auswählen und Abstimmungsergebnisse sofort anzeigen.

  1. Datenbank und Datentabelle erstellen
    Zuerst müssen wir eine MySQL-Datenbank erstellen und darin eine Datentabelle erstellen, um Daten zu Abstimmungsoptionen und Abstimmungsergebnissen zu speichern. Sie können die folgende SQL-Anweisung verwenden, um eine Datentabelle mit dem Namen „vote“ zu erstellen:

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. Create a vote page
    on the Auf der Abstimmungsseite müssen wir die Abstimmungsoptionen anzeigen und die Abstimmungsergebnisse sofort aktualisieren, nachdem wir auf die Abstimmung über AJAX geklickt haben. Hier ist ein Beispiel für HTML-Code für eine einfache Abstimmungsseite:



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


  1. Erstellen Sie ein PHP-Skript zur Bearbeitung von Abstimmungsanfragen
    Wir müssen ein PHP-Skript mit dem Namen „vote.php“ erstellen, um die Abstimmungsanfrage des Benutzers zu verarbeiten und die Abstimmungsergebnisse der entsprechenden Option in zu aktualisieren die Datenbank. Das Folgende ist ein einfaches „vote.php“-Codebeispiel:

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();
}

?>

Zusammenfassung:
Mit dem obigen Codebeispiel können wir ein einfaches dynamisches Online-Abstimmungssystem implementieren. Benutzer können Abstimmungsoptionen auswählen und die Abstimmungsergebnisse sofort anzeigen. Dieses System kann problemlos auf die Abstimmungsanforderungen verschiedener Aktivitäten angewendet werden. Gleichzeitig können wir es entsprechend den tatsächlichen Anforderungen erweitern und optimieren, z. B. durch das Hinzufügen verschiedener Abstimmungsstatistikdiagramme, Abstimmungsfristen und anderer Funktionen. Ich hoffe, dieser Artikel hilft Ihnen, dynamische Online-Abstimmungssysteme zu verstehen und zu üben.

Das obige ist der detaillierte Inhalt vonDynamisches Online-Abstimmungssystem, implementiert mit PHP und AJAX. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn