Ein in PHP implementiertes Online-Abstimmungssystem mit vielfältigen Abstimmungsmethoden
Mit dem Aufkommen des Internetzeitalters ist die Nachfrage der Menschen nach Teilnahme und Meinungsäußerung immer stärker geworden. Online-Abstimmungssysteme sind zu einer bequemen und schnellen Möglichkeit geworden, Gruppenmeinungen zu sammeln und eine demokratische Entscheidungsfindung zu erreichen.
In diesem Artikel stellen wir ein Online-Abstimmungssystem mit vielfältigen Abstimmungsmethoden basierend auf der PHP-Sprache vor und stellen relevante Codebeispiele bereit.
vote
(id
int(11) NOT NULL AUTO_INCREMENT,title code> varchar(255 ) NOT NULL,
start_time
datetime NOT NULL, end_time
datetime NOT NULL,vote
(
id
int(11) NOT NULL AUTO_INCREMENT,
title
varchar(255) NOT NULL,
start_time
datetime NOT NULL,
end_time
datetime NOT NULL,
PRIMARY KEY (id
)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE option
(
id
int(11) NOT NULL AUTO_INCREMENT,
vote_id
int(11) NOT NULL,
content
text NOT NULL,
PRIMARY KEY (id
),
KEY vote_id
(vote_id
),
CONSTRAINT fk_vote_id
FOREIGN KEY (vote_id
) REFERENCES vote
(id
PRIMARY KEY (id
)
) ENGINE=InnoDB DEFAULT CHARSET =utf8;
option
(id
int(11) NOT NULL AUTO_INCREMENT,vote_id
int(11 ) NOT NULL,content
text NOT NULL,id
), KEY vote_id
(vote_id
),
CONSTRAINT fk_vote_id FOREIGN KEY (vote_id
) REFERENCES vote
(id
) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Front-End-Design
Entwerfen Sie die Benutzeroberfläche entsprechend den Anforderungen, einschließlich der Anzeige des Abstimmungsthemas, der Optionsauswahl und der Anzeige der Abstimmungsergebnisse. Das Folgende ist ein einfaches Frontend-Schnittstellenbeispiel:
echo "<input type='".$vote['type']."' name='option' value='".$option['id']."'>".$option['content']."</input><br/>";
}
// Submit button
Backend-Implementierung
Laut Front- Beenden Sie das Design, implementieren Sie Hintergrundlogik, um Benutzeraktionen zu verarbeiten und Abstimmungsergebnisse zu berechnen. Das Folgende ist ein einfaches PHP-Codebeispiel:
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
$selectedOption = $_POST['option']; // 根据选项类型进行不同的处理 if ($vote['type'] == 'radio') { // 单选投票 $voteCount = 1; } elseif ($vote['type'] == 'checkbox') { // 多选投票 $voteCount = count($selectedOption); } elseif ($vote['type'] == 'rating') { // 打分投票 $totalRating = $_POST['total_rating']; $voteCount = 1; } // 更新选项表中的投票统计 foreach ($selectedOption as $optionId) { // 执行更新操作,计数+1 // UPDATE option SET count = count + 1 WHERE id = $optionId }
}
// Abstimmungsergebnisse abfragen 🎜$options = $db- >query("SELECT * FROM option WHERE vote_id = ".$vote['id'])->fetchAll();🎜foreach ($options as $option) {🎜$votePercentage = ($option['count'] / $voteCount) * 100; echo $option['content'] . ": " . $votePercentage . "%<br/>";
Das obige ist der detaillierte Inhalt vonOnline-Abstimmungssystem mit verschiedenen in PHP implementierten Abstimmungsmethoden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!