현재 한 페이지로 iframe과 최신글 두개를 사용해서 쓰고 있습니다.
한쪽편에는 iframe으로 사용하고 한쪽편에는 최신글을 뽑아서 사용하는 중이죠..
그래서 iframe 내에서 글쓰기 작성버튼을 클릭 시 전체페이지가 새로고침되면서 최신글 부분에 글 등록이 되어야 하는데 안되네여 ㅜㅜ
write_update.skin.php 부분은 일단 잘 넘어가는것을 확인을 하였고
<script>
parent.location.reload();
</script>
<script>
top.location.reload();
</script>
두개를 했을 시 뭔가 전체 페이지가 새로고침이 되는 느낌이 나긴하는데
최신글 부분에서는 글이 안뜹니다..
그런데 워크벤치에선 데이터가 들어갔다고 나오구요...
그래서 수동으로 다시 F5번을 눌러도 최신글이 갱신이 안되네요 ㅜ
어떤 문제인걸까요...
참고로 최신글 뽑아오는 글의 갯수설정은 넉넉하게 해서 그것때문에 안나오는 경우는 없습니다.
도움 부탁드립니다 ㅜ
답변 3개 / 댓글 5개
index.php
<div style="<?php echo $lt_style ?>"> <?php echo latest("theme/basic", 'Document', 100, 50); ?> </div> <div class="section_wrap"> <div class="section"> <div class="contents"> <iframe id="iframe_show" name="iframe_show" marginheight="0" marginwidth="0" width="1300" height="900" scrolling=yes src="<?php echo G5_THEME_IMG_URL ?>/4th.png" frameBorder=0></iframe> </div> </div> </div>
write_update.skin.php
<?phpdelete_cache_latest($bo_table);if ($file_upload_msg) alert($file_upload_msg, G5_HTTP_BBS_URL.'/board.php?bo_table='.$bo_table.'&wr_id='.$wr_id.'&page='.$page.$qstr);else echo '<script>parent.document.location.reload();</script> ';?>
혹시나 싶어 그누보드 원본 소스를 디벼보니 최신글 캐쉬처리가 뒤에 되고 있었네요.
이게 최신글 캐쉬를 업데이트하지 않아 생기는 문제였습니다.
최신글 캐쉬를 사용하지 않거나 위 코드 처럼 하시면 되겠습니다.
답변에 대한 댓글 1개
테스트 url을 주시면 좀 더 자세한 답변을 얻을 수 있을 것 같습니다.
위의 정보만으로는 어떠한 원인인지 파악하기가 힘드네요.
답변에 대한 댓글 3개
기존의 메인페이지를 1,
메인페이지에 가져온 latest를 2,
iframe을 3이라 칭하면
1안에 2,3이 있습니다.
그래서 3에서 글쓰기나 글삭제를 할 시
2를 갱신하기 위해서 1을 reload해야하는데 이 reload하는 곳이 write_update.skin이라는 것은 알고있겠는데... 음... 안되네여 ㅜㅜ 글쓰기를 할때 write_update.skin이 있으면 버튼을 누르고 거기로 넘어간다고 해서 그곳에서 reload를 넣었는데 1이 새로고침이..... ㅜㅜ
다른 문제가 있는듯도 한데요.
해당 페이지의 소스라도 있어야 알 수 있을 듯 합니다.
<div style="<?php echo $lt_style ?>">
<?php
echo latest("theme/basic", 'Document', 100, 50);
?>
</div>
<div class="section_wrap">
<div class="section">
<div class="contents">
<iframe id="iframe_show" name="iframe_show" marginheight="0" marginwidth="0"
width="1300" height="900" scrolling=yes src='<?php echo G5_THEME_IMG_URL ?>/4th.png' frameBorder=0 ">
</iframe>
</div>
</div>
</div>
이거 구요
write.skin은 target을 걸어놔서 iframe상에서 글쓰기가 가능하도록 하였습니다.
그리고 해당 skin에 write_update.skin.php를 만들어서
<script>
top.location.reload();
</script>
이렇게 하였습니다.
혹시 반영된 페이지 (write_update.skin.php) 에서 새로고침 하는건 아닌가요? 페이지가 최신목록에 있는 페이지라면 새로고침해서도 떠야 되는게 정상일텐데요
답변에 대한 댓글 1개
스크립트사용해서 저렇게 전체페이지를 새로고침했는데 안되네요..
답변을 작성하려면 로그인이 필요합니다.
write_update.php 부분에 똑같은 캐시처리 부분을 주석다니깐 되네요! 감사합니다 ^_^
그런데 크롬에서는 잘 작동되는데 파이어폭스에서는 갱신이 되긴하는데 무슨 위험팝업창같은게 뜨네여..
일단 정보 주셔서 감사합니다!