В проекте Laravel 5.5 я успешно сохранил информацию в таблице продуктов в MySQL. Информация включает строку base64, которая в основном является изображением. Однако я столкнулся с проблемой при создании изображения в общей папке проекта laravel. Ниже мой код для ProductController.php
public function update(Request $request, $id)
{
$data = $request->validate([
'product_name' => 'required',
'description' => 'required',
'rating' => 'required'
]);
$uploaded_image = $request->input('uploaded_image');
$data['uploaded_image'] = $uploaded_image['value']; // base64 string
$product = Product::findOrFail($id);
$product->update($data);
// the data stored into the database with no issue
$image_base64 = base64_decode($uploaded_image['value']);
$path = public_path();
$success = file_put_contents($path, $image_base64.".png");
return response()->json($data);
}
Я вижу следующую ошибку ниже:
message:"file_put_contents(C:\xampp\htdocs\laravel-api\public): failed to open stream: Permission denied"
Просмотрев разные источники, я сделал следующее, но ничего не изменилось.
- php ремесленник ясно скомпилирован
- Icacls public /grant
- композитор дамп-автозагрузка
Есть идеи?