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

그누보드 모든 게시판에 특정 필드를 일괄 추가하기 (2017-11-14 12:27 수정)

· 8년 전 · 4678 · 2

그누보드 게시판에 특정 필드를 한번에 추가할때 사용하기 위해 만들었습니다.
그누보드5 폴더에  table_filed_add.php 라는 파일을 생성후 브라우저로 실행하면 추가됩니다.


<?php
include_once "_common.php"; 

$dbconn = mysqli_connect(G5_MYSQL_HOST,G5_MYSQL_USER,G5_MYSQL_PASSWORD,G5_MYSQL_DB) ;

if (!$dbconn) {
    echo "Error: Unable to connect to MySQL." . PHP_EOL;
    echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL;
    echo "Debugging error: " . mysqli_connect_error() . PHP_EOL;
    exit;
}

$sql = "select * from ".$g5['board_table']." order by bo_table asc "; 
$result = mysqli_query($dbconn,$sql);

echo "<meta http-equiv='Content-Type' content='text/html; charset=utf-8'>";

// 추가할 필드명
$hp_add_field = "";

// 추가할 필드명 속성
$hp_add_field_type = " varchar(255) NOT NULL DEFAULT '' ";

// 특정 필드 뒤에 추가하기
// $hp_add_field_after = " AFTER wr_10 ";

if (!$hp_add_field) {
    echo '추가할 필드이름을 넣으세요';
    exit;
}

$id_num = "0";
while($data = mysqli_fetch_array($result)) { 
    
    echo $data["bo_table"] ."<br>";
    
    $field_query = "SHOW COLUMNS FROM ".$g5['write_prefix'] . $data["bo_table"]." WHERE Field = '".$hp_add_field."';";
    $field_row = sql_fetch( $field_query );
    if(!$field_row['Field']) {
        sql_query(" ALTER TABLE ".$g5['write_prefix'] . $data["bo_table"]." ADD ".$hp_add_field . $hp_add_field_type . $hp_add_field_after." ", true);
    }
}

echo mysqli_error($dbconn);
// close connection
mysqli_close($dbconn);
?>


참고자료
http://majesty76.tistory.com/27
https://stackoverflow.com/questions/17541312/alter-table-add-multiple-columns-after-column1

댓글 작성

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

로그인하기

댓글 2개

7년 전
감사합니다
7년 전
고맙습니다

게시글 목록

번호 제목
23254
23244
23241
23236
23200
23199
23179
23174
23138
23128
23125
23116
23109
23099
23092
23083
23079
23063
23050
23036
23029
23007
23003
22983
22959
22943
22939
22934
22905
22897