راکت

مشکل آپلود فایل لاراول

9 پاسخ

هنگام آپلود نام فایل رو در request میاره اما فایل آپلود نمیشه و خطای File could not be uploaded: missing temporary directory.

 تصویر

 تصویر

samen
samen
@samen993
ثبت پرسش جدید

پاسخ‌ها

9
Saman
Saman
@samanzdev

تخصص: برنامه نویس وب

سلام
شما احتمالآ مسیر آپلود فایلتون رو مشخص نکردید.
اگه میشه یه عکس از کد هاتون بفرستید.

samen
samen
@samen993

تخصص: برنامه نویس

$validatedData = $request->validate([
'naghshi' => ['required'],

        ]);
        $image = $request->imagenaghshi ;
$emtyeaz=DB::table('naghshis') ->where(['id'=>$request->naghshi_id])->first();
$emtyeazi=DB::table('naghshi_user')->max('id');
      $name4 = Auth::user()->id.'/faliat/'.$emtyeazi.'.jpg';
         $folder = '/bot/files/'.Auth::user()->id.'/faliat/';
        $image->move(public_path($folder), $name4);
       DB::table('naghshi_user')->insert(['user_id'=>Auth::user()->id,'naghshi_id'=>$request->naghshi_id,'naghshi'=>$request->naghshi,'imagenaghshi'=>$name4,'user_emteyaz'=>$emtyeaz->naghshi_emteyaz]);  
       return redirect('/faliat/'.Auth::user()->id);

سمت کلاینت
<input id="imagenaghshi" style="margin-top:15px;" type="file" accept="image/*" name="imagenaghshi" class="form-control @error('imagenaghshi') is-invalid @enderror" multiple>
@error('imagenaghshi')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror

روی لوکال کار میکنه و روی هاست خطا داره
@samanzdev

شاید پاسخ شما همین‌جا باشد

Saman
Saman
@samanzdev

تخصص: برنامه نویس وب

شما folder$ رو dd بگیرید ببینید چی بر میگردونه

samen
samen
@samen993

تخصص: برنامه نویس

Saman
Saman
@samanzdev

تخصص: برنامه نویس وب

خب باید اون public_path رو داخل متغیر folder$ تعریف کنید، بعدش تست کنید ببینید درسته میشه.

samen
samen
@samen993

تخصص: برنامه نویس

 تصویر
دسترسی پوشه روی 755 و فایل ها 644 هست اما جستجوی که انجام دادم به این عبارت خیلی برخورد کردم upload_tmp_dir =
ولی نمیدونم چه جوری باید تنظیم کنم اینو

@samanzdev

samen
samen
@samen993

تخصص: برنامه نویس

[2022-02-20 15:29:07] local.ERROR: File could not be uploaded: missing temporary directory. {"userId":1398,"exception":"[object] (Symfony\Component\HttpFoundation\File\Exception\NoTmpDirFileException(code: 0): File could not be uploaded: missing temporary directory. at /home/javanehn/vendor/symfony/http-foundation/File/UploadedFile.php:211)
[stacktrace]

0 /home/javanehn/app/Http/Controllers/AzmoonController.php(109): Symfony\Component\HttpFoundation\File\UploadedFile->move('/home/javanehn/...', '1398/faliat/111...')

1 /home/javanehn/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App\Http\Controllers\AzmoonController->naghshisabt(Object(Illuminate\Http\Request))

خطای log پوشه storage

samen
samen
@samen993

تخصص: برنامه نویس

اگر بازم جواب نگرفتی پروژت را به یه هاستی که از لحاظ کانفیگ بهتر هست به صورت تست انتقال بده و ببین اگر اونجا آپلود میکنه بدون هاستی که الان توش هستی مشکل کانفیگ داره

مشکل کانفیگ چیه؟
اینو روی یه هاست دیگه امتحان کردم درسته
اما روی یه هاست دیگه بازم همینطوریه
ممکنه بخاطر لینوکس بودن یا نبودن مشکل آپلود بوجود بیاد

samen
samen
@samen993

تخصص: برنامه نویس

 تصویر
اگر ولیدیتور required رو فعال کنم رو همین صفحه خطا میده که انگار فایلی ارسال نمیشه

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام