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

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

· 8년 전 · 4676 · 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년 전
고맙습니다

게시글 목록

번호 제목
23966
23963
23953
23949
23938
23935
23933
23928
23919
23918
23917
23910
23902
23901
23897
23894
23893
23891
23885
23872
23870
23862
23859
23853
23845
23838
23827
23819
23805
23801