접속을 하면 카운터 에러가 뜹니다. 정보
접속을 하면 카운터 에러가 뜹니다.본문
오류가 나는곳의 주소를 알려주시면 더 빠르고 정확하게 답변 받을 수 있습니다.
오류 주소 : www.aladinsusun.com
네이버에서 검색을 알라딘 옷수선으로 해서 사이트에 들어가면 아래와 같은 에러가 뜹니다.
'' update g4_visit_sum set vs_count = vs_count + 1 where vs_date = '2008-04-13'
''1062 : Duplicate entry '2008-04-13-2' for key 1
error file : /index.php
주소를 다시 클릭하면 제대로 들어가지구요..
카운터 DB키가 문제가 있는거 같은데..어떻게 해야 에러창이 안뜨고 제대로 들어갈까요??
오류 주소 : www.aladinsusun.com
네이버에서 검색을 알라딘 옷수선으로 해서 사이트에 들어가면 아래와 같은 에러가 뜹니다.
'' update g4_visit_sum set vs_count = vs_count + 1 where vs_date = '2008-04-13'
''1062 : Duplicate entry '2008-04-13-2' for key 1
error file : /index.php
주소를 다시 클릭하면 제대로 들어가지구요..
카운터 DB키가 문제가 있는거 같은데..어떻게 해야 에러창이 안뜨고 제대로 들어갈까요??
댓글 전체

bbs디렉토리의 visit_insert.inc.php 를 열어보시면
$sql = " insert $g4[visit_sum_table] ( vs_count, vs_date) values ( 1, '$g4[time_ymd]' ) ";
$result = sql_query($sql, FALSE);
// DUPLICATE 오류가 발생한다면 이미 날짜별 행이 생성되었으므로 UPDATE 실행
if (!$result) {
$sql = " update $g4[visit_sum_table] set vs_count = vs_count + 1 where vs_date = '$g4[time_ymd]' ";
$result = sql_query($sql);
}
이부분이 작동을 제대로 안하는것으로 보입니다.
위 부분을
$confirm = sql_fetch("select * from $g4[visit_sum_table] where vs_date='$g4[time_ymd]'");
if(!$confirm['vs_date']) {
$sql = " insert into $g4[visit_sum_table] ( vs_count, vs_date) values ( 1, '$g4[time_ymd]' ) ";
$result = sql_query($sql, FALSE);
}else {
$sql = " update $g4[visit_sum_table] set vs_count = vs_count + 1 where vs_date = '$g4[time_ymd]' ";
$result = sql_query($sql);
}
위와 같이 고치고 다시 해보시기 바랍니다.
$sql = " insert $g4[visit_sum_table] ( vs_count, vs_date) values ( 1, '$g4[time_ymd]' ) ";
$result = sql_query($sql, FALSE);
// DUPLICATE 오류가 발생한다면 이미 날짜별 행이 생성되었으므로 UPDATE 실행
if (!$result) {
$sql = " update $g4[visit_sum_table] set vs_count = vs_count + 1 where vs_date = '$g4[time_ymd]' ";
$result = sql_query($sql);
}
이부분이 작동을 제대로 안하는것으로 보입니다.
위 부분을
$confirm = sql_fetch("select * from $g4[visit_sum_table] where vs_date='$g4[time_ymd]'");
if(!$confirm['vs_date']) {
$sql = " insert into $g4[visit_sum_table] ( vs_count, vs_date) values ( 1, '$g4[time_ymd]' ) ";
$result = sql_query($sql, FALSE);
}else {
$sql = " update $g4[visit_sum_table] set vs_count = vs_count + 1 where vs_date = '$g4[time_ymd]' ";
$result = sql_query($sql);
}
위와 같이 고치고 다시 해보시기 바랍니다.
오~ 감사합니다.
지금 밖이라서 ftp가 없어서 고칠수가...ㅠ.ㅠ
나중에 집에 들어가서 한번 해볼께요 메가 쵸코님 복받으실겁니다...ㅠ.ㅜ
지금 밖이라서 ftp가 없어서 고칠수가...ㅠ.ㅠ
나중에 집에 들어가서 한번 해볼께요 메가 쵸코님 복받으실겁니다...ㅠ.ㅜ

감사는 제대로 작동하면 해주세요 ㅠ
정확한 이유는
result = sql_query($sql, FALSE);
이 함수에서 뒤에 FALSE가 붙으면 에러를 무시해야 하고
뒤에서 에러났나 여부를 파악하는 구조인데
걍 에러내버리는게 문제인거 같습니다. php 문제인것 같네요.
혹여 result = sql_query($sql, FALSE); 이부분이 FALSE가 빠져있다면
그부분부터 고치고 잘 돌아가나 해보시고
그래도 안되면 제가 적어드릴대로 해보세요.
정확한 이유는
result = sql_query($sql, FALSE);
이 함수에서 뒤에 FALSE가 붙으면 에러를 무시해야 하고
뒤에서 에러났나 여부를 파악하는 구조인데
걍 에러내버리는게 문제인거 같습니다. php 문제인것 같네요.
혹여 result = sql_query($sql, FALSE); 이부분이 FALSE가 빠져있다면
그부분부터 고치고 잘 돌아가나 해보시고
그래도 안되면 제가 적어드릴대로 해보세요.

저도 똑같은 에러났었는데 이렇게 하니깐 해결이 되네요~ ㅎㅎ
아예 visit DB를 없애버렸던 기억이...ㅠ.ㅠ
아예 visit DB를 없애버렸던 기억이...ㅠ.ㅠ