728x90
11장 소스를 테스트할 때에는 php.ini 파일의 register_globals=On으로 설정하여야 합니다.

오늘 책을 살펴보니 11장 게시판 만들기 강좌에서 독자님들이 다소 소스코드 실행에 문제가 생길 소지가 있음을 발견하였습니다. 이 책이 원래 3장에 걸쳐서 게시판이 제 모습을 찾아가는 구성을 갖고 있습니다. 그래서 11장 게시판 만들기의 경우에 php.ini 설정에서 register_globals=On 상태임을 가정하고 작성하였습니다. 그 이유는 많은 프로그래머들이 편의를 위해서 register_globals 옵션을 On으로 설정하고 있기 때문입니다. 그러나 책에도 언급하였듯이 On으로 설정되어 있는 경우 보안적인 문제가 발생하여 Off 설정을 권장하고 있습니다. 그래서 이 책에서는 12장에서 게시판을 계층형으로 수정하면서 이를 Off 설정으로 변경하여도 잘 동작할 수 있도록 변경하는 것을 고려하고 예제 소스를 제작하였습니다.

그런데 책에보니 제가 이러한 내용에 대해서 11장의 서두에 언급을 하지 않았다는 것을 이제야 알게 되었습니다. 최근 Off 설정이 기본값이고 대체로 Off 설정을 사용하고 있기 때문에 그냥 이 소스를 사용하게되면 제대로 동작하지 않습니다. 따라서 제대로 소스코드를 실행하기 위해서는 register_globals=On 으로 설정하시거나 소스코드에서 $id, $no 변수를 모두 $_GET[id], $_GET[no] 으로 변경(에디터의 replace 기능을 사용하시면 편리합니다.)하여야 올바르게 동작합니다.
728x90
복사했습니다!