alert 함수 발생시 경고창이 안나오고 바로 홈페이지로 넘어갑니다.

alert 함수 발생시 경고창이 안나오고 바로 홈페이지로 넘어갑니다.

QA

alert 함수 발생시 경고창이 안나오고 바로 홈페이지로 넘어갑니다.

답변 4

본문

안녕하세요?

 

게시판 글쓰기 혹은 수정이나 관리자 메뉴에서 회원 정보 수정 등 할때...

어떠한 이유로든지 alert 함수가 호출되면, 경고창이 나와야 하는데요...

 

경고창이 안나오고 바로 홈페이지 첫화면으로 넘어가 버립니다.

경고창이 나와야 어떤 에러내용인지 알 수 있는데요...

 

alert 함수를 추적해보니, common.lib.php 안에 있고, 거기서 다시 G5_BBS_PATH.'/alert.php' 로 넘어가는데요...
어느 부분이 문제인지 모르겠습니다.

 

일반 게시판에서도 그렇구요...

관리자 메뉴에서도 그렇습니다.

alert 함수 발생시 경고창이 안나오고 바로 홈페이지 첫 화면으로 바로 넘어가 버립니다.

 

왜 그럴까요?
 

원인을 찾아보려 했지만 어렵네요....

이 질문에 댓글 쓰기 :

답변 4

어딘가에 alert 함수가 따로 추가 정의 되어 있는건 아닐까요?

이런 경우 경고창 없이 바로 이동 될수 있습니다.


<?php
$msg = 'string message';
$url = '/';
?>
<script>
function alert() {}
alert("<?php echo $msg; ?>");
document.location.replace("<?php echo $url; ?>");
</script>

질문 내용만으론 알아내기 힘들 듯 합니다.

아마도 별도로 커스텀하신 소스의 영향을 받아서 그런 듯....

extend 폴더 안이나 head. tail 쪽 커스텀 한 소스 살펴보세요.

이 문제, 자체 해결해 보긴 했습니다.

그런데 이 방법이 맞나 모르겠네요.

한단계한단계 메시지 출력해 보며 확인해보니...

 

bbs/alert.php 파일의 12번째 라인에


include_once(G5_PATH.'/head.sub.php');

 

이 있습니다.

이 라인만 지나면 바로 홈페이지 첫화면으로 가버렸습니다.

그래서 이 라인을 주석처리 했더니 제대로 경고창이 나오네요.

그런데 저 라인을 주석처리 해도 되는건지 모르겠습니다.

최신 alert.php 에 보아도 다 있던데요...

 

아무튼 저 라인 주석처리로 문제는 해결되었는데, 왜 저걸 주석처리해 해야 하나 의문은 남습니다.

head.sub.php 거치면 이동하는 걸로 봐서 이 안에 이동시키는 뭔가가 있나 보네요.
다시 아래 파일들 꼼꼼이 점검해 보세요.
루트랑 테마 안의 head.sub.php 파일과
extend 폴더안 소스,
/config.php
/common.php
/lib/common.lib.php

윈머지 같은 파일 비교 소스 이용해 원본과 뭐가 달라졌는지 체크해 보세요.
https://homzzang.com/b/free-4338

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 1,178
© SIRSOFT
현재 페이지 제일 처음으로