:)这个问题适用于任何熟悉Tankauth插件的人。
我编辑了tankauth,以便在没有电子邮件验证的情况下填充用户配置文件。
在注册表单中,我添加并验证了另外两个字段“first_name”和“last_name”,我希望在提交表单时将它们添加到user_profiles表中。
下面是tankauth函数,如果用户被激活,它会将用户id添加到user_profiles表中。我注释掉了if ($activated)。问题是我不知道如何将我的新字段first_name和last_name插入到数据库中。我每次尝试的时候都会遇到错误。
function create_user($data, $activated = TRUE)
{
$data['created'] = date('Y-m-d H:i:s');
$data['activated'] = $activated ? 1 : 0;
if ($this->db->insert($this->table_name, $data)) {
$user_id = $this->db->insert_id();
//if ($activated)
$this->create_profile($user_id);
return array(
'user_id' => $user_id,
'first_name' => $first_name, //added by me
'first_name' => $first_name, //added by me
);
}
return NULL;
} 上面的内容与
private function create_profile($user_id)
{
$this->db->set('user_id', $user_id);
$this->db->set('first_name', $first_name); //added by me
return $this->db->insert($this->profile_table_name);
} 有没有人可以分享一些指导?
发布于 2011-05-24 10:08:49
尝试在private function create_profile中删除private
此外,您可能希望将create_profile函数更改为:
function create_profile( $user_id ) {
$data = array(
'user_id' => $user_id,
'first_name' => $first_name // Hopefully this is being set correctly.
);
return $this->db->insert( $this->profile_table_name, $data );
}如果这些都不起作用的话。尝试使用echo $this->db->last_query();
希望这能有所帮助。
https://stackoverflow.com/questions/6104995
复制相似问题