테스트 사이트 - 개발 중인 베타 버전입니다

그누보드4 에서 <Script> 미작동시 확인할 사항

· 11년 전 · 3934
3개월 전, 처음으로 호스팅 이전시켜온 홈페이지가 그누보드 4로 밝혀지면서 그누보드와 인연을 맺은 한 개발자입니다.

처음으로 올려보는 팁입니다.

그누보드4 에서 일부 함수를 이용하여 스크립트를 작성하다 보면 이와 같이 스크립트를 작성할 경우가 있습니다.

<?
insert_point($member[mb_id],..............);
alert("결제 완료");
?>

여기서 주의깊게 봐야 할 부분은 alert(""); 함수입니다.

모두들 아시는 것처럼, (모를수도 있습니다만..)
저기 보이는 alert 함수는 common.lib.php 파일에서 script 를 이용하여 PHP 함수로 만들고 사용하는 것이죠.
때문에 문제점이 발생합니다.

해당 PHP 용 개조 함수를 이용할 경우에, 주의해야 할 상황은 다음과 같습니다

1. 부모창에서 자식창을 호출할 때
2. 1번에서와 연계되는 내용으로, 해당 PHP 함수를 사용하는 창이, 자식 창일 때

결론으로 가서 보자면, 해당 PHP용 alert 함수를 이용할 경우,
alert를 출력 후, 일반 <script> 의 alert 와 넘기는 자체가 좀 많이 다릅니다.

PHP용 alert 함수를 이용할 경우, opener 가 작동하지 않습니다.

이와 같은 문제의 Solution 으로는, 다음과 같은 방법이 있습니다.

★Server Side Language, Client Side Laguage 를 완전히 분리시키는 것이 목표입니다.
결제 및 중요한 사항이 관련된 php 파일을 작성하실 때, alert 및 confirm 이 필요하다면,

<?
?>
로 만들어진 alert 및 confirm 을 사용하는 것이 아닌,
<script>
</script>
안에 정상적인 alert(""); 및 confirm(""); 으로 작동시키는 것이 제어에 현명합니다.

또한, 확실하게 짚고 넘어가야 할 것은 자식 창(child) 으로 열리는지 혹은 자신의 창(self) 에 열리는지 정확히 확인하십시오.

self.close(); 및 window.close(); 를 이용시에 주의해야 할 부분입니다.


이상 웹 개발의 길에 들어선지 3개월 된 개발자의 잡담이였습니다.

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

게시글 목록

번호 제목
33785
33781
33776
33761
33753
33751
33749
33731
33706
33694
33690
33683
33674
33672
33662
33655
33608
33605
33587
33581