조회 수 69 댓글 10

오랜만에 xe 업데이트 할겸 체인지를 받으면서 업데이트를 했는데.. 이게 뭐시당가..

갑자기 회원 아이콘이 출력이 안되네요..

 

bkme 확장출력을 넣어도.. 일반 출력을 넣어도 회원 아이콘이 안뜨네요..

채팅방도 그렇고.. 이게 무슨 문제죠.. ㄷㄷ?

 

 

아니.. 게시판 아이콘은 캐시파일재생성하고 여러번 반복하다보니 다시 출력이 되었네요.

하지만 유챗 채팅방에선 회원아이콘이 안뜨네요.

 

연동에 뭔가 문제가 생긴건가..ㅠ

 

xe 최신버전입니다..

  • ?
    라그릿 2016.10.31 19:31:13
    음.. member 모듈때매 그런거네요.

    새로 적용된 member.model.php 파일이 문제인데

    원래 되던 부분은

    $info->src = Context::getRequestUri().$image_mark_file;

    이렇게 되있는 반면..

    새로 바뀐 부분은

    $info->src = Context::getRequestUri().$image_mark_file . '?' . date('YmdHis', filemtime($image_mark_file));

    이런식으로 되있네요.


    이렇게만 봐선 대충 뭔소리인지는 모르겠지만..
    뭐때매 작동이 안되는걸까요
  • ?
    라그릿 2016.10.31 19:43:46
    음 수정할 필요없이 유챗에서 바꾸면 될거같은데..
  • ?
    SimpleCode 2016.10.31 20:07:06
    레벨 아이콘이나 이미지 마크(혹은 그룹 마크)를 말씀하시는 거라면 유챗 위젯 코드를 생성하실 때 설정 가능해요.
  • ?
    라그릿 2016.10.31 20:26:36

    아뇨아뇨, 이미 그렇게 채팅은 셋팅되있습니다. 문제는 현재 xe 코어를 업데이트하고나서의 채팅방 아이콘, 닉콘 출력문제가 일어난거에요.

     

    @기진곰 님께서 수정하신 이미지파일 캐시 갱신 유도가 문제인거같습니다.

    - 깃허브 링크

     

    원본이 이랬다면

    $info->src = Context::getRequestUri().$image_name_file;

     

    바뀐건

     

    $info->src = Context::getRequestUri().$image_name_file . '?' . date('YmdHis', filemtime($image_name_file));

     

    이런식으로 뒤에 진한 초록색부분이 추가되었군요.

     

    문제는 저 진한초록색 부분을  member.model.php  쪽만 지워도 되는지..

    member_extra_info.lib.php  이부분도 같이 수정을 해줘야하는지 고민중입니다.

     

    아니면 저부분을 그대로 두고 유챗 위젯자체에서 해결이 되는지는 모르겠지만 될까 싶어서 이렇게 질문을 남깁니다.

  • ?
    SimpleCode 2016.10.31 21:02:09
    유챗 위젯 자체에서는 오류가 될 만한 것이 보이지는 않네요.
    추가된 부분을 지워보시고 아이콘이 잘 보인다면, 유챗의 문제일 가능성이 큽니다.
  • ?
    라그릿 2016.10.31 21:06:43
    유챗의 문제인거같습니다.
    추가된 캐시 부분을 지워야겠네요.. ㅎㅎ
  • ?
    라그릿 2016.10.31 20:41:36
    @기진곰 님

    현재 member.model.php 부분만 다시 원래대로 돌려서 사용하려고합니다.
    크게 문제는 없을까요?
  • profile
    기진곰 2016.10.31 21:29:03
    아이콘이나 이미지네임이 변경되어도 빨리 반영되지 않는 문제가 생길 수 있습니다.
    윗분 말씀대로 유챗 문제인 것 같기는 하네요. 물음표가 포함된 주소를 인식하지 못한다거나...
  • ?
    라그릿 2016.10.31 21:58:18
    음.. 역시..
    유챗문제인가보군요..
    감사합니다. ㅎ
  • ?
    라그릿 2016.11.02 17:21:05
    XE 사이트 유챗 위젯에 달려있는 Gong님의 글입니다.

    채팅창에 닉네임 아이콘, 회원 아이콘이 연동되지 않으실때 참조하세요.

    XE상에서 회원 아이콘 및 닉네임 아이콘 등록할때
    image_mark->src 와 image_name->src 가
    ..../이미지.gif?20161006142715
    위처럼 등록 날짜 및 시간이 함께 아래 형식으로 저장되더군요.. (저만 그런지는 잘모르겠습니다)

    아래 설명대로 하면 잘 표시될겁니다.

    1. 닉네임 아이콘
    ../widgets/uchat/uchat.class.php 파일에서
    $_image_name = $logged_info->image_name->src;
    바로 아래에 아래 내용 추가
    $_image_name = substr($_image_name, 0, strlen($_image_name) - 15);

    2.회원 아이콘
    ../widgets/uchat/uchat.class.php 파일에서
    if($logged_info->image_mark->src) $_uicon = $logged_info->image_mark->src;
    바로 아래에 아래 내용 추가
    $_uicon = substr($_uicon, 0, strlen($_uicon) - 15);


    ++++

    아마 이미지.gif?날짜 부분은 최신코어에 패치된 멤버모듈에서 추가된 filemtime 때문에 저렇게 출력된다고 생각중입니다.

    유챗 php 자체에서 해결방법이 되니 이제 저처럼 파일을 다시 원본으로 안돌려도 되겠네요 짝짝!

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