php 7.4 up 후에 "등업(그룹) 관리 모듈" "파일종합관리 모듈" 에러
CMS/프레임워크 | Rhymix 2.0 |
---|---|
개발 언어 | PHP 7.4 |
php 7.4로 업하고 나니 날아라(숭숭군)님의 모듈에서 서버 에러가 나면서 실행이 되지를 않습니다.
"등업(그룹) 관리 모듈" 과 "파일종합관리 모듈"인데 숭숭군님이 더 이상 관리를 하지 않으신다고 해서 이곳에 질문을 남깁니다.
"등업(그룹) 관리 모듈"
https://xetown.com/index.php?mid=point_contents&category=17119&page=2&document_srl=23204
은 람보님이 이어서 관리를 하는데 그것을 설치해 봐도 같은 증상입니다.
"파일종합관리 모듈"은 자료가 내려져 없어졌는데 비슷한 에러 증상입니다.
두 모듈다 에러 증상이 비숫한 것으로 보입니다.
php7.0에서는 잘 작동했는데 7.4로 바꾸고 에러가 나내요.

팔공산
Lv. 5
댓글 5
함수가 올바르게 작동하려면 arguments가 위의 오류에서는 3개, 아래 오류에서 1개가 필요한데,
함수를 사용하는 view 단에서 arguments를 누락하고 있는 것 같습니다.
- 함수를 정의하는 model단에서 인자(들)에 default값을 지정하거나, (그렇게 하면 함수를 호출할 때 값이 누락되어도 default값으로 인식하니까요)
- view단에서 arguments의 갯수와 형식을 정확하게 지정해서 함수를 사용해야 할 것 같아요.
모듈에 대한 지식이 부족하여 님의 글을 이해하기가 힘드네요ㅠㅠ
첫 번째 에러메시지 중심으로 접근하면 대강 이런 이야기가 됩니다.
gradeup.view.php 파일의 66행을 보면, getMemberInfo() 함수가 실행될 겁니다.
이 함수가 정의된 gradeup.model.php에서는 함수 이름에 붙은 괄호 사이에 변수(arguments)가 3개가 전달되어야 한다고 하고 있어요.
근데 에러 메시지는 gradeup.view.php 파일 66행의 getMemberInfo() 함수의 괄호 안에 변수가 2개만 전달되고 있다고 경고하고 있는 거죠.
(덧. 두 번째 에러 메시지는 1개가 전달되어야 하는데 0개가 전달되었다는 이야기일테구요)
이 문제를 해결하려면
1. gradeup.view.php에서 함수를 실행할 때 전달할 변수 갯수를 정확하게 맞춰서 전달/실행하든가
2. gradeup.model.php에서 함수를 정의할 때, 누락되는 변수가 있어도 함수 사용이 가능하게 정의를 하든가
해야 한다는 이야기입니다.
60라인
$module_config->gradeup_condition[$val->title]['lv'] = $oGradeupModel->getMemberInfo('lv',$logged_info->member_srl);
92라인
function getMemberInfo($type,$member_srl,$regdate){
라인인데 어떻게 고쳐야지 되나요??
제로보드는 거의 손을 못해봐서여
92라인 이하를 고쳐야할지, 아니면 60라인에서 인수를 더 전달해야 할지는 상황에 따라 다를 것 같네요.