Maison >développement back-end >tutoriel php >Comment développer une fonction de vote en ligne en utilisant PHP

Comment développer une fonction de vote en ligne en utilisant PHP

王林
王林original
2023-08-17 13:06:181823parcourir

Comment développer une fonction de vote en ligne en utilisant PHP

Comment développer une fonction de vote en ligne avec PHP

Dans la société moderne, le vote en ligne est devenu un moyen courant de recueillir l'opinion publique et de prendre des décisions. PHP, en tant que langage de script côté serveur populaire, peut être facilement utilisé pour développer des fonctions de vote en ligne. Cet article présentera comment utiliser PHP pour développer un système de vote en ligne simple et joindra des exemples de code correspondants.

  1. Conception de base de données

Tout d'abord, nous devons concevoir une base de données pour stocker les informations de vote. Supposons que nous devions créer une base de données nommée « votes » et créer une table de données nommée « sondages » pour stocker les informations sur les options de vote. La structure de la table de données "polls" est la suivante :

polls table

id (INT) -- ID de l'option de vote
name (VARCHAR) -- nom de l'option de vote
votes (INT) -- nombre de votes

  1. Créer une option de vote

Afficher les options de vote sur la page Web pour que les utilisateurs puissent choisir, ce qui peut être réalisé via le code PHP suivant :

<?php
// 连接数据库
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "votes";
$conn = new mysqli($servername, $username, $password, $dbname);

// 检查数据库连接是否成功
if ($conn->connect_error) {
    die("数据库连接失败: " . $conn->connect_error);
}

// 查询投票选项
$sql = "SELECT id, name FROM polls";
$result = $conn->query($sql);

// 展示投票选项
if ($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
        echo "<input type='radio' name='option' value='" . $row["id"] . "'>" . $row["name"] . "<br>";
    }
} else {
    echo "没有投票选项可供选择";
}

// 关闭数据库连接
$conn->close();
?>
  1. Traitement des résultats du vote

Ensuite, nous devons traiter les choix de vote de l'utilisateur et mettre à jour le nombre de votes dans la base de données. Voici l'exemple de code PHP pertinent :

<?php
// 连接数据库
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "votes";
$conn = new mysqli($servername, $username, $password, $dbname);

// 检查数据库连接是否成功
if ($conn->connect_error) {
    die("数据库连接失败: " . $conn->connect_error);
}

// 获取用户的投票选择
$optionID = $_POST["option"];

// 更新投票数
$sql = "UPDATE polls SET votes = votes + 1 WHERE id = " . $optionID;

if ($conn->query($sql) === TRUE) {
    echo "投票成功";
} else {
    echo "投票失败: " . $conn->error;
}

// 关闭数据库连接
$conn->close();
?>
  1. Afficher les résultats du vote

Enfin, nous pouvons utiliser le code PHP suivant pour afficher les résultats des options de vote actuelles :

<?php
// 连接数据库
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "votes";
$conn = new mysqli($servername, $username, $password, $dbname);

// 检查数据库连接是否成功
if ($conn->connect_error) {
    die("数据库连接失败: " . $conn->connect_error);
}

// 查询投票结果
$sql = "SELECT name, votes FROM polls";
$result = $conn->query($sql);

// 展示投票结果
if ($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
        echo $row["name"] . ":" . $row["votes"] . "票<br>";
    }
} else {
    echo "目前还没有投票结果";
}

// 关闭数据库连接
$conn->close();
?>

Grâce aux étapes ci-dessus, nous avons développé avec succès en utilisant PHP Une fonctionnalité simple de vote en ligne. Vous pouvez apporter d'autres améliorations et extensions en fonction des besoins réels, comme ajouter une date limite de vote, limiter le nombre de votes par utilisateur, etc. Je vous souhaite de réussir à développer un système de vote en ligne qui vous convient !

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn