조회 수 87 추천 수 0 댓글 4
Extra Form

현재접속자 위젯을 사용중인데, 현재 접속자만 나오는것이 아닌 미접속자도 같이 표시되게 하고 싶습니다.

 

ex

[온라인] 고양이

[온라인] 강아지

[오프라인] 악어

[오프라인] 토끼 

 

형식으로... 말이죠

 

 

현재 접속자 위젯과 그룹별 멤버 위젯을 혼종을 시켜서...

(그룹별 멤버 위젯을 수정하여 세션을 가진 유저를 member_list2 에 넣게 만들었습니다.) 

 

($widget_info->member_list as $key => $val) 의 경우 현재 접속자

($widget_info->member_list2 as $key => $val) 의 경우 전체유저로 출력되도록 수정은 하였는데

 

여기서 전체유저를 반복문으로 표시해주되, 현재접속자는 제외하고 표시하거나 할 방법이 있을까요?

이것저것 시도해 보았지만 전부 신텍스 에러가 나와서 ㅠㅠㅠ php알못은 서럽습니다

 

반복문 두개를 비교하는 방법은 없는건가요?

 

  • ?
    member_list2가 배열 형태이기 때문에 배열에서 찾아서 제외시켜주면 될듯한데요
    반복문을 두개쓰실필요는 없구요
  • ? profile
    배열이라는것이 $key => $val 이 부분을 의미하시는건가요?

    배열에 대한 이해도가 부족해서 ㅠㅠ member_list 와 member_list2 모두 반환되는 값은
    $val->nick_name 으로 반환이 됩니다.

    값이 같아서 비교를 못할것 같아서 반복만 두개 자체를 비교하는 방법으로 생각했던건데...

    배열에서 제외한다는것이 어떻게 하는것인지 혹시 좀더 상세하게 알려주실수 있나요 ㅠㅠ
  • profile

    현재 접속자에서 in_array 하세요

     

    전체배열에서 반복하신후에 키값이 아마 멤버번호일텐데

     

    in_array 써서 현재접속자에 멤버번호 있는지 체크하고 있을때 온라인으로 띄우면 될듯

  • profile profile
    댓글 감사합니다.

    <!--@if(in_array('테스트', $widget_info->member_list))--> 이런식으로 쓰는건가요?
    as $key => $val 부분까지 입력하면 에러가 발생하네요....

서버에 요청 중입니다. 잠시만 기다려 주십시오...