제목 중복 검사하기 질문입니다. 정보
제목 중복 검사하기 질문입니다.본문
아래에 질문했다가 아래와 같은 답을 얻었습니다.
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. 경고창
이렇게 되어야 할것 같은데요. 아무리 뒤지고, 짜집기를 해도 안되니 말입니다.
도움을 부탁드립니다
꾸벅.
즐거운 주말 되세요.
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) 으로 변경해 보시는 것도..;;
직접 스킨에 넣고 테스트 해봤거든요..
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' ");
이렇게 해보세요
단순히 공백을 제거해서 비교하는 것이면 쉽겠죠..
공백이 아니라.. 명성(한의원), 명성-한의원 등 이런건 어떻게 처리하실 건지??
======================================================================
공백만 제거해서 비교하시는 방법은
$tmp_wr_subject = str_replace(" ", "", $wr_subject);
$row = sql_fetch(" select COUNT(*) as cnt from $write_table where replace(wr_subject, ' ', '') = '$tmp_wr_subject' ");
이렇게 해보세요
네^^. 그 부분은 제가 어떻게 찾아보고 해결해야겠네요.
바쁘신데 시간내어 주셔서 감사합니다.
즐거운 주말 보내세요.
바쁘신데 시간내어 주셔서 감사합니다.
즐거운 주말 보내세요.
만약 ( 가 있다면 배열로 분리해서 배열 첫번째것만 대조 해라 라는 식이여야 겠지요.
정작 골치 아픈것은 ★ ♤ <--이런식의 특수 문자가 골치 아풉니다.
정작 골치 아픈것은 ★ ♤ <--이런식의 특수 문자가 골치 아풉니다.