Q&A

설문참여를 비회원은 막으려고 하는데요.

2021.12.03 08:30
345
0
CMS/프레임워크 Rhymix 2.0
개발 언어 PHP 7.2

$logged_info = Context::get('logged_info');
    if($act == 'procPoll' && $called_position == 'before_module_proc') {
        if(!$logged_info) {
막으려는 코드
        }
    }

 

이렇게 시도하는데 그냥 설문참여가 되어버리네요.

 

act, called_position 이 무시되는 상황인가요??

 

 

https://github.com/rhymix/rhymix/blob/master/modules/poll/poll.controller.php#L274

댓글 3

  • 2021.12.03 08:35 #1633441
    $act 를 Context::get('act') 으로 호출하셧다는 가정하에 답변드리자면.. 보통 해당 투표자체는 아마 form 전송이 아니라 exec_json() 으로 호출하는 ajax으로 로딩시킬거예요.
    https://xetown.com/questions/1625569
    위 링크처럼 지난 질문에서 exit을 호출하는 경우가 있는지 아닌지 한번 확인은 해봐야할것 같아요.

    기본적으로 debugPrint 을 활용해어

    if($act~~~~ 로 감싸는 상단 과 하단 코드들이 정확하게 들어오는지 등등부터 하나하나씩 살펴보세요.
  • 2021.12.03 08:40 #1633448
    아.. 실수가 있었네요. 템플릿에서나 가능한 문법을 썼네요.
    Context::get('act') 로 하니 잘 됩니다. 감사합니다.
  • 2021.12.03 08:48 #1633454
    스킨수정을 많이 하시다가 PHP으로 넘어오시는 경우 가끔씩 그럴수 있어요.

    모든 프로그래밍언어는 마찬가지로 모든 변수에 아무런 값이 없는 상황이라는 인식으로 이해하시면 디버깅이 좀 더 편하답니다. ㅎㅎ