Codeigniter Создайте базу данных и таблицу вне config / database.php

0

Я codeigniter создать базу данных и таблицу для каждого клиента, зарегистрированного на моем сайте codeigniter, я смотрю документацию dbforge и dbforge код ниже.

но появилась ошибка, я хочу сделать ее динамичной для каждого клиента, поэтому ее размещение на config/database.php недоступно, есть ли способ предотвратить это? Я новичок с codeigniter, не уверен, что код ниже также верен.

You have specified an invalid database connection group (customer_LYWA) in your config/database.php file.

   public function create_customer_database($code){

        $database = $this->dbutil->database_exists('customer_'.$code);


        if($database){

            return "";

        }else{

            $this->dbforge->create_database('customer_'.$code);

        $fields = array(
                        'blog_id' => array(
                                                 'type' => 'INT',
                                                 'constraint' => 5,
                                                 'unsigned' => TRUE,
                                                 'auto_increment' => TRUE
                                          ),
                        'blog_title' => array(
                                                 'type' => 'VARCHAR',
                                                 'constraint' => '100',
                                          ),
                        'blog_author' => array(
                                                 'type' =>'VARCHAR',
                                                 'constraint' => '100',
                                                 'default' => 'King of Town',
                                          ),
                        'blog_description' => array(
                                                 'type' => 'TEXT',
                                                 'null' => TRUE,
                                          ),
                );

$this->dbforge->add_field($fields);

$this->dbforge->add_key('blog_id', TRUE);
// gives PRIMARY KEY (blog_id)

$this->dbforge->add_key('blog_title');
// gives KEY (blog_title)
$otherdb = $this->load->database('customer_'.$code, TRUE);
$this->dbforge->create_table('blog');

             return "created";

        }

   }
Теги:
codeigniter

1 ответ

0
Лучший ответ

Я думаю, вы пытаетесь создать таблицу для каждого клиента.

С этим, я думаю, вы запутываете базы данных со столами. базы данных содержат таблицы, поэтому вам нужно будет подключиться к правильной базе данных в config/database.php и использовать свой скрипт для создания таблиц внутри этой базы данных.

Вам не нужно создавать новую базу данных для каждого клиента. Это сделало бы вещи в 100 раз тяжелее, чем они должны быть, и их будет очень сложно поддерживать.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню