我正在尝试为我正在为大学项目工作的社交网站创建一个图片库,但我似乎无法在我的数据库中填充“用户名”字段。 galleryimage字段填充正常,但用户名字段只显示“0”。我的“gallery”表中有3个字段(id,username和galleryimage)。我正在使用带有CodeIgniter框架的MVC。似乎是我的Active Record代码的问题。任何帮助将不胜感激。
以下是我模型中的get / set函数:
private $galleryTable = 'gallery';
function Gallery()
{
parent::__construct();
}
putProfileGallery填充我数据库中的gallery表。
function putProfileGallery($username, $image)
{
$record = array('username' => $username, 'galleryimage' => $image);
$this->db->where('username', $username)->insert('gallery', $record);
}
getProfileGallery函数循环遍历表,并且应该输出到屏幕。
function getProfileGallery($username)
{
$this->db->select('*')->from('gallery')->where('username', $username);
$gallerySet = $this->db->get();
$gallery = array();
foreach ($gallerySet->result() as $row)
{
$gallery[] = array('username' => $row->username, 'galleryimage' => $row->galleryimage);
}
return $gallery;
}
}
答案 0 :(得分:1)
您无法合并where
和insert
。
$this->db->where('username', $username)->insert('gallery', $record);
应该只有$this->db->insert('gallery', $record);
如果要更新行,则应使用update
。
答案 1 :(得分:0)
您是否在调用insert函数之前尝试过这样做,以确保$ username具有正确的值
var_dump ($username);
除此之外,我看到你在insert()之前有一个where(),这似乎不正确。