如何在Codeigniter中更新新图像时删除图像

时间:2016-01-03 22:11:52

标签: php codeigniter-3

我最近开始使用Codeigniter进行编码,这非常新,甚至是php。

我制作了这个应用,用户可以在其中更新自己的个人资料图片。但是当我回去上传时,我仍然看到那里的旧图像。

无法弄清楚如何执行此操作。

控制器:

public function profile_image_check() {
    if($this->session->userdata('is_logged_in')){
    $username = $this->session->userdata('v_member_username');

    $url  = $this->do_upload();
    //$this->load->model('admin/my_profile_model');
    //$title = $_POST['title'];
    $this->my_profile_model->update_profile_image($url, $username);
    }
}
private function do_upload() {
    $type = explode('.', $_FILES['profile_image']['name']);
    $type = $type[count($type)-1];
    $url = "./uploads/profile/".uniqid(rand()).'.'.$type;
    if(in_array($type, array('jpeg', 'gif', 'png', 'jpg')))
    if(is_uploaded_file($_FILES['profile_image']['tmp_name']))
        if(move_uploaded_file($_FILES['profile_image']['tmp_name'], $url));
            return $url;
    return '';
}

型号:

function update_profile_image($url, $username){
    //$this->db->set('title', $title);
    $this->db->set('profile_image', $url);
    $this->db->where('v_member_username', $username);
    $this->db->update('vbc_registered_members');
}

1 个答案:

答案 0 :(得分:1)

更新后,您需要使用php unlink($filename)函数删除文件。

这里有一些参考。 http://www.w3schools.com/php/func_filesystem_unlink.asp希望有所帮助。