테스트 사이트 - 개발 중인 베타 버전입니다

투표 관련문의 채택완료

시린♡ 10년 전 조회 3,367

관리자 페이지 보면 생성만 있지 종료 기능은 없던데 

 

투표를 시작해서 기간을 정해 기간내에 투표를 하게하고 기간이 끝나면 투표가 종료되어

 

투표목록이 관리자에게만 노출되게 하려면 어떻해 해야할까요?

 

관리자 페이지에서 투표 내역이 남지를 않다보니;; 불편한점이 있긴하네요.

 

카운트 기능이 있었으면 좋앗을텐데..

댓글을 작성하려면 로그인이 필요합니다.

답변 3개

채택된 답변
+20 포인트
10년 전

투표 종료에 대한 기능이 빠져 있네요 결론부터 말씀드리면 테이블변경 각 소스 변경이 되어야 합니다.

 

좀 복잡은 하겠지만 불가능은 없지요...

 

1. 테이블 변경

2. 소스 수정 및 추가

끝.

 

빨간색은 추가를 파란색은 수정으로 보시면 됩니다.

 

우선 투표테이블 변경 (phpmyadmin 있으시면 좀 편합니다.) 쿼리를 실행 하세요. 

 

ALTER TABLE `g5_poll` ADD `po_edate` DATE NOT NULL DEFAULT '0000-00-00' AFTER `po_date` 

 

각 페이지 수정

/adm/poll_form.php  

88 줄

                       

                            

 

/adm/poll_form_update.php

15 줄

    $sql = " insert {$g5['poll_table']}                     ( po_subject, po_poll1, po_poll2, po_poll3, po_poll4, po_poll5, po_poll6, po_poll7, po_poll8, po_poll9, po_cnt1, po_cnt2, po_cnt3, po_cnt4, po_cnt5, po_cnt6, po_cnt7, po_cnt8, po_cnt9, po_etc, po_level, po_point, po_date, po_edate )              values ( '{$_POST['po_subject']}', '{$_POST['po_poll1']}', '{$_POST['po_poll2']}', '{$_POST['po_poll3']}', '{$_POST['po_poll4']}', '{$_POST['po_poll5']}', '{$_POST['po_poll6']}', '{$_POST['po_poll7']}', '{$_POST['po_poll8']}', '{$_POST['po_poll9']}', '{$_POST['po_cnt1']}', '{$_POST['po_cnt2']}', '{$_POST['po_cnt3']}', '{$_POST['po_cnt4']}', '{$_POST['po_cnt5']}', '{$_POST['po_cnt6']}', '{$_POST['po_cnt7']}', '{$_POST['po_cnt8']}', '{$_POST['po_cnt9']}', '{$_POST['po_etc']}', '{$_POST['po_level']}', '{$_POST['po_point']}', '".G5_TIME_YMDHIS."', '".G5_TIME_YMDHIS."' ) ";

 

24줄

    $sql = " update {$g5['poll_table']}                 set po_subject = '{$_POST['po_subject']}',                      po_poll1 = '{$_POST['po_poll1']}',                      po_poll2 = '{$_POST['po_poll2']}',                      po_poll3 = '{$_POST['po_poll3']}',                      po_poll4 = '{$_POST['po_poll4']}',                      po_poll5 = '{$_POST['po_poll5']}',                      po_poll6 = '{$_POST['po_poll6']}',                      po_poll7 = '{$_POST['po_poll7']}',                      po_poll8 = '{$_POST['po_poll8']}',                      po_poll9 = '{$_POST['po_poll9']}',                      po_cnt1 = '{$_POST['po_cnt1']}',                      po_cnt2 = '{$_POST['po_cnt2']}',                      po_cnt3 = '{$_POST['po_cnt3']}',                      po_cnt4 = '{$_POST['po_cnt4']}',                      po_cnt5 = '{$_POST['po_cnt5']}',                      po_cnt6 = '{$_POST['po_cnt6']}',                      po_cnt7 = '{$_POST['po_cnt7']}',                      po_cnt8 = '{$_POST['po_cnt8']}',                      po_cnt9 = '{$_POST['po_cnt9']}',                      po_etc = '{$_POST['po_etc']}',                      po_level = '{$_POST['po_level']}',                      po_point = '{$_POST['po_point']}',                      po_date = '{$_POST['po_date']}',                      po_edate = '{$_POST['po_edate']}'                 where po_id = '{$_POST['po_id']}' ";

 

이렇게 하시면 관리자에서 일단 조절은 하실 수 있습니다.

 

/lib/poll.lib.php

18줄

 

    $po = sql_fetch(" select * from {$g5['poll_table']} where po_id = '$po_id' and DATE(now()) between po_date and po_edate ");     if(!$po)         return;

ob_start(); ..... 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

시린♡
10년 전
복잡하지만 테스트좀 먼저 진행해봐야겠네요. 답변감사합니다.

댓글을 작성하려면 로그인이 필요합니다.

10년 전

삭제를 하면 지워지는건 당연한거구여.. 삭제기능을 없애야겟져

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

시린♡
10년 전
투표마감 기능자체가 없는데 삭제 기능을 없앤들 달라질께있나요..

댓글을 작성하려면 로그인이 필요합니다.

10년 전

투표한 기능자체가 있다면 내역기록이 디비에 남겠죠~

그냥 끌고오면 댈거같네여 

 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

시린♡
10년 전
아쉽게도 해당방법을 써보려고했으나 그냥 관리자 목록에서 삭제하면 db에서도 역시나 삭제되네요.
그거모르고서 db에 있나 봤더니 없어서 뭐지 하고서 테스트로 만들어놓고 해보니역시나 삭제하면 그냥 지워지는 시스템이네요.

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인