Tip & Tech

활용팁

홈 > 회원포럼 > 활용팁
활용팁

회원 사진 교체 후 교체 전 사진으로 보이는 문제

9 Ryan 1 193 3 0
1. 증상
로그인 후 회원 사진을 변경하면 바로 수정된 이미지로 보여지지 않는 문제


2. 원인
회원 사진을 변경하더라도 파일명이 동일하기 때문에 과거 이미지가 인터넷 브라우저에 캐싱되어 있으므로 과거 사진으로 보여집니다.
그래서 브라우저에서 캐시삭제 후 새로고침을 해야만 변경한 이미지로 보입니다.
하지만 일반 방문자들은 그런 사실을 잘 모르기 때문에 기능이 동작하지 않는다는 오해를 불러일으키기도 합니다.


3. 해결방법
여러 방법이 있겠지만 파일 경로뒤에 랜덤화된 문자를 넣어서 파일 경로를 다르게 인식하게 하여 즉시 변경된 이미지로 보이게 하는 방법은 아래와 같습니다.

Basic 테마 기준으로 우측 사이드바에 나오는 사진을 변경하는 예시

  가. thema/Basic/widget/basic-sidebar/user.php 9번째줄에 보면 $member['photo'] 가 회원사진 이미지 경로입니다.
  나. 2번째 줄 아래와 같이 코드 추가
      $random_no = rand(000000,999999); // 랜덤화된 숫자
      $memberphoto = $member['photo'].'?ca='.$random_no; // 원본 사진 URL 뒤 랜덤화된 숫자 부여
  다. 9번째줄을 다음과 같이 수정
      <?php echo ($member['photo']) ? '<img src="'.$memberphoto.'" alt="">' : '<i class="fa fa-user-plus"></i>'; //사진 ?>

이 외에도 skin/member/basic/myphoto.skin.php 등에서도 위 코드를 참고하여 수정해주면 됩니다.

1 Comments
7 아름드리79 09.06 13:50  
아주 좋은소스 추천드립니다
제목
최근 글
최근 댓글
Facebook Twitter GooglePlus KakaoStory NaverBand