我使用CodeIgniter 3.1.0开发应用。为了改进安装,我编写了一个Install_Controller和一个Install_Model。
我想使用Database Forge类来管理数据库架构,但在用户指南中并不是很清楚,Google上的任何内容都没有帮助。
我需要使用 $ this-> dbforge-> create_database ,因为用户对数据库一无所知,所以他要做的只是MySQL"接下来,安装&# 34;然后运行一个运行PHP作为Web服务器的批处理文件,因此从Chrome可以使用URL来安装该应用程序。
用户指南说:为了初始化Forge类,您的数据库驱动程序必须已经运行,因为forge类依赖于它。
所以我用user,pwd,dbname等设置了 config / database.php ......即使因为我需要在app中使用它。
当我尝试加载网址以安装应用时,请告诉我错误:消息:mysqli :: real_connect():( HY000 / 1049):未知数据库'测试'
那么,如果我需要首先使用Forge Class来创建数据库模式呢?
一些代码......
$db['default'] = array(
'dsn' => '',
'hostname' => 'localhost',
'username' => 'root',
'password' => 'root',
'database' => 'test',
'dbdriver' => 'mysqli'
);
$autoload['libraries'] = array('database');
class Install extends CI_Controller
{
public function __construct()
{
parent::__construct();
}
public function index()
{
$this->load->model('install_model');
$this->install_model->createDabase();
}
}
class Install_model extends CI_Model {
function __construct() {
parent::__construct();
}
function createDabase() {
$this->load->dbforge();
if ($this->dbforge->create_database('test'))
echo 'Database created!';
else
echo 'Database error!';
}
}
答案 0 :(得分:0)
尝试并获得很多意见后,唯一的方法是我评论: