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

활동에따라 상대적인 회원레벨 지정하고자 합니다 채택완료

아길이 9년 전 조회 3,871

가장 큰점수 300

가장 작은점수 20

나의 점수 150 

 

이렇게 주어졌을때

이를 7단계로 나누고

나의 점수에 따라 2~7 레벨을 자동 지정 하려고 합니다.

 

 

부끄럽습니다만 

레벨을 뽑는 수식이 어떻게 되나요?

 

감사 합니다.

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

답변 2개

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

조건 설계가 좀 더  구체적이어야 할 듯 싶습니다

 

단순 포인트 누적인지 / 기간내 포인트인지

 

상대값인지 절대값인지

 

레벨에 관련되는 포인트는 어디서 얼만큼 추출하는지

 

그외에도 필요한 조건들이 있을 수 있겠지요. 

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

답변에 대한 댓글 2개

아길이
9년 전
조건에 대한 구상은 되 있습니다.
포스팅카운트 + 포인트 + 로그인횟수등 등,,,
이런것을 합산하여 회원의 점수필드에 입력되구요

회원중
가장 큰점수를 얻은 회원과
가장 낮은 점수를 얻은 회원이 주어지고
나의 점수가 주어 진다면...

위 회원들의 절대점수를 기준으로 7레벨로 나눈다음
나의 점수가 몇레벨에 해당 되는지를
로그인 체크시 업데이트 시키고자 합니다.

즉 회원의 레벨은 회원들 점수에 대한 상대적으로 결정 하고자 함 입니다.
아길이
9년 전
상대적평가는 순위에 해당된다는것을 왜 몰랐을까요

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

9년 전

(가장큰수-가장작은수)/레벨수 = 레벨1구간의 값

 

$증가값 = 1구간값 ;

 

for($i=2; $i<7;  $i++) {

여기서 어떻게 해보면 될까요?

$증가값++; 

}

 

 

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

답변에 대한 댓글 1개

모조키
9년 전
쓰신것 처럼 하면 현재 본인과 다른 회원의 값을 비교할수가 없으니...

실시간으로 해당포인트가 계속 업데이트 되고있어야 합니다ㅣ..


회원테이블에 빈칼럼( mb_rankpoint) 을 하나 추가 한 다음에

순서를 매길 포인트를 전부 계산해서 넣습니다.

게시물을 쓰거나 로그인을 하거나 점수에 변동이 생기는 구간마다 업데이트를 해야겠죠.

그 후에 타겟회원의 랭크포인트를 불러와서 $member[mb_rankpoint]

$sql = select count(*) from g5_member_table where mb_rankpoint > '".$member[mb_rankpoint]." ;

쿼리로 해당 회원의 전체 순위를 구하면

회원순위 / 전체회원수 해서 나오는 값을

7등급이라면 (1/7)를 n배 해가면서 비교해서

순위를 표시하면 되겠네요.

그냥 소수점이니까 10등급으로 하면 더 편하겠고요..


mb_rankpoint 를 계속 업데이트 해야되는게 손이 많이 가는 작업이겠군요

이 포인트와 관계된 부분은 여기저기 다 고쳐야 하니까...

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

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

로그인