راکت
حل شده

اعتبارسنجی فایل با پکیج alexuami-laravel-file-manager

5 پاسخ

سلام
من میخوام برا پست هام یه تصویر شاخص داشته باشم
خب فرمو ایجاد کردم enctype="multipart/form-data" رو هم قرار دادم
از پکیج laravel-file-manager استفاده کردم
این input منه

            <div class="form-group col-md-6">
                <strong>آپلود تصویر شاخص</strong>
                <div class="input-group mt-2">
                    <input type="text" id="image_label" class="form-control" name="image">
                    <div class="input-group-append">
                        <button class="btn btn-primary" type="button" id="button-image"><i class="bi bi-upload"></i></button>
                    </div>
                </div>
                @error('image')
                    <small class="text-danger"><strong>{{ $message }}</strong></small>
                @enderror
            </div>

اینم کنترلرم

$data = $request->validate([
            "title" => ["required","string" , "min:5","max:255"],
            "categories" => ["required" , "array"],
            "body" => ["required"],
            "image" => [ "required","image","max:10"]
        ]);

        $post = Post::create(array_merge($data,[
                "user_id" => auth()->user()->id , 
                "status" => $request->status == 0 ? 0 : 1 
            ]
        ));

هر تصویری که آپلود میکنم میگه که تصویر معتبر نیس یا همون 'The image must be a valid image.'
اینم آدرس تصویرم که هیچ مشکلی برای نمایش ندارم

"/images/wallpapersden.com_witcher-3-artstation-fan-art_1366x768.jpg"
ثبت پرسش جدید

پاسخ‌ها

5
کیهان
کیهان
@keyhan

تخصص: PHP programmer

بهترین پاسخ

@alirezashekofteh
مشکل از اون نیست - error message هم مربوط به max نیست - گرچه تستم کردم

علیرضا
علیرضا
@alirezashekofteh

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

عزیزم توو validate تو بخشimageاون maxرو حذف کن درست میشه

مهدی
مهدی
@mahdidv

تخصص: Backend Developer

@keyhan در تایید پاسخ دوستمون بهتره ولیدیشن هارو به این صورت بنویسی

$validated = $request->validate([
'title' => 'required|unique:posts|max:255',
'body' => 'required',
]);

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

مهران مرندی
مهران مرندی
@mehranmarandi

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

چرا تايپ image رو text وارد كرديد؟ فكر ميكنم بايد file باشه!

                    <input type="text" id="image_label" class="form-control" name="image">
کیهان
کیهان
@keyhan

تخصص: PHP programmer

@mehranmarandi90
از پکیج laravel-file-manager استفاده کردم- که خواسته بود یک دکمه ی مستقل ایجاد کنم

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

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