같은 내용 등록 안되게 하고싶습니다. 정보
같은 내용 등록 안되게 하고싶습니다.본문
매크로 프로그램(윈토우용 프로그램)을 이용하여 세미나와 교육에 관한 데이터를 검색해서 그누보드의 지정된 게시판에 등록을 하도록 하였습니다.
그런데 자꾸 같은 내용이 등록 되는군요.
같은 내용(100%)이 있으면 저장이 안되게 할 수는 없을까요?
있을듯 한데 검색을 해 보니 없군요.
그런데 자꾸 같은 내용이 등록 되는군요.
같은 내용(100%)이 있으면 저장이 안되게 할 수는 없을까요?
있을듯 한데 검색을 해 보니 없군요.
댓글 전체
bbs/write_update.php:110에 보면 이런 것이 있습니다. 참고 하세요.
if ($w == "" || $w == "r")
{
if ($_SESSION["ss_datetime"] >= ($g4[server_time] - $config[cf_delay_sec]) && !$is_admin)
alert("너무 빠른 시간내에 게시물을 연속해서 올릴 수 없습니다.");
set_session("ss_datetime", $g4[server_time]);
// 동일내용 연속 등록 불가
$row = sql_fetch(" select MD5(CONCAT(wr_ip, wr_subject, wr_content)) as prev_md5 from $write_table order by wr_id desc limit 1 ");
$curr_md5 = md5($_SERVER[REMOTE_ADDR].$wr_subject.$wr_content);
if ($row[prev_md5] == $curr_md5 && !$is_admin)
alert("동일한 내용을 연속해서 등록할 수 없습니다.");
}
if ($w == "" || $w == "r")
{
if ($_SESSION["ss_datetime"] >= ($g4[server_time] - $config[cf_delay_sec]) && !$is_admin)
alert("너무 빠른 시간내에 게시물을 연속해서 올릴 수 없습니다.");
set_session("ss_datetime", $g4[server_time]);
// 동일내용 연속 등록 불가
$row = sql_fetch(" select MD5(CONCAT(wr_ip, wr_subject, wr_content)) as prev_md5 from $write_table order by wr_id desc limit 1 ");
$curr_md5 = md5($_SERVER[REMOTE_ADDR].$wr_subject.$wr_content);
if ($row[prev_md5] == $curr_md5 && !$is_admin)
alert("동일한 내용을 연속해서 등록할 수 없습니다.");
}
감사합니다.
문제는 연속으로 같은 내용이 아니라는겁니다.
이 문제는 어떻게 안되겠습니까?
문제는 연속으로 같은 내용이 아니라는겁니다.
이 문제는 어떻게 안되겠습니까?
글이 등록 될 때 마다 md5( concat( wr_subject, wr_content)) 값을 wr_N 등에 저장하시고
필요하면 인덱스 걸어 주세요.
이 때 unique인덱스로 걸어 주면 아예 DB에 저장조차 되지 않습니다.
$row = sql_fetch(" select count(*) as cnt from $write_table where wr_N = '". md5($wr_subject.$wr_content)."' ");
이렇게 해서 같은 내용을 게시물 존재 여부를 판단하시면 됩니다.
필요하면 인덱스 걸어 주세요.
이 때 unique인덱스로 걸어 주면 아예 DB에 저장조차 되지 않습니다.
$row = sql_fetch(" select count(*) as cnt from $write_table where wr_N = '". md5($wr_subject.$wr_content)."' ");
이렇게 해서 같은 내용을 게시물 존재 여부를 판단하시면 됩니다.