소스 질문 드립니다. 정보
소스 질문 드립니다.본문
<?
if($w == "") {
$tmp_wr_subject = str_replace(" ", "", $wr_subject);
$row = sql_fetch(" select COUNT(*) as cnt from $write_table where replace(wr_subject, ' ', '') = '$tmp_wr_subject' "); //띄어쓰기제목 붙여서 중복확인.
//print_r($row); 몇개가 등록되어 있는지 숫자로 보여줌.
if ($row[cnt]>0)
alert("이미 등록된 한의원입니다.\\n\\n관리권한 신청을 이용해 주세요.");
}
?>
위 소스는 아래 질문했다가 얻은 답변인데요.
A라는 그룹안에 8개의 게시판이 있고 그 중 어느 게시판이든 제목이 같은 게시물이 있으면 경고창이 뜨게 할려고 합니다.
근데 위 소스는 1개의 게시판 안에서만 중복된 제목을 찾는것 같은데요.
그룹전체로 변경할려면 어떻게 수정해야 하는지 도움을 부탁드립니다.
꾸벅
if($w == "") {
$tmp_wr_subject = str_replace(" ", "", $wr_subject);
$row = sql_fetch(" select COUNT(*) as cnt from $write_table where replace(wr_subject, ' ', '') = '$tmp_wr_subject' "); //띄어쓰기제목 붙여서 중복확인.
//print_r($row); 몇개가 등록되어 있는지 숫자로 보여줌.
if ($row[cnt]>0)
alert("이미 등록된 한의원입니다.\\n\\n관리권한 신청을 이용해 주세요.");
}
?>
위 소스는 아래 질문했다가 얻은 답변인데요.
A라는 그룹안에 8개의 게시판이 있고 그 중 어느 게시판이든 제목이 같은 게시물이 있으면 경고창이 뜨게 할려고 합니다.
근데 위 소스는 1개의 게시판 안에서만 중복된 제목을 찾는것 같은데요.
그룹전체로 변경할려면 어떻게 수정해야 하는지 도움을 부탁드립니다.
꾸벅
댓글 전체
if ($w == "") {
// 위 코드는 게시글의 신규나 수정시에도 같이 제목을 체크 해야 되기 때문에 빼시면 될것 같네요
// 아래 코드만 있으면 될것 같네요
if ($bo_table == "게시판명")
{
$tmp_wr_subject = str_replace(" ", "", $wr_subject);
$row = sql_fetch(" select COUNT(*) as cnt from $write_table where replace(wr_subject, ' ', '') = '$tmp_wr_subject' "); //띄어쓰기제목 붙여서 중복확인.
if ($row[cnt]>0)
alert("이미 등록된 한의원입니다.\\n\\n관리권한 신청을 이용해 주세요.");
}
// 위 코드는 게시글의 신규나 수정시에도 같이 제목을 체크 해야 되기 때문에 빼시면 될것 같네요
// 아래 코드만 있으면 될것 같네요
if ($bo_table == "게시판명")
{
$tmp_wr_subject = str_replace(" ", "", $wr_subject);
$row = sql_fetch(" select COUNT(*) as cnt from $write_table where replace(wr_subject, ' ', '') = '$tmp_wr_subject' "); //띄어쓰기제목 붙여서 중복확인.
if ($row[cnt]>0)
alert("이미 등록된 한의원입니다.\\n\\n관리권한 신청을 이용해 주세요.");
}
홈이네님 답변 감사합니다.
근데요 위소스를 사용해도 여전히 게시판 1개에만 적용이 되네요.
a라는 그룹전체 게시판(8개) 에서 같은 제목을 검색하고 싶은데요.
그리고
if ($w == "") {
이 없으니까 수정할때마다 "이미 등록된..."라고 경고창이 뜨서 넣었습니다.
근데요 위소스를 사용해도 여전히 게시판 1개에만 적용이 되네요.
a라는 그룹전체 게시판(8개) 에서 같은 제목을 검색하고 싶은데요.
그리고
if ($w == "") {
이 없으니까 수정할때마다 "이미 등록된..."라고 경고창이 뜨서 넣었습니다.

<?
$sql = " select bo_table, bo_subject from $g4[board_table]
where gr_id = '$gr_id' order by bo_table ";
$result = sql_query($sql);
for ($i=0; $row=sql_fetch_array($result); $i++) {
if($w == "") {
$tmp_wr_subject = str_replace(" ", "", $wr_subject);
$row = sql_fetch(" select COUNT(*) as cnt from $write_table where replace(wr_subject, ' ', '') = '$tmp_wr_subject' "); //띄어쓰기제목 붙여서 중복확인.
//print_r($row); 몇개가 등록되어 있는지 숫자로 보여줌.
if ($row[cnt]>0)
alert("이미 등록된 한의원입니다.\\n\\n관리권한 신청을 이용해 주세요.");
}
}
?>
$sql = " select bo_table, bo_subject from $g4[board_table]
where gr_id = '$gr_id' order by bo_table ";
$result = sql_query($sql);
for ($i=0; $row=sql_fetch_array($result); $i++) {
if($w == "") {
$tmp_wr_subject = str_replace(" ", "", $wr_subject);
$row = sql_fetch(" select COUNT(*) as cnt from $write_table where replace(wr_subject, ' ', '') = '$tmp_wr_subject' "); //띄어쓰기제목 붙여서 중복확인.
//print_r($row); 몇개가 등록되어 있는지 숫자로 보여줌.
if ($row[cnt]>0)
alert("이미 등록된 한의원입니다.\\n\\n관리권한 신청을 이용해 주세요.");
}
}
?>
아길이님 안녕하세요.
답변 감사드립니다.
그런데 여전히 1개의 게시판(같은제목을 가진 게시물이 있는 게시판) 에만 적용이 됩니다.
회원들이 어느 게시판에 같은 제목을 가진 글을 올리지 모르기 때문에 8개 게시판을 다 포함해야 하거든요.
답변 감사드립니다.
그런데 여전히 1개의 게시판(같은제목을 가진 게시물이 있는 게시판) 에만 적용이 됩니다.
회원들이 어느 게시판에 같은 제목을 가진 글을 올리지 모르기 때문에 8개 게시판을 다 포함해야 하거든요.

이소스 있는 파일에서
$gr_id 변수가 출력 되는지 확인해 보셨나요?
출력 않되면 직접 그룹을 지정 해보세요
그리고 수정을 해야 겠네요,,,
$row = sql_fetch(" select COUNT(*) as cnt from $write_table where replace(wr_subject, ' ', '') = '$tmp_wr_subject'
위에것을
$row = sql_fetch(" select COUNT(*) as cnt from $row[bo_table] where replace(wr_subject, ' ', '') = '$tmp_wr_subject'
이런식으로요..
아마 될겁니다,,, 저는 이제 자리 비웁니다,,,
$gr_id 변수가 출력 되는지 확인해 보셨나요?
출력 않되면 직접 그룹을 지정 해보세요
그리고 수정을 해야 겠네요,,,
$row = sql_fetch(" select COUNT(*) as cnt from $write_table where replace(wr_subject, ' ', '') = '$tmp_wr_subject'
위에것을
$row = sql_fetch(" select COUNT(*) as cnt from $row[bo_table] where replace(wr_subject, ' ', '') = '$tmp_wr_subject'
이런식으로요..
아마 될겁니다,,, 저는 이제 자리 비웁니다,,,
경고창은 뜨는데 글은 등록이 됩니다.

수정한 내용 한번 올려보세요,,,
$sql = " select bo_table, bo_subject from $g4[board_table]
where gr_id = '$gr_id' order by bo_table ";
$result = sql_query($sql);
for ($i=0; $row=sql_fetch_array($result); $i++) {
if($w == "") {
$tmp_wr_subject = str_replace(" ", "", $wr_subject);
$row = sql_fetch(" select COUNT(*) as cnt from $row[bo_table] where replace(wr_subject, ' ', '') = '$tmp_wr_subject' "); //띄어쓰기제목 붙여서 중복확인.
//print_r($row); 몇개가 등록되어 있는지 숫자로 보여줌.
if ($row[cnt]>0)
alert("이미 등록된 한의원입니다.\\n\\n관리권한 신청을 이용해 주세요.", "./board.php?bo_table=$bo_table");
}
}
write_update.skin.php에이렇게 했습니다.
select COUNT(*) as cnt from h2_1 where replace(wr_subject, ' ', '') = '그누한의원'
1146 : Table 'jutammu4.h2_1' doesn't exist
error file : /g4/bbs/write_update.php
그랬더니 이런 에러가 뜨고 뒤로가기 해보니까 등록은 되어 있지 않네요.
너무 번거롭게 해드려서 죄송합니다.
where gr_id = '$gr_id' order by bo_table ";
$result = sql_query($sql);
for ($i=0; $row=sql_fetch_array($result); $i++) {
if($w == "") {
$tmp_wr_subject = str_replace(" ", "", $wr_subject);
$row = sql_fetch(" select COUNT(*) as cnt from $row[bo_table] where replace(wr_subject, ' ', '') = '$tmp_wr_subject' "); //띄어쓰기제목 붙여서 중복확인.
//print_r($row); 몇개가 등록되어 있는지 숫자로 보여줌.
if ($row[cnt]>0)
alert("이미 등록된 한의원입니다.\\n\\n관리권한 신청을 이용해 주세요.", "./board.php?bo_table=$bo_table");
}
}
write_update.skin.php에이렇게 했습니다.
select COUNT(*) as cnt from h2_1 where replace(wr_subject, ' ', '') = '그누한의원'
1146 : Table 'jutammu4.h2_1' doesn't exist
error file : /g4/bbs/write_update.php
그랬더니 이런 에러가 뜨고 뒤로가기 해보니까 등록은 되어 있지 않네요.
너무 번거롭게 해드려서 죄송합니다.

네 현제 중복 확인만 했지 어떤일도 하지 않도록 되 있습니다.
write_update.skin.php 이 파일은 이미 등록을 한후에 점검하는 페이지 거든요.
해서 이렇게 하지 마시고,,,
이미 등록되 있는것은 지워야 합니다...
그러기 위해서는 현제 중복되 있는것이 몇개인지만 확인하는것이라
무슨테이블 몇번에 등록되 있는지 알아내는 쿼리문으로 바꿔야 합니다.
그래야 그 글번호를 지우는 쿼리문을 추가 할 수 있으니까요,,,
write_update.skin.php 이 파일은 이미 등록을 한후에 점검하는 페이지 거든요.
해서 이렇게 하지 마시고,,,
이미 등록되 있는것은 지워야 합니다...
그러기 위해서는 현제 중복되 있는것이 몇개인지만 확인하는것이라
무슨테이블 몇번에 등록되 있는지 알아내는 쿼리문으로 바꿔야 합니다.
그래야 그 글번호를 지우는 쿼리문을 추가 할 수 있으니까요,,,

if($w == "") {
$tmp_wr_subject = str_replace(" ", "", $wr_subject);
$info = "select wr_id from $row[bo_table] where replace(wr_subject, ' ', '') = '$tmp_wr_subject' ");
$row_info = sql_fetch($info);
if($row_info[wr_id]){
//지워버리고 메세지를 알려준다
sql_query("Delete from $row[bo_table] where wr_id = '$wr_id' " );
alert("이미 등록 됬습니다 그래서 자동으로 삭제 됬습니다.");
}
}
이 부분을 이렇게 수정 하세요
$tmp_wr_subject = str_replace(" ", "", $wr_subject);
$info = "select wr_id from $row[bo_table] where replace(wr_subject, ' ', '') = '$tmp_wr_subject' ");
$row_info = sql_fetch($info);
if($row_info[wr_id]){
//지워버리고 메세지를 알려준다
sql_query("Delete from $row[bo_table] where wr_id = '$wr_id' " );
alert("이미 등록 됬습니다 그래서 자동으로 삭제 됬습니다.");
}
}
이 부분을 이렇게 수정 하세요
생각보다 간단한 문제는 아닌듯 하군요.
늦은 시간에 너무 애써 주셔서 감사드립니다.
홈이님도 너무 감사드리고요.
제가 더 알아봐야겠네요. 염치가 없어서 더는 질문을 못드리겠네요.
감사합니다.
꾸벅
늦은 시간에 너무 애써 주셔서 감사드립니다.
홈이님도 너무 감사드리고요.
제가 더 알아봐야겠네요. 염치가 없어서 더는 질문을 못드리겠네요.
감사합니다.
꾸벅
참고로 마지막에 수정해주신 소스는 글쓰기를 누르면 페이지가 하얗게 나오고
글은 등록이 되어 있습니다.
글은 등록이 되어 있습니다.

글지우기 쿼리문이 잘못됬군요
제가 워낙 초보다 보니 카피해서 넣다 보니 그렇군요..
문법을 해석하실 수 있어야 문제를 해결 할수 있을텐에요,,,
어째든 수정은
sql_query("Delete from $row[bo_table] where wr_id = '$wr_id' " );
이것을
sql_query("Delete from $row[bo_table] where wr_id = '$row_info[wr_id]' " );
이렇게 수정 해보세요,,,
제가 워낙 초보다 보니 카피해서 넣다 보니 그렇군요..
문법을 해석하실 수 있어야 문제를 해결 할수 있을텐에요,,,
어째든 수정은
sql_query("Delete from $row[bo_table] where wr_id = '$wr_id' " );
이것을
sql_query("Delete from $row[bo_table] where wr_id = '$row_info[wr_id]' " );
이렇게 수정 해보세요,,,
이렇게 늦은 시간에 또 답변을 주셨네요.
죄송해서 어쩔줄을 모르겠습니다.
그런데 지금 주신 소스처럼 지우는 소스는 제가 가만히 생각해보니 운영방식과 맞지 않는것 같습니다.
문제의 그룹은 제가 특정업체의 db를 정리해 놓은 그룹인데요. 회원이 글을 쓸 수 있는 곳인데 만약 누군가가 자신의 업체가 아닌 다른 업체의 정보를 이상하게 해서 글을 쓰면 기존에 제가 올린 정상적인 내용은 사라지고 그 회원이 올린 엉터리 내용이 올라갈 수 있을것 같아서요(제목을 같게 해서 글을 올린다면)..
제가 소스를 제대로 이해한건 맞나요? ㅎㅎㅎ
아무튼 이렇게 관심 가져 주셔서 너무 감사드립니다.
푹 주무시고 활기찬 월요일 되십시오.
죄송해서 어쩔줄을 모르겠습니다.
그런데 지금 주신 소스처럼 지우는 소스는 제가 가만히 생각해보니 운영방식과 맞지 않는것 같습니다.
문제의 그룹은 제가 특정업체의 db를 정리해 놓은 그룹인데요. 회원이 글을 쓸 수 있는 곳인데 만약 누군가가 자신의 업체가 아닌 다른 업체의 정보를 이상하게 해서 글을 쓰면 기존에 제가 올린 정상적인 내용은 사라지고 그 회원이 올린 엉터리 내용이 올라갈 수 있을것 같아서요(제목을 같게 해서 글을 올린다면)..
제가 소스를 제대로 이해한건 맞나요? ㅎㅎㅎ
아무튼 이렇게 관심 가져 주셔서 너무 감사드립니다.
푹 주무시고 활기찬 월요일 되십시오.