RadarURL
웹 프로그래밍

XE 설문조사 모듈에서 회원만 설문 조사 하도록 수정

by JaeSoo posted May 09, 2013
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄

0.1.2 알려진 문제
1. 사설 IP에서 다른 ID로도 설문에 응할 수 없다.
2. 비회원은 IP가 다른 PC에서 설문에 계속 응할 수 있다.
   (회원 외 불특정 다수 설문조사용일 때에는 상관 없음)
   (설문 조사 옵션에 회원 또는 비회원 포함 선택 폼을 추가 시켜야 함)


작업은 modules/poll 모듈에서 합니다.


poll.model.php 파일 편집

회원만 설문조사에 응할 수 있도록 합니다.

※ 이 부분은 오류 수정이 아니므로 꼭 필요시에만 수정 바랍니다.


아래 함수 내용 중 굵은 부분을 주석처리하고 그 밑에 return true;삽입합니다.

        function isPolled($poll_srl) {

            $args->poll_srl = $poll_srl;

            if(Context::get('is_logged')) {
                $logged_info = Context::get('logged_info');
                $args->member_srl = $logged_info->member_srl;
            } else {
                //$args->ipaddress = $_SERVER['REMOTE_ADDR'];
                return true;
            }
            $output = executeQuery('poll.getPollLog', $args);
            if($output->data->count) return true;
            return false;
        }




queries/getPollLog.xml 파일 편집

그 아래 줄을 삭제합니다.
(이 부분은 회원만 설문조사에 응할 수 있도록 하는 두번째 작업 입니다)
        <condition operation="equal" column="ipaddress" var="ipaddress" default="ipaddress()" pipe="and" />

 

출처 : http://www.xpressengine.com/tip/14591532


Articles

48 49 50 51 52 53 54 55 56 57