채택완료

reload 질문입니다.

2016-10-11 (화) 19:35:18 4,245

<?php
    delete_cache_latest($bo_table);
    if ($file_upload_msg){
        alert($file_upload_msg, G5_HTTP_BBS_URL.'/board.php?bo_table='.$bo_table.'&amp;wr_id='.$wr_id.'&amp;page='.$page.$qstr);
    }
    else{
       
        echo '<script>';
        echo 'parent.document.location.href = parent.document.location.href' ;
        echo  '</script> ';
    }   
    ?>

현재 update.skin 부분에 페이지를 reload하기 위하여 스크립트를 작성하였습니다.

새로고침이 되면 전체페이지가 새로고침이 되면서 iframe src에 설정한 메인화면으로 돌아오게 되는데

새로고침은 되면서 iframe내에서 작업하고 있는 페이지는 유지하는 방법이 있을까요? 

|

답변 1개 / 댓글 10개

채택된 답변
+20 포인트
2016-10-11 (화) 19:48:13

부모창에서 iframe 주소 부분을 

<iframe src="<? if($_GET['ref']) { echo $_GET['ref']; } else { echo "원래 주소"; } ?>"></iframe>

이런 식으로 고치시고

echo "parent.document.location.href = parent.document.location.href + '&ref=".$_SERVER['HTTP_REFERER']."'";

이렇게 변경해 보세요.

form을 전송했다면 리퍼러가 있을 테고 그 리퍼러를 부모창에 get으로 넘겨서 그걸 iframe으로 다시 쏴 주는 방식입니다. 

답변에 대한 댓글 10개

2016-10-11 (화) 20:02:11
src="<? if($_GET['ref']) { echo $_GET['ref']; } else { ?><?php echo G5_THEME_IMG_URL ?>/xxx.png <?php } ?>"

말씀하신대로 위의 src를 이렇게 바꾸니깐... 아예 페이지 자체가 나오질 않네요 ㅠㅜ
제가 쓴 거 그대로 넣으세요.
모양 이쁘게 하려고 문법을 이상하게 쓰신 거 같네요.
<iframe src="<? if($_GET['ref']) { echo urldecode($_GET['ref']); } else { echo "원래 주소"; } ?>"></iframe>


echo "parent.document.location.href = parent.document.location.href + '?ref=".urlencode($_SERVER['HTTP_REFERER'])."'";

두 가지 이렇게 바꿔 보세요.
2016-10-12 (수) 10:34:58
주소값은 같지만 .. 결과는 404 not found 같은 결과가 나오네요 ㅠ
2016-10-12 (수) 10:37:20
아 현재 구성이 따로따로 창이 만들어져있는것이 아니라

메인페이지에 오른쪽편에 iframe 으로 사용중이고 왼쪽편에는 게시글을 출력해서 사용중입니다.

결국에 하나의 페이지에 두개가 있는셈인거죠... 혹시나 다른 구성에서 쓰는 방법을 말해주셨을수도 있어서 ㅜ
http://nyaongii.dothome.co.kr/temp/wrid_147088.php?ref=http%3A%2F%2Fnyaongii.dothome.co.kr%2Fbbs%2Fboard.php%3Fbo_table%3Dfree%26wr_id%3D161

테스트로 페이지를 만들었습니다.
뒤에 ?ref에 주소가 붙었을 경우엔 그게 iframe으로 들어가고 그렇지 않을 경우엔 그냥 지정한 주소가 들어가게 되어 있습니다.
저게 작동 안 할 리가 없는데 직접 코드를 보지 않고 답변하기란 상당히 힘이 드네요.
2016-10-12 (수) 11:09:37
아.... 말씀해주신 위의 파일에선 &ref 이렇게 선언을 해주셨는데 밑에선 ?ref이렇게 선언을 해주셨네요ㅜㅜ 그걸 캐치를 하지 못했습니다 ㅜ저 두개가 바뀐지 모르고 계속 &를 사용하고 있었네요 ㅜㅜㅜ

정말 감사합니다!!

염치없지만 하나만 더 여쭤보겠습니다.
현재 글쓰기 창에서 작성완료를 누를시 말씀하신대로 reload가 되고 다시 글쓰기 창으로 넘어오는데
이 글쓰기 창을 글보기창으로 변경할수는 있을까요???
$lnk = urlencode("/bbs/board.php?bo_table=".$bo_table."&wr_id=".$wr_id);
echo "parent.document.location.href = parent.document.location.href + '?ref=".$lnk;
2016-10-12 (수) 12:30:16
계란님 덕분에 좀 더 원활한 작업이 될꺼같아요!! 정말 감사드리고 좋은하루 되세요!

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