سلام و خسته نباشید
پروژه ای نوشتم روی لوکال بدون هیچ مشکلی عکس ذخیره میکرد و نمایش میداد
( یک نکته بگم قبل ادامه صحبتم - شروطی گذاشتم برای بررسی اینکه عکس ذخیره میشه یا نه و میپرسم اگه ذخیره شد ادامه بده)
الان روی هاست گذاشتم پروژه ام رو - عکس رو ذخیره میکنه ( منظورم اینه که توی دیتابیس اسمش ثبت میشه)
اما وقتی میرم توی مسیر public/images/ هیچ عکسی ذخیره نشده - مشکل کجاست ؟؟
پوشه images ام سطح دسترسی اش 755 هستش.
@Alimotreb
سلام از تابع url() خود لاراول استفاده میکنم.
کلا یک تابع نوشتم که همه عکسا رو توی مسیر public/images/ ذخیره میکنه و همه ی عکسها رو هم از همون دایرکتوری میخونم
توی هاست هم با فایل public_html دقیقا مثل public لاراول رفتار میکنم
<img class="img-fluid img-rounded" src="{{url('images/'.auth()->user ()->image)}}">
سلام
@mohsen.mehri6101
یعنی الان عکساتون توی هاست توی این مسیره :
/home/usernamehost/public_html/public
؟
نحوه آپلود پروژهتون به چه صورت بوده؟
قبل از images هم یه / بزارید
public function SaveImage($file,$name=null){
$imagePath = "/images/";
$end = $file->getClientOriginalExtension();
//$filename = $file->getClientOriginalName();//get really filename
$end='.'.$end;
if(! $name)
{
$strRandom=Str::random(3);
$timeRandom=Carbon::now()->timestamp;
$name =$strRandom.$timeRandom.$end;
}
else
{
$name=$name.$end;
}
$file->move(public_path($imagePath) , $name);
return $name;
}
سلام
احتمال زیاد مشکل شما از نحوه مسیر دهی هست:
اگر پروژه رو بدون تغییر در پوشه بندی داخل پوشه public_html آپلود کرده باشن باید داخل تنظیمات هاست مقدار document root رو به مسیر public داخل پروژه تغییر بدین.
اگر پوشه public رو از سورس پروژه جدا کردین باید مسیر های داخل فایل index.php رو تغییر بدین این قطعه کد رو هم بعد مسیر دهی app.php اضافه کنید:
$app->bind('path.public', function () {
return __DIR__;
});
سلام
@mohsen.mehri6101
با خط به خط جلو رفتن و دیباگ کردن
خودتون دقیقا متوجه میشید که داره کجا ذخیره میشه و از کجا نشون داده میشه
با ادیت مسیر ها و پوشه ها و کاری که دوستمون گفتن ، مسیر درست رو نسبت به آپلود پروژه به دست میارید.
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟