인터넷 시대의 출현으로 사람들의 참여 및 의견 표현에 대한 요구가 점점 강해지고 있습니다. 빠르고 편리한 방법으로 온라인 투표 시스템은 민주적 의사 결정 및 그룹 의견 수집을위한 중요한 도구가되었습니다.
이 기사에서는 PHP 언어를 기반으로 다양한 투표 방법을 지원하는 온라인 투표 시스템을 구현하는 방법을 소개하고 개발자가 자체 투표 플랫폼을 실현할 수 있도록 완전한 코드 예제를 제공합니다.
단일 선택, 객관식 및 점수 투표 방법을 지원합니다.
사용자는 익명으로 투표 할 수 있습니다.
관리자는 투표 주제를 만들고 옵션을 편집하며 투표 시간을 설정할 수 있습니다.
시스템은 투표 결과를 실시간으로 계산하고 표시 할 수 있습니다.
이 두 테이블의 구조의 예는 다음과 같습니다.
테이블 투표 생성 ( id int (11) null auto_increment, 타이틀 Varchar (255) NOL NULL, start_time datetime not null, end_time dateTime not null, 기본 키 (ID) ) 엔진 = innodb 기본 charset = utf8;
테이블 옵션 생성 ( id int (11) null auto_increment, vote_id int (11) NOL NULL, 컨텐츠 텍스트는 null이 아닙니다. 기본 키 (ID), key vote_id (vote_id), 제약 조건 FK_VOTE_ID 외국 키 (vote_id) 참조 투표 (ID)는 업데이트 캐스케이드에서 삭제 캐스케이드 ) 엔진 = innodb 기본 charset = utf8;
// 투표 테마 디스플레이 echo "<h2> ". $ 투표 [ '제목']."</h2> "; // 옵션 foreach ($ 옵션으로 $ 옵션) { 에코 "<input type='" . $vote['type'] . "' name='option' value='" . $option['id'] . "'> ". $ 옵션 [ 'content']."<br/> "; } // 제출 버튼 에코 "<input type='submit' value="투표를 제출하십시오"> ";
// ($ _Server [ 'request_method'] == 'post') if If If If If 투표를 제출합니다. $ selectedOption = $ _post [ '옵션']; // if ($ vote [ 'type'] == 'radio') {handle hand // 단일 선택 투표 $ votecount = 1; } elseif ($ vote [ 'type'] == 'checkbox') { // 객관식 투표 $ voteCount = count ($ selectedOption); } elseif ($ vote [ 'type'] == 'rating') { // 투표 $ totalrating = $ _post [ 'Total_rating']; $ votecount = 1; } // 투표 통계를 업데이트합니다. // 업데이트 작업 수행 : 업데이트 옵션 세트 카운트 = count + 1 여기서 id = $ 옵션 ID } }
// 쿼리 투표 결과 $ 옵션 = $ db-> query ( "옵션에서 옵션에서 vote_id =". $ vote [ 'id'])-> fetchall (); foreach ($ 옵션으로 $ 옵션) { $ votepercentage = ($ 옵션 [ 'count'] / $ votecount) * 100; echo $ 옵션 [ 'content']. ":". ". $ votepercentage. "%<br/> "; }