관리클래스를 아래와같이 로드합니다:
$this->load->dbforge();
라는 부분이 있는데..
실제 system/database 에는 DB_forge.php 만 존재합니다.
아래 부분이 실행이 되지 않습니다.
$this->dbforge->create_table('table_name');
네.. 해봤는데..
$this->dbforge->sum_function();
이 동작이 되지 않습니다..!!
$this->load->dbforge(); // table 생성과 삭제관련
$table_prefix = "board".$id;
echo 'table_name='.$table_prefix.'<br>';
$this->dbforge->add_field('id INT(9) NOT NULL AUTO_INCREMENT');
echo 'add_field...';
$this->dbforge->add_field('id_stem INT(10) NOT NULL');
$this->dbforge->add_key('id',true);
$this->dbforge->create_table($table_prefix, TRUE);
table_name 까지만 인쇄되고 그 이후 동작이 되지 않습니다..
<?php
class Welcome extends Controller {
function Welcome()
{
parent::Controller();
}
function index()
{
$this->load->view('welcome_message');
$this->load->model('board_model');
$this->board_model->table_make();
}
}
<?
class Board_model extends Model {
function Board_model()
{
parent::Model();
}
function table_make()
{
$this->load->dbforge();
$this->dbforge->add_field('id INT(9) NOT NULL AUTO_INCREMENT');
$this->dbforge->add_field('id_stem INT(10) NOT NULL');
$this->dbforge->add_key('id',true);
$this->dbforge->create_table('member',true);
}
}
?>function create()
{
$id = $this->comm_model->get_uri_value('create'); // id 값을 가져옴
$page = $this->comm_model->get_uri_value('page'); // page parameter를 가져옴
if ($this->_create_table($id))
{
$data = array('status' => '실행'); // 상태변경 : 대기->실행
$this->db->where('id', $id);
$this->db->update('bbs_group', $data);
}
else
$this->session->set_flashdata('error', lang('error_create_table'));
redirect('board/bbs_group/lists/page/'.$page); // 페이지로 돌아가기
}
/**
* @author : Lydia
* @Update : 2009. 10. 6.
* @Description : Table Create ( model에 넣으면 Error 걸림 : 왜 일 까?)
*
**/
function _create_table($id)
{
$table_name = 'board'.$id;
$this->dbforge->add_field('id INT(9) NOT NULL AUTO_INCREMENT');
$this->dbforge->add_field('bbs_no int(9) NOT NULL');
$this->dbforge->add_field('hits int(9) NOT NULL');
$this->dbforge->add_key('id',true);
$this->dbforge->create_table($table_name, TRUE);
retrun true;
}
_create_table을 모델에 넣으면 동작이 안되더군요.
다른 function은 잘 동작이 되는데....
<?php
class Welcome extends Controller {
function Welcome()
{
parent::Controller();
$this->load->dbforge();
}
function index()
{
$id = "1";
if ($this->_create_table($id))
{
echo "실행";
}
}
function _create_table($id)
{
$table_name = 'board'.$id;
$this->dbforge->add_field('id INT(9) NOT NULL AUTO_INCREMENT');
$this->dbforge->add_field('bbs_no int(9) NOT NULL');
$this->dbforge->add_field('hits int(9) NOT NULL');
$this->dbforge->add_key('id',true);
$this->dbforge->create_table($table_name, TRUE);
return true;
}
}
$this->dbforge->add_field('id INT(9) NOT NULL AUTO_INCREMENT'); $this->dbforge->add_field('id_stem INT(10) NOT NULL'); $this->dbforge->add_key('id',true); $this->dbforge->create_table('member',true);