Перейти к содержимому


Фото
- - - - -

Как сделать фото клиента (аватар)?

user профиль avatar

  • Чтобы отвечать, сперва войдите на форум
3 ответов в теме

#1 alexivchenko

alexivchenko
  • Пользователь
  • 36 сообщений
  • Заказчик, Пользователь
  • Версия CMS:2.x
  • Откуда:Курск

Опубликовано 16.09.2019 - 17:09

Как сделать загрузку и сохранение фото клиента в папку files/avatars?

И вывод на странице user.tpl по типу аватар? 

 

В БД s_users создал avatar varchar(38) NULL (нет) Default (default_avatar.png)

 

В config.php прописал 

 

;Директория аватаров
avatar_images_dir = files/avatar/;
 

 

 
В api/Users.php -> $query = $this->db->placehold (...) добавил u.avatar
 
В шаблоне/user.tpl 
 
добавил 

 

    {if $user->avatar}<img src="{$config->avatar_images_dir}{$user->avatar}" alt="" />{/if}
    <input class='upload_image' name="avatar" type="file">  
 

 

 
Форме прописал enctype="multipart/form-data"
 
 
В view/UserView.php 
После

 

class UserView extends View {
 

 

Добавил 

 

private $allowed_image_extentions = array('png', 'gif', 'jpg', 'jpeg', 'ico', 'bmp');
 

 

 
 
Вот тут и нужна помощь. Что дальше делать? 

Изменено: alexivchenko, 16.09.2019 - 17:10


#2 shooroop

shooroop
  • Фрилансер
  • 959 сообщений
  • Дизайн, Программирование, Верстка
  • Версия CMS:2.x
  • Откуда:Antarktida

Опубликовано 16.09.2019 - 18:03

а где  сама загрузка изображения на сервер

 

$image = $this->request->files('avatar');
				if(!empty($image['name']) && in_array(strtolower(pathinfo($image['name'], PATHINFO_EXTENSION)), $this->allowed_image_extentions))
				{
					
move_uploaded_file($image['tmp_name'], $this->root_dir.$this->config->avatar_images_dir.$image['name']);
$this->users->update_user($this->user->id, array('avatar'=>$image['name']));

				}



ну и удаление изображения

 

$this->users->delete_image($user->id);


#3 alexivchenko

alexivchenko
  • Пользователь
  • 36 сообщений
  • Заказчик, Пользователь
  • Версия CMS:2.x
  • Откуда:Курск

Опубликовано 16.09.2019 - 20:13

а где  сама загрузка изображения на сервер

 

$image = $this->request->files('avatar');
				if(!empty($image['name']) && in_array(strtolower(pathinfo($image['name'], PATHINFO_EXTENSION)), $this->allowed_image_extentions))
				{
					
move_uploaded_file($image['tmp_name'], $this->root_dir.$this->config->avatar_images_dir.$image['name']);
$this->users->update_user($this->user->id, array('avatar'=>$image['name']));

				}



ну и удаление изображения

 

$this->users->delete_image($user->id);

 

Спасибо вам огромное! А не подскажите еще, как сделать ресайз для аватарок? 



#4 shooroop

shooroop
  • Фрилансер
  • 959 сообщений
  • Дизайн, Программирование, Верстка
  • Версия CMS:2.x
  • Откуда:Antarktida

Опубликовано 16.09.2019 - 21:29

Спасибо вам огромное! А не подскажите еще, как сделать ресайз для аватарок? 

 

http://forum.simplac...к-в/#entry47853







Также с меткой «user, профиль, avatar»

0 пользователей читают эту тему

0 пользователей, 0 гостей, 0 скрытых