게시판에 댓글을 달면 페이지가 깨어집니다.
CMS/프레임워크 | XE 1.x |
---|---|
개발 언어 | 사용안함 |
문제 페이지 주소 | 비공개 (작성 후 5일 경과) |
오늘 작업을 해보려고 하니까, 게시된 글에 댓글을 달면 이상하게 깨어지네요.
Fatal error: Uncaught Error: Call to undefined function mysql_fetch_array() in /host/home4/godnu/html/files/cache/template_compiled/a35017fbcb12aa3c69de33ad72da15d4.compiled.php:44 Stack trace: #0 /host/home4/godnu/html/classes/template/TemplateHandler.class.php(430): include() #1 /host/home4/godnu/html/classes/template/TemplateHandler.class.php(197): TemplateHandler->_fetch() #2 /host/home4/godnu/html/files/cache/template_compiled/15f8904ead2955a5de38154b847bf8aa.compiled.php(331): TemplateHandler->compile() #3 /host/home4/godnu/html/classes/template/TemplateHandler.class.php(430): include('/host/home4/god...') #4 /host/home4/godnu/html/classes/template/TemplateHandler.class.php(197): TemplateHandler->_fetch() #5 /host/home4/godnu/html/files/cache/template_compiled/ba55f44244edd45591e322783a3689f6.compiled.php(4): TemplateHandler->compile() #6 /host/home4/godnu/html/classes/template/TemplateHandler.class.php(430): include('/host/home4/god...') #7 /host/home4/godnu/html/classes/template/TemplateHandler.class.php(197): Tem in /host/home4/godnu/html/files/cache/template_compiled/a35017fbcb12aa3c69de33ad72da15d4.compiled.php on line 44
이렇게 하단에 나와요.
첨부한 a35017fbcb12aa3c69de33ad72da15d4.compiled.php 의 44줄을 어떻게 수정해야 할까요? ㅠ
혹 아시는 분 계시면 좀 알려주세요. ㅠ 부탁드립니다. ㅠ
다른 게시판에 댓글을 달아도 현재 다 깨어지고 있어요. ㅠ
php 버전은 제가 몰라서 '사용안함'으로 올렸습니다.
참고로 게시판은 요즘은 활동을 하지 않으시는데, '이지보드'라는 게시판을 몇 개의 사이트를
해당 게시판을 정품으로 몇 개 구매해서 사용하고 있었습니다.
댓글 6
에러가 나는 파일 경로는 템플릿 문법을 변환하는 과정에서 생성된 임시파일이고,
원본은 게시판 스킨에 있으니, 원본 파일을 찾아서 수정하셔야 합니다.
사용하시는 스킨에서 유사한 코드가 있는 파일을 찾아보세요.
댓글 보여주는 부분이라면 comment_뭐시기라는 파일 이름이 붙어 있을 가능성이 높습니다.
에러가 나는 것을 보니 PHP 7.0 이상 버전으로 올리신 모양인데,
PHP 7.0 이상에서는 mysql_query, mysql_fetch_array 등의 함수를 사용할 수 없습니다.
스킨에서 DB 함수를 직접 호출하는 것은 XE에서는 있어서는 안 될 일인데...
바로 열몇줄 아래를 보면 버전 관계없이 호환되는 oDB->_query를 잘 사용했는데
왜 한 군데만 mysql_query, mysql_fetch_array를 썼는지 의문이네요.
아랫부분처럼 oDB->_query, oDB->fetch를 사용하도록 수정해야 합니다.
알려주신 수정부분을 아직 찾지를 못하고 있습니다. ㅠ
배울게 너무 많은 초보입니다. 감사해요.
첨부하신 php 소스에 보면, mysql 명령어를 직접 쓴 부분들이 있는데
mysql_query 나 mysql_fetch_array 부분을
mysqli_query 나 mysqli_fetch_array 등으로 문법을 바꾸셔야해요
단순히 명령어만 바꾸면 안 되고, 이 함수의 변수값들이 바뀌어서 관련 수정을 하셔야할겁니다.
변수값을 바꿀 실력이 안되어서
게시판을 스케치북 스킨으로 바꿔보고 있는 중입니다. 답변 감사드립니다. 즐거운 밤되세요. ^^
감사해요. 즐거운 주말되세요.