본문으로 바로가기

APM설치(5) - 우분투 서버에 웹에서 한글  깨짐 처리



[DB연결 프로그램]
~# vi /var/www/html/moadb_test.php



 
[위 DB연결 소스]
 < ?php
// error_reporting(E_ALL);                        //모든 오류보고
    error_reporting( E_ALL & ~E_NOTICE);   //알림제외 모든 오류 보고
ini_set("display_errors", 1);                     //애러메시지 보이기 
///  ini_set("display_errors", 0);               //애러메시지 감추기  

$mysqli_host = "127.0.0.1";
$mysqli_user = "root";
$mysqli_pass = "1234";
$mysqli_db   = "moaDB";
      $mysqli_charset = utf8;

       //DB 연결
       $conn   = new mysqli("$mysqli_host", "$mysqli_user", "$mysqli_pass","$mysqli_db");

if($conn){
      echo "[연결성공]";
} else {
      echo "[연결실패] : " . @mysqli_errno()." : ".@mysqli_error(); 
}
//문자셋 지정
    mysqli_query($conn,"set names utf8");

if ( mysqli_connect_errno() ) {
  echo"[문자셋지정실패] - ". mysqli_connect_error();
 }else{
     echo "[문자셋지정성공]";
 }
   // 테이블 검색
     $query = "select * from moatest limit 0,3";
     
// 쿼리 실행
if(!$result = mysqli_query($conn,$query)) {
    echo "[쿼리실행실패] :" . @mysqli_errno()." :" .@mysqli_error();
}else{
    echo "[쿼리실행성공]";
 
}
// 결과 처리
while($rows = $result->fetch_array())
{
      echo $rows[0] ;
      echo $rows[1];
      echo $rows[2] ;
      echo $rows[3] ;
      echo $rows[4] ;
      echo $rows[5] ;
      echo $rows[6] ;
}
// 연결 종료
$conn->close();
?>


[웹에서 DB연결과 한글 깨짐]
http://192.168.0.9/moadb_test.php


[한글꺠짐 처리]
## 서버의 한글설정 확인
.우분투 리눅스를 사용하면서 가장 취약한 부분이 한글화가 아닌가 생각이 됩니다.
.한글이 꺠어지면 -  language-pack-ko 설치

~# apt-get install language-pack-ko
~# locale-gen ko_KR.UTF-8


[한글 언어셋 설정]
~# sudo vi /etc/profile
 .파일 제일 끝 부분에 다음을 추가합니다.
 .붙여넣기는 문제가 있는 경우는 직접 타이핑해서 써야 합니다.

LANG=ko_KR.EUC-KR
LANG=ko_KR.UTF-8″

~# sudo vi /etc/environment
.역시 파일 제일 하단 부분에 다음을 기재합니다.
LANG=ko_KR.EUC-KR
LANG=ko_KR.UTF-8″
LANGUAGE=ko_KR:ko:en_GB:en

설정이 끝났으면 리부팅
~# reboot

[한글 깨짐이 해결되지 않으면]
.만약 그래도 아래처럼 한글이 깨어져 나오는 경우도 있습니다.
.이경우 moadb_test.php 파일이 UTF-8로 저장되지 않은 경우일 가능성이 큽니다.



[울트라 에디터에서 php 파일 인코딩수정]
.여기서는 [울트라 에디터]로 수정하는 방법입니다. 

.위 그림처럼 상단메뉴 [파일]=> [변환]=> [ASCII -> UTF-(unicode편집]을 클릭하고
.다시 저장해 줍니다.

[웹에서 한글확인]
 .웹에서 다시 확인해 봅니다.
 .http://192.168.0.9/moadb_test.php  


. 포스팅이 너무 길어져 DB연결은 다음으로 미룹니다.