본문 바로가기
웹개발/PHP

그누보드 투표 기간 관리 하기

by 코딩에서개발로. 2016. 8. 2.
반응형

그누보드 5.1.0 버전 기준입니다.

 
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 줄   

    <tr>
        <th scope="row">투표등록일</th>
        <td><?php echo $po['po_date']; ?></td>
    </tr>

     <!-- 추가 및 변경 -->

 

    <tr>
        <th scope="row">투표등록일</th>
        <td><input type="text" name="po_date" value="<?php echo $po['po_date'] ?>" id="po_edate" class="frm_input" maxlength="10"></td>
    </tr>
    <tr>
        <th scope="row"><label for="po_edate">투표종료일</label></th>
        <td><input type="text" name="po_edate" value="<?php echo $po['po_edate'] ?>" id="po_edate" class="frm_input" maxlength="10"></td>
    </tr>

 


/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

39줄


    $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(); ..... 

반응형