글쓰기하면 오류가나옵니다.

· 16년 전 · 1154 · 4

select count(*) as cnt from g4_point where mb_id = 'test' and po_rel_table = 'test' and po_rel_id = '4' and po_rel_action = '�룕烏�'

1267 : Illegal mix of collations (utf8_unicode_ci,IMPLICIT) and (latin1_swedish_ci,COERCIBLE) for operation '='

error file : /gnu/bbs/write_update.php

안녕하세요.

글쓰기하면  업로드과정에서 이런오류나옵니다.  
그리고 홈페이지 다시들어가면 게시판에 내용을 업데이트되었습니다. 
왜 글쓰기 하면 이런오류나오는가요. 
다른데는 모두 정상입니다.  

윈도우서버쓰구요.   php4.4  mysql4.1 에요.      

답변부탁드립니다.

|

댓글 4개

테이블의 charset를 확인해보세요

latin1_swedish_ci

이렇게 나오는데 여기서 한글인식못하는게 아닐까 싶네요
po_rel_action = binary '@$@#$@#'
가 되게 바꿔 보세요.

php 코드는
po_rel_action = binary '$action'
정도 될 겁니다.
안녕하세요.

error file : /gnu/bbs/write_update.php

php 코드는
po_rel_action = binary '$action' 찾아보사어요. 없던데요.
어떤설명인지 상세히 부탁드립니다.
bbs/write_update.php에서는
insert_point()를 호출하는데
이는 lib/common.lib.php에 있습니다.
function insert_point($mb_id, $point, $content='', $rel_table='', $rel_id='', $rel_action='')

// 이미 등록된 내역이라면 건너뜀
if ($rel_table || $rel_id || $rel_action)
{
$sql = " select count(*) as cnt from $g4[point_table]
where mb_id = '$mb_id'
and po_rel_table = '$rel_table'
and po_rel_id = '$rel_id'
and po_rel_action = '$rel_action' ";
$row = sql_fetch($sql);
if ($row[cnt])
return -1;
}

여기서

and po_rel_action = binary '$rel_action'

이렇게 해 보세요.

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기
🐛 버그신고