PHP에서 개발한 온라인 투표 시스템에 대한 자세한 설명
투표 시스템은 인터넷에서 매우 일반적인 기능으로 다양한 온라인 활동, 설문 조사, 선거 및 기타 시나리오에서 널리 사용됩니다. 이 기사에서는 PHP를 사용하여 간단한 온라인 투표 시스템을 개발하는 방법을 자세히 소개합니다.
- 데이터베이스 만들기
먼저 투표 관련 데이터를 저장할 데이터베이스를 만들어야 합니다. 데이터베이스 이름이 "vote"이고 다음 두 테이블이 포함되어 있다고 가정합니다.
- "polls": 투표 주제 및 마감일과 같은 정보를 저장하는 데 사용되는 테이블입니다.
- "옵션": 외래 키를 통해 투표 테이블과 관련된 각 투표 옵션을 저장하는 데 사용되는 테이블입니다.
다음은 데이터베이스와 테이블을 생성하는 SQL 샘플 코드입니다.
CREATE DATABASE vote; USE vote; CREATE TABLE polls ( id INT AUTO_INCREMENT PRIMARY KEY, title VARCHAR(255) NOT NULL, deadline DATE NOT NULL ); CREATE TABLE options ( id INT AUTO_INCREMENT PRIMARY KEY, poll_id INT, title VARCHAR(255) NOT NULL, votes INT DEFAULT 0, FOREIGN KEY (poll_id) REFERENCES polls(id) );
- 투표 페이지 작성
다음 단계는 투표 주제와 옵션을 표시하고 투표를 받는 프런트 엔드 페이지를 작성하는 것입니다. 사용자로부터. 다음은 간단한 HTML 및 PHP 코드 예입니다.
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>在线投票系统</title> </head> <body> <h1 id="投票主题">投票主题</h1> <?php // 连接数据库 $conn = mysqli_connect("localhost", "username", "password", "vote"); // 查询投票主题和选项 $poll_id = $_GET['poll_id']; $poll_query = "SELECT * FROM polls WHERE id = $poll_id"; $poll_result = mysqli_query($conn, $poll_query); if (mysqli_num_rows($poll_result) > 0) { // 显示投票主题 $poll = mysqli_fetch_assoc($poll_result); echo "<h2 id="poll-title">{$poll['title']}</h2>"; // 查询投票选项 $options_query = "SELECT * FROM options WHERE poll_id = $poll_id"; $options_result = mysqli_query($conn, $options_query); if (mysqli_num_rows($options_result) > 0) { // 显示投票选项 echo "<form method='POST' action='vote.php'>"; while ($option = mysqli_fetch_assoc($options_result)) { echo "<input type='radio' name='option_id' value='{$option['id']}'>{$option['title']}<br>"; } echo "<input type='hidden' name='poll_id' value='$poll_id'>"; echo "<input type='submit' value='提交投票'>"; echo "</form>"; } else { echo "没有投票选项。"; } } else { echo "投票主题不存在。"; } // 关闭数据库连接 mysqli_close($conn); ?> </body> </html>
- 투표 요청 처리
투표 페이지에서는 "vote.php"라는 핸들러를 사용하여 사용자의 투표 요청을 수신하고 처리합니다. 다음은 샘플 코드입니다.
<?php // 连接数据库 $conn = mysqli_connect("localhost", "username", "password", "vote"); // 根据用户的投票选项,更新选项的票数 $option_id = $_POST['option_id']; $poll_id = $_POST['poll_id']; $update_query = "UPDATE options SET votes = votes + 1 WHERE id = $option_id"; mysqli_query($conn, $update_query); // 关闭数据库连接 mysqli_close($conn); // 重定向到结果页面 header("Location: results.php?poll_id=$poll_id"); exit(); ?>
사용자가 투표를 제출하면 vote.php는 해당 옵션에 대한 투표 수를 업데이트하고 투표 결과를 표시하기 위해 "results.php"라는 페이지로 리디렉션됩니다.
- 투표 결과 표시
마지막으로 투표 결과를 표시할 결과 페이지를 작성해야 합니다. 다음은 간단한 PHP 코드 예제입니다.
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>投票结果</title> </head> <body> <h1 id="投票结果">投票结果</h1> <?php // 连接数据库 $conn = mysqli_connect("localhost", "username", "password", "vote"); // 查询投票主题和选项 $poll_id = $_GET['poll_id']; $poll_query = "SELECT * FROM polls WHERE id = $poll_id"; $poll_result = mysqli_query($conn, $poll_query); if (mysqli_num_rows($poll_result) > 0) { // 显示投票主题 $poll = mysqli_fetch_assoc($poll_result); echo "<h2 id="poll-title-截止日期-poll-deadline">{$poll['title']}(截止日期:{$poll['deadline']})</h2>"; // 查询投票选项 $options_query = "SELECT * FROM options WHERE poll_id = $poll_id"; $options_result = mysqli_query($conn, $options_query); if (mysqli_num_rows($options_result) > 0) { // 显示投票选项和票数 while ($option = mysqli_fetch_assoc($options_result)) { echo "{$option['title']}: {$option['votes']} 票<br>"; } } else { echo "没有投票选项。"; } } else { echo "投票主题不存在。"; } // 关闭数据库连接 mysqli_close($conn); ?> </body> </html>
위는 PHP를 사용하여 개발된 간단한 온라인 투표 시스템에 대한 자세한 소개입니다. 데이터베이스와 프런트엔드 페이지를 결합하면 사용자 투표 기능을 간단하게 구현하고 투표 결과를 집계하고 표시할 수 있습니다. 물론 실제 투표 시스템에는 특정 요구 사항을 충족하기 위해 더 많은 기능과 보안 조치가 필요할 수 있지만 이 기사에 제공된 예는 기본 투표 시스템 개발을 시작하기 위한 참조로 사용할 수 있습니다.
위 내용은 PHP에서 개발한 온라인 투표 시스템에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

phpsessionscanstorestrings, 숫자, 배열 및 객체 1.Strings : TextDatalikeUsernames.2.numbers : integorfloatsforcounters.3.arrays : listslikeshoppingcarts.4.objects : complexStructuresThatareserialized.

세션 재생은 세션 고정 공격의 경우 사용자가 민감한 작업을 수행 할 때 새 세션 ID를 생성하고 이전 ID를 무효화하는 것을 말합니다. 구현 단계에는 다음이 포함됩니다. 1. 민감한 작업 감지, 2. 새 세션 ID 생성, 3. 오래된 세션 ID 파괴, 4. 사용자 측 세션 정보 업데이트.

PHP 세션은 응용 프로그램 성능에 큰 영향을 미칩니다. 최적화 방법은 다음과 같습니다. 1. 데이터베이스를 사용하여 세션 데이터를 저장하여 응답 속도를 향상시킵니다. 2. 세션 데이터 사용을 줄이고 필요한 정보 만 저장하십시오. 3. 비 차단 세션 프로세서를 사용하여 동시성 기능을 향상시킵니다. 4. 사용자 경험과 서버 부담의 균형을 맞추기 위해 세션 만료 시간을 조정하십시오. 5. 영구 세션을 사용하여 데이터 읽기 및 쓰기 시간의 수를 줄입니다.

phpsessionsareser-side, whilecookiesareclient-side.1) sessions stessoredataontheserver, andhandlargerdata.2) cookiesstoredataonthecure, andlimitedinsize.usesessionsforsensitivestataondcookiesfornon-sensistive, client-sensation.

phpidifiesauser의 sssessionusessessioncookiesandssessionids.1) whensession_start () iscalled, phpgeneratesauniquessessionStoredInacookienamedPhpsSessIdonSeuser 'sbrowser.2) thisidallowsphptoretrievessessionDataTromServer.

PHP 세션의 보안은 다음 측정을 통해 달성 할 수 있습니다. 1. Session_REGENEREAT_ID ()를 사용하여 사용자가 로그인하거나 중요한 작업 일 때 세션 ID를 재생합니다. 2. HTTPS 프로토콜을 통해 전송 세션 ID를 암호화합니다. 3. 세션 _save_path ()를 사용하여 세션 데이터를 저장하고 권한을 올바르게 설정할 보안 디렉토리를 지정하십시오.

phpsessionfilesarestoredInTheRectorySpecifiedBysession.save_path, 일반적으로/tmponunix-likesystemsorc : \ windows \ temponwindows.tocustomizethis : 1) austession_save_path () toSetacustomDirectory, verlyTeCustory-swritation;


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

mPDF
mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.

안전한 시험 브라우저
안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.

맨티스BT
Mantis는 제품 결함 추적을 돕기 위해 설계된 배포하기 쉬운 웹 기반 결함 추적 도구입니다. PHP, MySQL 및 웹 서버가 필요합니다. 데모 및 호스팅 서비스를 확인해 보세요.

Eclipse용 SAP NetWeaver 서버 어댑터
Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

VSCode Windows 64비트 다운로드
Microsoft에서 출시한 강력한 무료 IDE 편집기
