UTF-8 버젼 그누보드의 검색이 깨어지는 오류 (원인)

불당   
   조회 12772   추천 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   12806   불당
2011-09   10998   불당
2011-09   14243   불당
2011-09   13804   불당
2012-04   11514   불당
2011-09   10723   불당
2011-09   11000   불당
2011-09   13268   불당
2011-09   11707   불당
2011-09   14369   불당
2011-09   19068   불당
2011-08   27244   불당
2011-08   11543   불당
2011-08   12773   불당
2011-08   14491   불당
2011-07   11813   불당
2011-07   12509   불당
2011-07   13618   불당
2011-07   15415   불당
2011-07   14468   테스터