PDA

View Full Version : چگونه عکسی را توسط imagejpeg در سرور دیگری ذخیره کنیم؟



reza-alborz
سه شنبه 08 دی 1394, 18:23 عصر
با سلام

در قسمت آپلود تصویر بعد از دریافت تصویر از کاربر ، تغییر سایز میدم توسط gd و بعدش میخوام تصویر رو در سرور دیگیری با url ذخیره کنم ولی احتما imagejpeg از آدرس دهی url پشتیبانی نمیکنه . چگونه باید این تصویر رو در سرور دیگری ذخیره کنم . ممنون میشم راهنماییم بفرمائین.

Unique
سه شنبه 08 دی 1394, 20:52 عصر
عکس را میتونی با POST بفرستی روی سرور دیگه (از curl استفاده کن) یا با FTP منتقلش کن.

reza-alborz
چهارشنبه 09 دی 1394, 09:05 صبح
ممنون از راهنمایی و پاسختون ، من دستوراتی رو که دارم رو در زیر گذاشتم .



if(isset($_FILES["image-upload"]))
{
$tmp = $file['tmp_name'];
$image = imagecreatefromjpeg($tmp);
$image_size = getimagesize($tmp);
$image_width = $image_size[0];
$image_height = $image_size[1];
$new_width = 600;
$new_height = 400;
$new_image = imagecreatetruecolor($new_width, $new_height);
imagecopyresampled($new_image, $image, 0, 0, 0, 0, $new_width, $new_height, $image_width, $image_height);
header("Content-Type: image/jpeg");
imagejpeg($new_image, 'C:/xampp/htdocs/image/'.$new_name.'.jpg', 85);
}


طبق فرمایش شما که از curl یا ftp استفاده کنم ، درصورتی هستش که من فایلی رو که از کاربر دریافت میکنم($_file[tmp_name]) رو انتقال بدم . ولی من میخوام فایلی رو که ویرایش کردم یا تغییر سایز دادم رو انتقال بدم . البته با imagejpeg ذخیره میشه ولی میخوام در سرور دیگری انتقال یا ذخیره کنم. ممنون میشم بیشتر راهنماییم کنید

مهرداد سیف زاده
چهارشنبه 09 دی 1394, 09:15 صبح
شما در خط ۱۳ دارید تصویر جدید را در مسیری ذخیره میکنید
همین مسیر رو برای curl استفاده کنید. یعنی به curl برای استریم فایل این مسیر جدید رو بدید
http://stackoverflow.com/a/15177543

reza-alborz
چهارشنبه 09 دی 1394, 09:48 صبح
ممنون از راهنماییتون آقای سیف زاده . آدرسی که تعریف کردم برای مثال بود . من میخوام بدون ذخیره در جایی انتقال داده بشه به سرور دیگر. البته خودم نظرم این بود برای مثال در مسیری ذخیذه کنم و بعد طبق گفته شما اون آدرس رو به curl بدم و بعد از انتقال به سرور عکس رو که ذخیره کرده بودم رو حذف کنم . ولی آیا این کار باعث افت سرعت نمیشه ؟ آیا معقوله؟

مهرداد سیف زاده
چهارشنبه 09 دی 1394, 10:13 صبح
برای حل این مشکل راه حل دیگری هم هست
این که فایل رو مستقبما به اون سرور انتقال بدید و اون تغییرات رو روی سرور انجام بده(البته مستلزم این هست که به سرور دسترسی داشته باشید و برنامتون رو اون جا بنویسید)
ولی در هر صورت انتقال باید انجام بشه. حالا این وسط فقط چون سرور قویتر هست میتونه سریعتر عکس رو ویرایش کنه و زمان پاسخ به کاربر کم میشه

reza-alborz
چهارشنبه 09 دی 1394, 10:25 صبح
ممنون . آیا میشه کاری کرد بعد از انتقال به سرور در همان جا بصورت اتوماتیک ویرایش کنه ؟

reza-alborz
چهارشنبه 09 دی 1394, 10:31 صبح
ببخشید من یک سوال این وسط مطرح میکنم ؟ بجای این که یک سرور واسه سایت و یک سرور واسه فایلهامون داشته باشیم ، میشه یک سرور قدرتمندتری واسه هر دو داشته باشیم؟

مهرداد سیف زاده
چهارشنبه 09 دی 1394, 10:44 صبح
ببخشید من یک سوال این وسط مطرح میکنم ؟ بجای این که یک سرور واسه سایت و یک سرور واسه فایلهامون داشته باشیم ، میشه یک سرور قدرتمندتری واسه هر دو داشته باشیم؟

برای کم کردن و بالارفتن سایت توصیه میکنن این دو رو از هم جدا کنید. چون قابل پیش بینی نیست. یهو دیدید تو یه روز تعداد کاربران و درخواستها یهو رفت بالا. یا کاربرانی از یه ویدیو خوششون اومد و ۲۰۰ تا کاربر آنلاین میخوان ویدیو رو ببینن. اون وقت سرور هر چقدر هم که قوی باشه امکان داره بخوابه و اصلا سایت بالا نیاد. ولی با جدا کردن خیالتون راحته که هر چقدر به سرور فایل فشار بیاد، بازم سایت اصلی بالا میاد و فقط کاربران دسترسی به فایل ندارن

reza-alborz
چهارشنبه 09 دی 1394, 12:14 عصر
واقعا ممنونم از راهنماییتون، فقط سوال دیگه این که آیا میشه کاری وقتی که عکس ها رو فرستادیم سرور اونجا بصورت خودکار ویرایش بشه؟