Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
Всем привет, использую в проекте на Laravel- croppie для обрезки фото аватара, после форматирования аватар сохраняется в папке upload, после нажатия кнопки сохранить планирую переместить аватарку в папку img/users/ava_id.png и записать путь в бд., Но не могу никак передать путь к файлу в форму из контроллера. Посоветуйте, как проще сделать загрузку авы ?
imageController:
public function imageCropPost(Request $request)
{
$data = $request->image;
list($type, $data) = explode(';', $data);
list(, $data) = explode(',', $data);
$data = base64_decode($data);
$image_name= time().'.png';
$path = public_path() . "/upload/" . $image_name;
file_put_contents($path, $data);
return response()->json(['success'=>'done']);
}
Изменено An543 (27.02.2019 13:31:22)
Не в сети
А если здесь сразу написать путь для сохранения файла
$path = public_path() . "/upload/" . $image_name;
Не в сети
А если здесь сразу написать путь для сохранения файла
т.е. миновать папку upload, а при нажатии кнопки сохранить записать в БД и закрыть форму ?
Не в сети
Ну да
Не в сети
Ну да
Получается и путь к аватару в update брать не из контроллера, который сохранял файл, а так же
$path = public_path() . "/upload/" . $image_name;
Не в сети
В контроллере, который обрабатывает сохранение файла, напиши путь, который тебе нужен
$path = public_path() . "/dir/dir/" . $image_name;
Не в сети
В контроллере, который обрабатывает сохранение файла, напиши путь, который тебе нужен
Вот например, юзер редактирует аватар и путь в БД к нему есть, загружает новый, обрезал, но не сохраняет,а он уже сохранен в папке где путь в БД.
Не в сети
В БД должно храниться только имя файла. Путь к нему пиши в обработчике
Не в сети
В БД должно храниться только имя файла. Путь к нему пиши в обработчике
Присваивать все время уникальное имя ? через time()
Не в сети
Лучше старый удалять, а новый добавлять. Иначе у тебя куча ненужного мусора будет висеть
Не в сети
Лучше старый удалять, а новый добавлять. Иначе у тебя куча ненужного мусора будет висеть
есть 2е кнопки , одна ресайзит и сохраняет , вторая записывает в БД. Поэтому я и выбрал путь сохранить в Upload после ресайза, а после сохранить переместить в папку users и перезаписать в папке и в БД.
Не в сети
Страницы 1