command.php 625줄 utf-8 설정으로 인한 인코딩 충돌. 한글깨짐 문제

command.php 625줄 utf-8 설정으로 인한 인코딩 충돌. 한글깨짐 문제

QA

command.php 625줄 utf-8 설정으로 인한 인코딩 충돌. 한글깨짐 문제

본문

안녕하세요.

제가 이번에 스쿨호스팅에 있는 PHP 버전을 7으로 올렸는데요.

그 이후에 에러가 나는것을 잡아 고치고 있습니다.

버전업 되면서 mysql_query 이런게 안되서 mysqli_query를 쓰거나, 그누 함수 sql_query로 변경하여 문제를 해결했는데...

그누보드 게시판은 정상적으로 나오는데 제가 별도로 만든 페이지의 한글이 깨지더라고요..

별도의 페이지에 아래와 같이 해주고.. 저장할때 ANSI로 저장하고 해도 한글이 깨지는겁니다.

-----------------------------------------------------------------------------------------------------

<?php
header('Content-Type: text/html; charset=euc-kr');
define('__GNU__',true);
include_once("./_common.php"); // _common.php 에는 여러 가지 함수들이 들어 있습니다. 그누보드4를 사용하는 경우 반드시 들어있어야 하는 코드입니다.
?>
<!DOCTYPE html>
<html lang='ko'>
<head>
<meta charset="EUC-KR">
<meta http-equiv="content-type" content="text/html; charset=euc-kr">

</head>

<body>

할글 뷀

</body>

</html>

-----------------------------------------------------------------------------------------------------

익스플로러에서 F12 개발자 도구에 들어가서 보면

HTML1114: (HTTP 헤더)의 코드 페이지 utf-8이(가) 충돌하는 (메타 태그)의 코드 페이지 euc-kr을(를) 무시합니다.

이런 에러가 나옵니다.

이것 저것 바꿔보고 해도 안되서, 위에 에러에 힌트를 얻어....  찾다가 보니

/command.php 안에 625줄을 확인하니까.

header('Content-Type: text/html; charset=utf-8');

이렇게 되어있네요.

이것을 주석처리하니까.   정상적으로 euc-kr 페이지와, utf-8 페이지의 한글이 모두 잘 나오는것을 확인 했습니다.

그누보드에서 만든 소스에는 손을 안데고 싶은데...  제가 하는 방법이 맞는건가요?

아니면, 이렇게 하면, 다른 문제가 발생하는것인가요?

 

질문의 요약은

한글깨짐문제를 해결하기 위해 command.php 625줄을 주석처리해도 문제가 없는지 입니다.

 

 

 

이 질문에 댓글 쓰기 :

답변 6

아마도 헤더를 중복전송해서 그런것 같습니다.

 

헤더에 대해서 중첩으로 인식되면 브라우저에서 오류를 발생합니다.

header ()

를 처리할때 직접처리하지마시고

가급적 

common.php

속에 있는 header 에서 파일에따라 분기를 추가하는게 더 낫지 않겠나 생각됩니다.

<meta charset="EUC-KR">
<meta http-equiv="content-type" content="text/html; charset=euc-kr">

를 사용하면 안됩니다.

그누보드5는 utf-8 기반이고,  모바일 또한 utf-8 기반이어야 합니다.

ANSI 도 euc-kr 도 사용하지 말고, utf-8 하나로만 사용하는것이 좋습니다.

command.php 파일은 어디 폴더 안에 있나요?

 

답변 감사드립니다.

왜 제가 두가지를 혼용하냐면 그누보드는 utf-8인데..

다른 개별페이지를 만들고 이건 오라클DB를 사용하는데.. 오라클이 ansi로 되어있어서...

개별페이지를 ansi로 만들었습니다.

개별페이지도 utf-8로 만들면, 오라클DB에 쿼리 날릴때, iconv 써서 보내고...

결과값도 한글이 있는 데이타는 다시 iconv로 변환해서 뿌려줘야 하기 때문에 그랬던 거거든요...

 

답변을 작성하시기 전에 로그인 해주세요.
전체 123,529 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT