5 پاسخ

آروان کلود

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


ثبت پرسش جدید
محمدحسن یگانه
تخصص : Full-Stack Web Developer Freel...
@mhyeganeh 3 سال پیش آپدیت شد
1

سلام.
بصورت خلاصه کاری که می‌تونید بکنید این هست که از سرویس فضای ابری (Storage) ابرآروان استفاده کنید و بعد از ایجاد صندوقچه (‌Bucket) مشخصاتی که بهتون میده رو در پروژتون تعریف کنید.
سپس با تعریف یک disk جدید از نوع‌ s3 در config/filesystem.php می‌تونید با استفاده از متدهای Storage لاراول فایل هاتون رو آپلود یا دانلود کنید.

use Illuminate\Http\File;
use Illuminate\Support\Facades\Storage;

Storage::disk('arvan_s3')->putFile('photos', new File('/path/to/photo'));
Storage::disk('arvan_s3')->download('file.jpg');

با این حالت به بیان دیگه انگار دارید یک هارد جدید علاوه بر هارد خود هاست یا سرورتون تعریف می‌کنید.


نیما
تخصص : جوجه برنامه نویسی که میخواد فو...
@Nima.nori 3 سال پیش آپدیت شد
0

بله ما این کار رو در همه ی زبان های سمت سرور انجام می دیم مثال از php
1 - یه فرم با تایپ multipart/form-data و یه اینپوت با تایپ file
مثل این :


<html>
<body>

<form action="upload.php" method="post" enctype="multipart/form-data">
  Select image to upload:
  <input type="file" name="fileToUpload" id="fileToUpload">
  <input type="submit" value="Upload Image" name="submit">
</form>

</body>
</html>

2 - وقتی فرم ارسال شد به upload.php ما برای اطلاعات فرمی که بصورت نوشته هست و غیره مثل اینپوت تایپ تکست با متغیر سراری $POST
دسترسی داریم ولی به فایل های عکسی و هر چیزی که از اینپوت تایپ فایل باشه با متغیر سراسری $FILES دسترسی داریم.ما می تونیم با تابع moveuplodedfile هم یه فایل رو اپلود کنیم در کل فایل اپلودر ما اینجوری میشه

<?php
// cheak file is image
$allowedMimes = ['png', 'jpeg', 'jpg', 'gif'];
    $imageMime = pathinfo($_FILES['img']['name'], PATHINFO_EXTENSION);
    if(!in_array($imageMime, $allowedMimes, true))
    {
        echo 'این فایل یک تصویر نیست';
        die();
     }
    // create file name with current date
    $image = '/assets/img/posts/' . date("Y_m_d_H_i_s") . '.' . $imageMime;
    $image_upload = move_uploaded_file($_FILES['img']['tmp_name'], ROOT_PATH . $image);
    if(!image upload ){
        echo 'در هنگام اپلود تصویر مشکلی پیش امد';
        die();
    }
    echo 'تصویر با موفقیت اپلود شد';

خوشحال میشم اگه کمکتون کرد این پاسخ رو به عنوان بهترین پاسخ انتخاب کنی


0

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


محمدحسن یگانه
تخصص : Full-Stack Web Developer Freel...
@mhyeganeh 3 سال پیش آپدیت شد
1

سلام.
بصورت خلاصه کاری که می‌تونید بکنید این هست که از سرویس فضای ابری (Storage) ابرآروان استفاده کنید و بعد از ایجاد صندوقچه (‌Bucket) مشخصاتی که بهتون میده رو در پروژتون تعریف کنید.
سپس با تعریف یک disk جدید از نوع‌ s3 در config/filesystem.php می‌تونید با استفاده از متدهای Storage لاراول فایل هاتون رو آپلود یا دانلود کنید.

use Illuminate\Http\File;
use Illuminate\Support\Facades\Storage;

Storage::disk('arvan_s3')->putFile('photos', new File('/path/to/photo'));
Storage::disk('arvan_s3')->download('file.jpg');

با این حالت به بیان دیگه انگار دارید یک هارد جدید علاوه بر هارد خود هاست یا سرورتون تعریف می‌کنید.


نیما
تخصص : جوجه برنامه نویسی که میخواد فو...
@Nima.nori 3 سال پیش مطرح شد
0

دوستمون قبل اینکه من بنویسم نوشتم خیلی هم کامل انتخابش کنید برای دوستمون رو به عنوان بهترین پاسخ


1

سپاس از نیما جان و محمد حسین یگانه عزیز


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

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