Codeigniter SQLite插入未记录

时间:2014-07-10 10:43:12

标签: php codeigniter sqlite

我正在尝试使用CodeIginter和SQLite3将记录插入到数据库中,但是我无法插入它们,只能从数据库中进行选择。

我在db文件夹上有777,其中包含我的test.db文件,也使用了adminer我能够插入和查看记录。

这是我将数组插入db:

的方法
function insertIntoLP($data){
    $this->load->database();
    return $this->db->insert('landing_pages', $data);
}

调用上述方法的代码是:

$data = array(
            'id'    => '',
            'brand' => $brand,
            'name' => $name,
            'settings' => serialize($settings),
            'date' => time(),
        );

        return $this->dbsql->insertIntoLP($data);

它返回成功但记录没有记录。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

我不知道您使用的是哪个版本的CodeIgniter。 但是,在版本2.1.4和2.2.0之间,有人注意到文件system/database/drivers/pdo/pdo_driver.php"发生了变化。

在当前版本2.2.0中,已发出issue has been open and a fix。也许你应该看一看及时了解你的申请

您的代码是正确的,并且您已经安装了驱动程序,因此我希望它能解决您的问题。


您的版本之后:

表架构仍然缺失,但我想你的$data数组应该是这样的:

$data = array(
        'brand' => $brand,
        'name' => $name,
        'settings' => serialize($settings),
        'date' => time(),
);

我删除了ID。如果在数据库中将其定义为自动增量,只需将其从请求中删除即可。

你在做:

INSERT INTO landing_pages(id, brand, name, settings, date) VALUES (NULL, 'Some Data', 'Some Data', 'Some Data', 'Date')

但如果没有id,它应该会更好:

INSERT INTO landing_pages(brand, name, settings, date) VALUES ('Some Data', 'Some Data', 'Some Data', 'Date')