제목 중복 검사하기 질문입니다. > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

제목 중복 검사하기 질문입니다. 정보

제목 중복 검사하기 질문입니다.

본문

아래에 질문했다가 아래와 같은 답을 얻었습니다.

A라는 그룹에 여러개의 게시판이 있습니다.
그 중에 한 게시판에 "테스트" 라는 제목을 가진 글이 있다고 할때요.
A그룹 모든 게시판에서 누군가가 "테스트" 라는 제목으로 또 글을 쓸려고 하면
"이미 등록된 제목입니다." 라고 경고창이 뜨게 하고 싶은데요.
 
-------------------------------------------------------------------------------------
스킨 폴더에 write_update.head.skin.php 파일 없으면 생성하시구요.

$row = sql_fetch(" select COUNT(*) as cnt from $write_table where wr_subject = '$wr_subject' ");

if ($row[cnt])
    alert("이미 존재하는 제목입니다.");

-------------------------------------------------------------------------------------
위와 같이 하니까 어떤 제목을 넣어도 "이미 존재하는 제목입니다"라고 뜨고 글은 다 등록이 되는 현상이 발생합니다.
처음에 되는 줄 알고 답변채택을 눌러 버려서 더 이상 코멘트가 안 달릴것 같아 다시 질문 합니다.

제 생각에는
1.전체 등록된 게시물 중에서 제목을 다 불러온다.
2. 불러온 제목과 현재 쓴 글의 제목에서 공백이나 특수문자를 다 없애고 조건을 같게 만든다.
3. 두 내용을 비교한다.
4. 경고창

이렇게 되어야 할것 같은데요. 아무리 뒤지고, 짜집기를 해도 안되니 말입니다.
도움을 부탁드립니다
꾸벅.
즐거운 주말 되세요.
  • 복사

댓글 전체

잘되는거 같은데요???
직접 스킨에 넣고 테스트 해봤거든요..
php 5.3.0 / mysql 5.1 입니다.

혹시 모르니..

=====================================================================
$row = sql_fetch(" select COUNT(*) as cnt from $write_table where wr_subject = '$wr_subject' ");

print_r($row);

if ($row[cnt])
    alert("이미 존재하는 제목입니다.");
=====================================================================

print_r($row) 하셔서 나오는 값을 알려주셔도 좋을 것 같고요..

if ($row[cnt]>0) 으로 변경해 보시는 것도..;;
웹비즈님 안녕하세요.
다시 파일을 작성해서 해보니 됩니다.
근데 문제는요.
제목이 "명성한의원" 과 "명성 한의원" 이렇게 되면 다른걸로 인식해서 등록이 되어 버리네요.
이 부분 혹시 처리하는 방법이나 소스 있으면 알려 주시면 감사하겠습니다.
꾸벅
이부분은 조금 복잡하지 않을까요???

단순히 공백을 제거해서 비교하는 것이면 쉽겠죠..

공백이 아니라.. 명성(한의원), 명성-한의원 등 이런건 어떻게 처리하실 건지??

======================================================================
공백만 제거해서 비교하시는 방법은

$tmp_wr_subject = str_replace(" ", "", $wr_subject);
$row = sql_fetch(" select COUNT(*) as cnt from $write_table where replace(wr_subject, ' ', '') = '$tmp_wr_subject' ");

이렇게 해보세요
만약 ( 가 있다면 배열로 분리해서 배열 첫번째것만 대조 해라 라는 식이여야 겠지요.

정작 골치 아픈것은 ★ ♤ <--이런식의 특수 문자가 골치 아풉니다.
© SIRSOFT
현재 페이지 제일 처음으로