채택완료

write_update.php를 게시판마다 다르게 적용하는 방법이 있나요?

2016-08-29 (월) 12:02:19 5,843

기존에 있는 사이트를 수정하는 일을 하고 있습니다.

갤러리형 게시판 삽입 작업이 있어서 게시판을 삽입했는데

스킨을 바꿔봐도 글이 올라가질 않습니다. 

 

그래서 스킨 문제는 아닌 것 같고 write_update.php를

그누보드5의 원래 파일로 바꿔보니 제가 작업한 게시판에는 글이 올라갑니다.

 

문제는 기존에 사용하던 게시판에는 사진이 올라가질 않습니다. 

 

어떠한 이유로 이전 작업자가 아래의 부분을 수정하게된 것 같은데

저는 두 게시판이 모두 정상적으로 작동될 수 있도록 해야합니다ㅠㅠ

 

write_update.php를 게시판마다 다르게 적용할 수 있는 방법이 있을까요??

 

Copy
$sql = " update {$write_table}                set ca_name = '{$ca_name}',                     wr_option = '{$html},{$secret},{$mail}',                     wr_subject = '{$wr_subject}',                     wr_content = '{$wr_content}',                     wr_link1 = '{$wr_link1}',                     wr_link2 = '{$wr_link2}',                     mb_id = '{$mb_id}',                     wr_name = '{$wr_name}',                     wr_email = '{$wr_email}',                     wr_homepage = '{$wr_homepage}',                     wr_1 = '{$wr_1}',                     wr_2 = '{$wr_2}',                     wr_3 = '{$wr_3}',                     wr_4 = '{$wr_4}',                     wr_5 = '{$wr_5}',                     wr_6 = '{$wr_6}',                     wr_7 = '{$wr_7}',                     wr_8 = '{$wr_8}',                     wr_9 = '{$wr_9}', 			 wr_10= '{$wr_10}',/*이 부분이 원래는 wr_10까지만 있었습니다*/ wr_11 = '{$wr_11}', wr_12 = '{$wr_12}', wr_13 = '{$wr_13}', wr_14 = '{$wr_14}', wr_15 = '{$wr_15}', wr_16 = '{$wr_16}',
                     wr_17 = '{$wr_17}',
                     wr_18 = '{$wr_18}',
                     wr_19 = '{$wr_19}',
					 wr_20 = '{$wr_20}',
                     wr_21 = '{$wr_21}',
                     wr_22 = '{$wr_22}',
                     wr_23 = '{$wr_23}',
                     wr_24 = '{$wr_24}',
					 wr_25 = '{$wr_25}',
                     wr_26 = '{$wr_26}',
                     wr_27 = '{$wr_27}',
                     wr_28 = '{$wr_28}',
                     wr_29 = '{$wr_29}',
					 wr_30 = '{$wr_30}', wr_31 = '{$wr_31}',
                     wr_32 = '{$wr_32}',
                     wr_33 = '{$wr_33}',
                     wr_34 = '{$wr_34}',
					 wr_35 = '{$wr_35}',
                     wr_36 = '{$wr_36}',
                     wr_37 = '{$wr_37}',
                     wr_38 = '{$wr_38}',
                     wr_39 = '{$wr_39}',
					 wr_40 = '{$wr_40}',
                     wr_41 = '{$wr_41}',
                     wr_42 = '{$wr_42}',
                     wr_43 = '{$wr_43}',
                     wr_44 = '{$wr_44}',
                     wr_45 = '{$wr_45}'
                     {$sql_ip}
                     {$sql_password}
              where wr_id = '{$wr['wr_id']}' ";
    sql_query($sql);

답변 3개 / 댓글 3개

채택된 답변
+20 포인트

bbs/write_update.php파일에서 손을 보지말고

해당스킨폴더/write_update.skin.php 파일을 하나 만드셔서 아래 내용을 추가

<? 

if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가

// 자신만의 코드를 넣어주세요. 

if(!$wr_comment) {  // 코멘일때는 저장하면 안됩.

 

    $sql = " update $write_table 

                set wr_10 = '$wr_10',

wr_11 = '$wr_11'

where wr_id = '$wr_id' " ; 

sql_query($sql); 

?> 

이런식으로 작성하면 해당 스킨을 사용하는 게시판만

쿼리문이 따로돌겠습니다.

bbs폴더에서 수정하시면 그누보드 업데이트등 여러가지 문제가 발생할 소지가있으므로

가능하시면 스킨에서 write_update.skin.php파일을 생성해서

추가코드를 작성하시는걸 추천드립니다.

답변에 대한 댓글 2개

아 역시 그런 문제가 있군여! write_update.skin.php파일은 bbs/write_update.php파일을 복사해서 수정하면 될까요??
write_update.skin.php 파일은 제가 위에 올린 코드를 복사하여서
중간에 $sql 이부분만 원하시는대로 바꾸시면됩니다,
참고로
wr_option = '{$html},{$secret},{$mail}',
wr_subject = '{$wr_subject}',
wr_content = '{$wr_content}',
wr_link1 = '{$wr_link1}',
wr_link2 = '{$wr_link2}',
mb_id = '{$mb_id}',
wr_name = '{$wr_name}',
wr_email = '{$wr_email}',
wr_homepage = '{$wr_homepage}',

이런것들은 필요없고
여분필드 wr_1 , 2, 3, 4,등과 같은것만 넣으시면됩니다.

헛 채택하면 답글을 못다는군요!!

답변해주신분들 모두 감사합니당!! 

$com_sql_opt; << 공통 코드

if($bo_table == '해당 게시판') {

$com_sql_opt .= "wr_44 = '{$wr_44}'"; << 필요한 추가 컬럼 

$com_sql_opt .= "wr_45 = '{$wr_45}'"; << 필요한 추가 컬럼

}

업데이트 하는부분에다가 

{$com_sql_opt} << 공통 코드 넣으시면 됩니다.

답변에 대한 댓글 1개

오옷 답변 감사합니다. 혹시 $com_sql_opt대신 지금 사용되고 있는 $sql을 사용해도 될까요?

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