tail.php에 문제가 있어 보입니다.
본문
이번에 새로 배포된 5.5.8.3의 tail.php 코드에 문제가 있어 보입니다.
우선 사이트 정보가 두 번 출력됩니다.
또 초보인 제가 보기에도 구문상 오류가 보입니다.
가령 맨 마지막 줄도 다음과 같이 종료됐는데요
<?php
include_once(G5_PATH."/tail.sub.php");
----------------------
?> 로 마무리 돼야 하는 것 같습니다.
그외에도 여러 이상한 점이 발견되고 있습니다.
고수님들의 도움을 요청드립니다.
다음은 tail.php 전체 내용입니다.
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
if(defined('G5_THEME_PATH')) {
require_once(G5_THEME_PATH.'/tail.php');
return;
}
if (G5_IS_MOBILE) {
include_once(G5_MOBILE_PATH.'/tail.php');
return;
}
?>
</div>
<div id="aside">
<?php echo outlogin(); // 외부 로그인, 테마의 스킨을 사용하려면 스킨을 theme/basic 과 같이 지정 ?>
<?php echo poll(); // 설문조사, 테마의 스킨을 사용하려면 스킨을 theme/basic 과 같이 지정 ?>
</div>
</div>
</div>
<!-- } 콘텐츠 끝 -->
<hr>
<!-- 하단 시작 { -->
<div id="ft">
<div id="ft_wr">
<div id="ft_link" class="ft_cnt">
<a href="<?php echo get_pretty_url('content', 'company'); ?>">회사소개</a>
<a href="<?php echo get_pretty_url('content', 'privacy'); ?>">개인정보처리방침</a>
<a href="<?php echo get_pretty_url('content', 'provision'); ?>">서비스이용약관</a>
<a href="<?php echo get_device_change_url(); ?>">모바일버전</a>
</div>
<div id="ft_company" class="ft_cnt">
<h2>사이트 정보</h2>
<p class="ft_info">
회사명 : 회사명 / 대표 : 대표자명<br>
주소 : OO도 OO시 OO구 OO동 123-45<br>
사업자 등록번호 : 123-45-67890<br>
전화 : *** 개인정보보호를 위한 전화번호 노출방지 *** 팩스 : *** 개인정보보호를 위한 전화번호 노출방지 ***<br>
통신판매업신고번호 : 제 OO구 - 123호<br>
개인정보관리책임자 : 정보책임자명<br>
</p>
</div>
<?php
//공지사항
// 이 함수가 바로 최신글을 추출하는 역할을 합니다.
// 사용방법 : latest(스킨, 게시판아이디, 출력라인, 글자수);
// 테마의 스킨을 사용하려면 theme/basic 과 같이 지정
echo latest('notice', 'notice', 4, 13);
?>
<?php echo visit(); // 접속자집계, 테마의 스킨을 사용하려면 스킨을 theme/basic 과 같이 지정 ?>
</div>
<!-- <div id="ft_catch"><img src="<?php echo G5_IMG_URL; ?>/ft_logo.png" alt="<?php echo G5_VERSION ?>"></div> -->
<div id="ft_copy">Copyright © <b>소유하신 도메인.</b> All rights reserved.</div>
<button type="button" id="top_btn">
<i class="fa fa-arrow-up" aria-hidden="true"></i><span class="sound_only">상단으로</span>
</button>
<script>
$(function() {
$("#top_btn").on("click", function() {
$("html, body").animate({scrollTop:0}, '500');
return false;
});
});
</script>
</div>
<?php
if(G5_DEVICE_BUTTON_DISPLAY && !G5_IS_MOBILE) { ?>
<?php
}
if ($config['cf_analytics']) {
echo $config['cf_analytics'];
}
?>
<!-- } 하단 끝 -->
<script>
$(function() {
// 폰트 리사이즈 쿠키있으면 실행
font_resize("container", get_cookie("ck_font_resize_rmv_class"), get_cookie("ck_font_resize_add_class"));
});
</script>
<?php
include_once(G5_PATH."/tail.sub.php");
답변 5
정상적으로 문제가 없습니다.
PHP 파일 끝에서 닫는 ?> 태그를 생략할 수 있습니다.
실제로 PHP 코드만 포함된 파일에서는 닫는 태그를 생략하는 것이 좋습니다.
즉 PHP의 문법상 마지막 태그에서는 ?>를 생략하는것을 권장하고있습니다.
닫는 태그 뒤에 공백이나 빈 줄이 있으면 브라우저에 원하지 않는 출력을 보내거나 경우에 따라 오류를 일으키는 등의 문제가 발생할 수 있기 때문입니다.
닫는 태그를 생략하면 원치 않는 출력이 브라우저로 전송되지 않고 PHP 코드가 문제 없이 실행되도록 할 수 있습니다.
그러나 닫는 태그 뒤에 PHP 코드가 아닌 코드가 있는 경우 닫는 태그를 포함해야 합니다.
글쎄요 뭐가 문제일까요 에러는 뭘로 나와요
/config.php
define('G5_SET_DEVICE', 'both');
define('G5_USE_MOBILE', true); // 모바일 홈페이지를 사용하지 않을 경우 false 로 설정
define('G5_USE_CACHE', false); // 최신글등에 cache 기능 사용 여부
tail.pho에서
tail.sub.php를 include 해야하는데
다른 곳에 있는 tail.php를 include하나 봅니다
접속하면 아래 그림처럼 사이트 정보 부분이 둘로 나오고 있거든요... 그래서tail.php를 보게 됐고....초보 눈에는 ?> 이런거 빠진게 문제인 것 같았는데...경솔했네요.^^