테스트 사이트 - 개발 중인 베타 버전입니다

다중 게시글입력 쿼리질문 채택완료

sahara 11년 전 조회 13,963
a게시판에 자동으로 글을등록중입니다
b게시판에 같은제목의 게시글에 wr_last를 a에등록될때 b에 업데이트해주기위해 아래쿼리를 작성햇는데
현제는 a게시판에 글이등록이되면 b게시판의 a게시판제목과 같은제목의글에 wr_last가등록안되고
b게시판 전체wr_last가업데이트됨니다. 

같은제목의 글에만 wr_last가업데이트되게하려면 어디를수정해줘야되는지여
고수님들 한수부탁드립니다.


48번열부터 세로작성한쿼리입니다.

<span class="Apple-tab-span" style="white-space: pre">	</span>// 변수 정리</div>
<div><span class="Apple-tab-span" style="white-space: pre">	</span>$bo_table = $newpost[bo_table];</div>
<div><span class="Apple-tab-span" style="white-space: pre">	</span>$write_table = $g5[write_prefix] . $bo_table;</div>
<div><span class="Apple-tab-span" style="white-space: pre">	</span>$wr_num = get_next_num($write_table);</div>
<div><span class="Apple-tab-span" style="white-space: pre">	</span>$ca_name = addslashes($ca_name);</div>
<div><span class="Apple-tab-span" style="white-space: pre">	</span>$html = "html1"; // 이 값은 필요에 맞게 설정</div>
<div><span class="Apple-tab-span" style="white-space: pre">	</span>$wr_subject = addslashes(trim($newpost[wr_subject]));</div>
<div><span class="Apple-tab-span" style="white-space: pre">	</span>$wr_content = addslashes(trim($newpost[wr_content]));</div>
<div><span class="Apple-tab-span" style="white-space: pre">	</span>$mb_id = $mb[mb_id];</div>
<div><span class="Apple-tab-span" style="white-space: pre">	</span>$wr_password = $mb[mb_password];</div>
<div><span class="Apple-tab-span" style="white-space: pre">	</span>$wr_name = $bo[bo_use_name] ? $mb[mb_name] : $mb[mb_nick];</div>
<div><span class="Apple-tab-span" style="white-space: pre">	</span>for($i=1; $i<=10; $i++) { // 확장필드도 입력</div>
<div><span class="Apple-tab-span" style="white-space: pre">		</span>$wr = "wr_{$i}";</div>
<div><span class="Apple-tab-span" style="white-space: pre">		</span>${$wr} = addslashes($newpost[$wr]);</div>
<div><span class="Apple-tab-span" style="white-space: pre">	</span>}</div>
<div><span class="Apple-tab-span" style="white-space: pre">	</span>$wr_link1 = $newpost[wr_link1];</div>
<div><span class="Apple-tab-span" style="white-space: pre">	</span>$wr_link2 = $newpost[wr_link2];</div>
<div>
</div>
<div><span class="Apple-tab-span" style="white-space: pre">	</span>// 글 입력하기</div>
<div>    $sql = " insert into $write_table</div>
<div>                set wr_num = '$wr_num',</div>
<div>                    wr_comment = 0,</div>
<div>                    ca_name = '$ca_name',</div>
<div>                    wr_subject = '$wr_subject',</div>
<div>                    wr_content = '$wr_content',</div>
<div>                    wr_link1 = '$wr_link1',</div>
<div>                    wr_link2 = '$wr_link2',</div>
<div>                    mb_id = '$mb_id',</div>
<div>                    wr_datetime = '".G5_TIME_YMDHIS."' ,</div>
<div>                    wr_last = '".G5_TIME_YMDHIS."' ";</div>
<div>    sql_query($sql);</div>
<div>    $wr_id = mysql_insert_id();</div>
<div>
</div>
<div>    // 부모 아이디에 UPDATE</div>
<div>    sql_query(" update $write_table set wr_parent = '$wr_id' where wr_id = '$wr_id' ");</div>
<div>
</div>
<div><span class="Apple-tab-span" style="white-space: pre">	</span>// 최신글 삽입</div>
<div>    sql_query(" insert into $g5[board_new_table] ( bo_table, wr_id, wr_parent, bn_datetime, mb_id ) values ( '$bo_table', '$wr_id', '$wr_id', '".G5_TIME_YMDHIS."' , '$mb[mb_id]' ) ");</div>
<div>
</div>
<div>    // 게시글 1 증가</div>
<div>    sql_query("update $g5[board_table] set bo_count_write = bo_count_write + 1 where bo_table = '$bo_table'");</div>
<div>
</div>
<div><span class="Apple-tab-span" style="white-space: pre">	</span>// *   여기가 세로작성한 쿼리문입니다 *//</div>
<div>
</div>
<div>// 복사할 타겟 bo_table 가져오기</div>
<div>$temp1 = sql_fetch("select bo_3 from `$g5[board_table]` where bo_table='$bo_table'");</div>
<div>$tar_bo_table = $temp1[bo_3];</div>
<div>
</div>
<div>// 글 입력부</div>
<div><span class="Apple-tab-span" style="white-space: pre">	</span>$write_table = $g5['write_prefix'] . $tar_bo_table;</div>
<div><span class="Apple-tab-span" style="white-space: pre">	</span>$wr_num = get_next_num($write_table);</div>
<div><span class="Apple-tab-span" style="white-space: pre">	</span>if(!strlen($mb_id)) $mb_id = $write[mb_id];</div>
<div><span class="Apple-tab-span" style="white-space: pre">	</span>$mb = get_member($mb_id);</div>
<div><span class="Apple-tab-span" style="white-space: pre">	</span>for($i=1; $i<=10; $i++) {</div>
<div><span class="Apple-tab-span" style="white-space: pre">		</span>$var = "wr_".$i;</div>
<div><span class="Apple-tab-span" style="white-space: pre">		</span>${$var} = addslashes($write[$var]);</div>
<div><span class="Apple-tab-span" style="white-space: pre">	</span>}</div>
<div><span class="Apple-tab-span" style="white-space: pre">	</span>$sql = " update  $write_table </div>
<div>                set    wr_last = '".G5_TIME_YMDHIS."' ";</div>
<div><span class="Apple-tab-span" style="white-space: pre">	</span>sql_query($sql);</div>
<div>
</div>
<div>
</div>
<div>    // 부모 아이디에 UPDATE</div>
<div>    sql_query(" update $write_table set wr_parent = '$new_wr_last' where wr_last = '$new_wr_last' ");</div>
<div>
</div>
<div>    // 새글 INSERT</div>
<div><span class="Apple-tab-span" style="white-space: pre">	</span>// 최신글 삽입</div>
<div><span class="Apple-tab-span" style="white-space: pre">	</span>// 성공하면 글번호를 return;</div>
<div>    return $wr_id;</div>
<div>}</div>
<div>?>
댓글을 작성하려면 로그인이 필요합니다.

답변 6개

채택된 답변
+20 포인트
11년 전
// 복사할 타겟 bo_table 가져오기
$temp1 = sql_fetch("select bo_3 from `$g5[board_table]` where bo_table='$bo_table'");
$tar_bo_table = $temp1[bo_3];
위코드에 bo_3 에 값이 뭐가 들어가 있죠?
게시판설정에서 예비필드 3같은데.....
혹 bo_3 에 movie 란 단어가 들어가 잇다면

// 글 입력부
$write_table1 = $g5['write_prefix'] . $tar_bo_table;
$wr_num = get_next_num($write_table);
if(!strlen($mb_id)) $mb_id = $write[mb_id];
$mb = get_member($mb_id);
for($i=1; $i<=10; $i++) {
$var = "wr_".$i;
${$var} = addslashes($write[$var]);
}

$sql = " update $write_table1 set wr_last = '".G5_TIME_YMDHIS."' where wr_subject = '$wr_subject' ";
sql_query($sql);
 
이렇게 해도......근데 빨간부분이 뭔지는 모르겠네요......
로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

sahara님, 사이트 완성이 된건가요?
로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

11년 전
해당글에 답변 채크를 주셨으니 그 소스로 살을 더 붙이자면
 
// 복사할 타겟 bo_table 가져오기
$temp1 = sql_fetch("select bo_3 from `$g5[board_table]` where bo_table='$bo_table'");
$tar_bo_table = $temp1[bo_3];
$write_table1 = $g5['write_prefix'] . $tar_bo_table;
$che = sql_fetch(SELECT count(wr_subject) AS cnt FROM $write_table1 WHERE wr_sunject ='$wr_subject');
 
if ($temp1[bo_3] && $che[cnt]>0){
// 글 입력부 
$sql = " update $write_table1 set wr_last = '".G5_TIME_YMDHIS."' where wr_subject = '$wr_subject' ";
sql_query($sql);
}
 
이렇게 해주면 bo_3 에 값이 있고 movie에 동일한 제목이 잇을때만 실행시킬수가 잇을듯 합니다.
로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

s
11년 전
무지고생햇는데 한번에해결해주셔서 감사합니다.
동작되는거같에여,..
로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

히어1
11년 전
근데요........data에 새글을 쓸때 movie에 동일한 제목이 없으면 어떻게하나요?
동일한 제목이 잇는지도 체크를 해줘야할거 같은데요.
s
sahara
11년 전
data게시판은 같은제목이 많이있습니다. movie게시판은 1개만존재하구여

댓글을 작성하려면 로그인이 필요합니다.

s
11년 전
신비나라님의 http://sir.co.kr/bbs/board.php?bo_table=g4_skin&wr_id=109365&sca=&sfl=wr_subject%7C%7Cwr_content&stx=%EB%8F%99%EC%98%81%EC%83%81&page=4" target="_blank" "="" style="color: #000000">동영상게시판을 g5로사용중입니다.
동영상주소를 다른테이블에서 읽어와서 보여주는 방식인데 .


서로다른게시판이두개있습니다
data테이블에 게시물이올라오면 movie테이블에서 data테이블에서 같은제목 게시글과 wr_last동일하게  수정해주고싶어서요 

movie테이블에서 최신글정렬을위해서 해주려구합니다. 


111.png
 
로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

히어1
11년 전
// * 여기가 세로작성한 쿼리문입니다 *//


// 복사할 타겟 bo_table 가져오기
$temp1 = sql_fetch("select bo_3 from `$g5[board_table]` where bo_table='$bo_table'");
$tar_bo_table = $temp1[bo_3];


// 글 입력부
$write_table = $g5['write_prefix'] . $tar_bo_table;
$wr_num = get_next_num($write_table);
if(!strlen($mb_id)) $mb_id = $write[mb_id];
$mb = get_member($mb_id);
for($i=1; $i<=10; $i++) {
$var = "wr_".$i;
${$var} = addslashes($write[$var]);
}
$sql = " update $write_table
set wr_last = '".G5_TIME_YMDHIS."' ";
sql_query($sql);




// 부모 아이디에 UPDATE
sql_query(" update $write_table set wr_parent = '$new_wr_last' where wr_last = '$new_wr_last' ");

새로넣으신 해당 코드가 어떤 기능인지는 모르겠으나
질문하신분의 의도데로 data 테이블에 글을 등록시?
movie 테이블에 같은 제목의 게시물의 wr_last 의 날짜를 data에 새로 등록한 게시물의 등록 날짜로 하고 싶다는 말씀인가요?
$new_wr_last 에는 값이 없는거 같은데;;;;

if ($bo_table == "data") {
$movie_table = $g5['write_prefix']."movie";
sql_query(" update $movie_table set wr_last= '".G5_TIME_YMDHIS."' where wr_subject = '$wr_subject' ");
}

이렇게인거 같은데요......
즉 위에서 data테이블에서 새글을 등록하였다면 movie 테이블에 동일한 제목의 게시글의 wr_last를 현재날짜로 업데이트

맞나모르겠네요.

댓글을 작성하려면 로그인이 필요합니다.

11년 전
수양이 부족한가 질문에 이해가안가네요 ;;;;;;;
로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인