UTF-8 ״ ˻ ()

Ҵ   
   ȸ 13167   õ 0     õ 0    

UTF-8 버젼의 그누보드에서 검색이 이상하게 깨저져서 2번째 페이지부터 잘 안나옵니다.
 
그 이유는 common.php의 mysql_real_escape_string 함수 때문 입니다.
그누보드의 모든 mysql_real_escape_string 함수를 다른거로 바꿔야 할 듯 합니다.
 
===
 
if (isset($stx))  { // search text (검색어)
    $stx = mysql_real_escape_string($stx);
    $qstr .= '&stx=' . urlencode($stx);
}

common.php의 윗 부분에서 코드가 깨어지고 있습니다.
UTF-8 환경에서 mysql_real_escape_string 함수에 "퍼옴"이라는 단어가 들어가면 깨어집니다.

common.php의 아랫부분의 $sca, $stx 부분의 코드가 재작성 되어야 합니다.
보안에 대한 부분이 그누보드 전체에 대한 부분이라, 이부분은 관리자님이 수정해야 할거 같습니다.

if (isset($sca))  {
    $sca = mysql_real_escape_string($sca);
    $qstr .= '&sca=' . urlencode($sca);
}

if (isset($stx))  { // search text (검색어)
    $stx = mysql_real_escape_string($stx);
    $qstr .= '&stx=' . urlencode($stx);
}

문제는 mysql_real_escape_string 함수가 UTF-8 환경에서 특정 한글을 깨어 버리는 것이고,
$stx, $sca를 쓰는 모든 곳에서 오류가 날 수 밖에 없습니다.
 
===
 
TopSchool님의 해결 방안
- opencode.co.kr -


Page 11/28
2011-10   13162   Ҵ
2011-09   11370   Ҵ
2011-09   14674   Ҵ
2011-09   14160   Ҵ
2011-09   11135   Ҵ
2012-04   11945   Ҵ
2011-09   11463   Ҵ
2011-09   13655   Ҵ
2011-09   12070   Ҵ
2011-09   14799   Ҵ
2011-09   19571   Ҵ
2011-08   28467   Ҵ
2011-08   11946   Ҵ
2011-08   13168   Ҵ
2011-08   14884   Ҵ
2011-07   12167   Ҵ
2011-07   12893   Ҵ
2011-07   13983   Ҵ
2011-07   15755   Ҵ
2011-07   14895   ׽