Ниже приведен этот код для пути загрузки изображения; это мой код загрузки шаблона.
<div class = "form-group">
<div class = "form-row">
<div class = "col-md-6">
<input @change = "onFileSelected" class = "custom-file-input" type = "file">
<small class = "text-danger" v-if = "errors.photo"> {{errors.photo[0]}} </small>
<label accept = "image/*" class = "custom-file-label" for = "customFile" id = "photo">Choose file</label>
</div>
<div class = "col-md-6">
<img :src = "form.photo" style = "height: 40px; width:40px;">
</div>
</div>
</div>
Это функция события клика; это данные, которые я хочу передать в свой API.
ata() {
return {
form:{
name: null,
email: null,
address: null,
salary: null,
joining_date: null,
nid: null,
phone: null,
photo: null
},
errors: {
}
}
},
methods: {
onFileSelected(event){
// console.info(event)
let file = event.target.files[0];
if (file.size > 1048770) {
// Notification.image_validation()
Toast.fire({
icon: 'error',
title: 'upload image less than 1MB'
})
}else {
//console.info(form)
let reader = new FileReader();
reader.onload = event =>{
this.form.photo = event.target.result
console.info(event.target.result)
};
reader.readAsDataURL(file)
}
},
Ниже приведен код, на который я нажимаю свою дату.
employeeinsert()
{
console.info(this.form.photo)
axios.post('/api/employee', this.form)
.then(() => {
// console.info(this.form)
// this.$router.push({name: 'employee'})
// Toast.fire({
// icon: 'success',
// title: 'employee add success'
// })
})
.catch(error => this.errors = error.response.data.errors)
}
Это проверки бэкэнда Laravel 8. Здесь я пытаюсь получить изображение запроса и изменение имени и пытаюсь сохранить свою общую папку.
if ($request->photo) {
$position = strpos($request->photo, ';');
$sub = substr($request->photo, 0, $position);
$ext = explode('/', $sub)[1];
$name = time() . "." . $ext;
$img = Image::make($request->photo)->resize(240, 200);
$upload_path = 'backend/employee';
$inage_url = $upload_path . $name;
$img->save($inage_url);
return console . log($inage_url);
Employee::insert([
'name' => $request->name,
'email' => $request->email,
'address' => $request->address,
'salary' => $request->salary,
'joining_date' => $request->joining_date,
'nid' => $request->nid,
'phone' => $request->phone,
'photo' => $last_image
]);
Когда я загружаю изображение, я получаю ошибку 500.
Вот ошибка 500 с любыми логами.
Я понятия не имею, почему он выдает 500. Пожалуйста, помогите решить эту проблему.
понятия не имею, почему 500, но я могу убедиться, что моя БД и другая конфигурация верны
Несколько вещей, которые могут вызвать ошибку 500, видимую в вашем коде: 1: return console.info($inage_url) console.info - это javascript, а не php, 2: $inage_url = $upload_path.$name; это должно быть $inage_url = $upload_path.'/'.$name, иначе $img->save($inage_url); может вызвать ошибку как путь неправильно сформирован, 3: неясно, откуда берется $last_image в'photo' => $last_image
@Donkarnash, спасибо за решимость добавить это как ответ или принять
@Anonymousshooter Готово - добавлено как ответ для последующих посетителей






Несколько вещей, которые могут вызвать ошибку 500, видимую в вашем коде:
return console.info($inage_url): console.info() — это javascript, а не PHP
$inage_url = $upload_path.$name; должно быть $inage_url = $upload_path.'/'.$name иначе $img->save($inage_url); может вызвать ошибку, так как путь неправильно сформирован
Непонятно, откуда $last_image в 'photo' => $last_image
как насчет того, чтобы проверить свои журналы ошибок, чтобы понять, почему он выдает внутреннюю ошибку сервера 500