Как перезаписать в базе аватарку?
class Userlk extends MY_Controller {
public function avatar() {
if(!$this->dx_auth->is_logged_in()) {
show_404();
// $this->load->helper('url_helper');
// redirect('/', 'location');
}
$this->data['title'] = "Добавление аватарки";
if($this->input->post('userSubmit')){
//Check whether user upload picture
if(!empty($_FILES['avatar']['name'])){
$config['upload_path'] = 'uploads/images/';
$config['allowed_types'] = 'jpg|jpeg|png|gif';
// $config['file_name'] = $_FILES['avatar']['name'];
$config['max_size'] = '50';
$config['max_width'] = '150';
$config['max_height'] = '150';
$config['remove_spaces'] = TRUE;
// $config['file_name'] = 'user_avatar';
// $config['overwrite'] = TRUE;
//Load upload library and initialize configuration
$this->load->library('upload',$config);
$this->upload->initialize($config);
if($this->upload->do_upload('avatar')){
$uploadData = $this->upload->data();
$avatar = $uploadData['file_name'];
}else{
$avatar = '';
}
}else{
$avatar = '';
}
//Prepare array of user data
$userData = array(
'name' => $this->input->post('name'),
'avatar' => $avatar
);
//Pass user data to model
$insertUserData = $this->userlk_model->insertUserAvatar($userData);
//Storing insertion status message.
if($insertUserData){
$this->session->set_flashdata('success_msg', 'Аватарка добавлена!');
}else{
$this->session->set_flashdata('error_msg', 'Какие-то проблемы с загрузкой аватарки, попробуйте ещё раз или обратитесь к администрации Retris.ru');
}
}
$this->load->view('templates/header', $this->data);
$this->load->view('userlk/avatar', $this->data);
$this->load->view('templates/footer');
}
}
Model:
class Userlk_model extends CI_Model {
public function __construct() {
$this->load->database();
$this->tableName = 'users_avatar';
$this->primaryKey = 'id';
}
public function insertUserAvatar($data = array()) {
if(!array_key_exists("created",$data)){
$data['created'] = date("Y-m-d H:i:s");
}
if(!array_key_exists("modified",$data)){
$data['modified'] = date("Y-m-d H:i:s");
}
$insert = $this->db->insert($this->tableName,$data);
if($insert){
return $this->db->insert_id();
}else{
return false;
}
}
public function getUserAvatar() {
return $this->db
->get_where("users_avatar", array('name' => $this->dx_auth->get_username()))->result();
// ->get('users_avatar');
// return $query->row_array();
}
}
view:
<?php echo $this->session->flashdata('success_msg'); ?>
<?php echo $this->session->flashdata('error_msg'); ?>
<form role="form" method="post" enctype="multipart/form-data">
<div class="panel">
<div class="panel-body">
<div class="form-group">
<label>Загрузить</label>
<input class="form-control" type="file" name="avatar" required="" />
</div>
<div class="form-group">
<label>Ваше имя</label>
<input class="form-control" type="text" name="name" value="<?php echo $this->dx_auth->get_username(); ?>" />
</div>
<div class="form-group">
<input type="submit" class="btn btn-warning" name="userSubmit" value="Добавить">
</div>
</div>
</div>
</form>