Php CodeIgniter数据库插入未插入
我正在使用CodeIgniter将记录添加到数据库中 database.php:Php CodeIgniter数据库插入未插入,php,mysql,codeigniter,mysqli,Php,Mysql,Codeigniter,Mysqli,我正在使用CodeIgniter将记录添加到数据库中 database.php: $db['default']['hostname'] = 'localhost'; $db['default']['username'] = 'test_user'; $db['default']['password'] = 'test_pwd'; $db['default']['database'] = 'test_db'; $db['default']['dbdriver'] = 'mysqli'; $db['
$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'test_user';
$db['default']['password'] = 'test_pwd';
$db['default']['database'] = 'test_db';
$db['default']['dbdriver'] = 'mysqli';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = FALSE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = '';
$db['default']['char_set'] = 'utf8';
$db['default']['dbcollat'] = 'utf8_general_ci';
$db['default']['swap_pre'] = '';
$db['default']['autoinit'] = TRUE;
$db['default']['stricton'] = FALSE;
public function set_news()
{
$this->load->helper('url');
$slug = url_title($this->input->post('title'), 'dash', TRUE);
$data = array(
'title' => $this->input->post('title'),
'slug' => $slug,
'text' => $this->input->post('text')
);
$this->output->enable_profiler(TRUE);
return $this->db->insert('news', $data);
}
在model.php中插入函数:
$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'test_user';
$db['default']['password'] = 'test_pwd';
$db['default']['database'] = 'test_db';
$db['default']['dbdriver'] = 'mysqli';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = FALSE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = '';
$db['default']['char_set'] = 'utf8';
$db['default']['dbcollat'] = 'utf8_general_ci';
$db['default']['swap_pre'] = '';
$db['default']['autoinit'] = TRUE;
$db['default']['stricton'] = FALSE;
public function set_news()
{
$this->load->helper('url');
$slug = url_title($this->input->post('title'), 'dash', TRUE);
$data = array(
'title' => $this->input->post('title'),
'slug' => $slug,
'text' => $this->input->post('text')
);
$this->output->enable_profiler(TRUE);
return $this->db->insert('news', $data);
}
我在运行set_news()时得到以下输出:
但是,当我查看数据库中的表时,它仍然没有行。知道发生了什么吗?谢谢 请检查您的数据库用户权限 尝试改变 $db['default']['db_debug']=FALSE 到
$db['default']['db_debug']=TRUE 问题最终是用户名/密码不正确。由于我正在处理一个共享环境,我需要输入另一个用户/密码组合,然后它才能正常工作。打开调试,查看是否有任何错误。
$db['default']['dbdriver']='mysqli'
,我得到错误:“无法使用提供的设置连接到数据库服务器。”。文件名:core/Loader.php。行号:346'。使用$db['default']['dbdriver']='mysql'
,我得到:“无法选择指定的数据库:test\u db。”。文件名:core/Loader.php。行号:346'。我以前搜索过这些错误,人们建议关闭调试。自动连接不起作用吗?这就是为什么要手动连接上述场景实际上来自CodeIgniter入门教程。然而,当我真正开始编写我的代码时,我并不需要每个页面都有一个db连接,所以可能也会使用手动连接。请参阅我上面关于db_调试的评论。