راکت

مشکل عجیب آپلود تصویر در هاست

6 پاسخ

سلام من یه سایت رو تکمیل کردم بعد بعد از آپلود پروژه در هاست لینوکسی آپلود فایل ها به درستی انجام نمیشه ، در صورتی که در لوکال به راحتی کار میکنه.کد آپلود تصویر :

  $image = $request->file('image_p');
            $name_image=Product::find($request->editProduct)->image;
            $imageName =$name_image;
            if ($image) {
                $path_image_file=public_path(Get_path_product_image($name_image));
                if (file_exists($path_image_file) and $path_image_file!='') {
                    unlink($path_image_file);
                }

                $imageName = rand(1000,10000) . '_' . time() . '.' . $image->getClientOriginalExtension();
                $destinationPath = public_path('/uploaded/image/products');
                $image->move($destinationPath, $imageName);
            }

مشکل یخورده عجیبه ،وقتی توی remote ftp فایل ها رو میبینم اولش اون عکس وجود داره ولی بعد از چند ثانیه که رفرش میکنم نیست دیگه ،خیلی عجیبه

دوستان ممنون میشم اگه کسی راه حل این مشکل رو میدونه منو از این مشکل نجات بده 😊

ثبت پرسش جدید

پاسخ‌ها

6
woz
woz
@wozniak

تخصص: fan of open source world

@mahdihoseini1380
وقتی چیزی بسیار عجیب بود معمولا راه حلشم بسیار مسخره هست.
پس بگردید برای اینکه ببینید چه جایی داخل فرضیات شما اشتباه صورت گرفته.

سید مهدی  حسینی
سید مهدی حسینی
@mahdihoseini1380

سلام مشکلشو فهمیدم تایع public_path آدرس اشتباه میده ، وقتی توی هاست پوشه public لاراول رو به public_html هاست منتقل میکنیم تابع public_path آدرس اون پوشه public رو میده که قبلا توی فایل پروژه وجود داشت رو میده یعنی مه این آدرس رو میخوام:
home3/choobonl/public_html/uploaded/image/products/8945_1601468241.jpg
ولی این ادرس زیر رو میده :
home3/choobonl/siteData/public/uploaded/image/products/8945_1601468241.jpg
میدونید چطوری تابع public_path رو دستکاری کنم که آدرس درست پوشه public هاست رو بده

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

Amirilidan78
Amirilidan78
@Amirilidan78

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

@mahdihoseini1380

if ( env('APP_ON_SERVER') )
            $this->app->bind('path.public', function() {
                return realpath(base_path().'/../');
            });
سید مهدی  حسینی
سید مهدی حسینی
@mahdihoseini1380

@Amirilidan78
ممنون ، این کدی که دادید توی لوکال به مشکل برنمیخوره؟
این کد رو کجا قرار بدیم بهتره؟

Amirilidan78
Amirilidan78
@Amirilidan78

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

توی فایل env وریبل app_on_server رو قرار دهید توی لوکال فالس بزارین روی سرور ترو
من خودم داخل appserviceProvider گذاشتم شما میتونین یه provider دیگه درست کنین

AriaieBOY
AriaieBOY
@ariaieboy

تخصص: TALL Stack Lover

@mahdihoseini1380
یکی از مشکلات میتونه مربوط باشه به فایل php.ini و مقادیر post max file size
ببینید با هر حجم فایلی خطا میخوره یا خیر.
اگر فقط فایل هایی که مثلا از 2 یا 8 مگ به بالا بود مشکل از تنظیمات php.ini هست

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

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