PDA

View Full Version : resize in php



zohreh.hn
شنبه 20 مهر 1392, 13:14 عصر
سلام می خواستم بدونم چطور میشه عکس ری سایز شده را بصورت بلاب در مای اس کیو ال ثبت کرد و مشاهده کرد. یا فقط به صورت مسیر باید در مای اس کیو ال ثبت کنم؟! ممنون
اگر بخوام خود عکس را در مای اس کیو ال ثبت کنم چطور؟!!!!

SilverLearn
شنبه 20 مهر 1392, 13:57 عصر
فکر کنم اول باید با تابع لودفایل فایل رو بریزی مثلا تو یک متغیر و بعد ازش استفاده کنی

مثال :




LOAD_FILE('/path/image.png')


بعد اینجوری ازش استفاده کنید :



INSERT INTO xx_BLOB(ID,IMAGE) VALUES(1,LOAD_FILE('path/image.png'));

SilverLearn
شنبه 20 مهر 1392, 13:59 عصر
راستی نوع داده ای blob, LONGBLOB به خوبی در mysql کار می کند ...

zohreh.hn
شنبه 20 مهر 1392, 14:06 عصر
یعنی نمیشه مستقیم ریسایز بشه و اینسرت بشه باید تو یه فایل ریخته بشه؟!

SilverLearn
شنبه 20 مهر 1392, 14:20 عصر
چرا میشه...

خوب روش های زیادی وجود داره :

لینک های زیر می تونه بهتون کمک کنه ...

http://www.white-hat-web-design.co.uk/blog/resizing-images-with-php/

http://php.net/manual/en/imagick.resizeimage.php


بعد از ریسایز کردن از روشی که گفتم در دیتابیس درج کنید ...

MMSHFE
شنبه 20 مهر 1392, 18:43 عصر
ذخیره خود تصویر در دیتابیس اصلاً و ابداً توصیه نمیشه. بخاطر اینکه وقتی بصورت عکس باشه (مثلاً JPG یا PNG) میشه انواع فشرده سازیها رو روی عکس اعمال کرد. برای مثال، یک عکس 800 در 600 با عمق 32 بیت، تقریباً 14 مگابایت فضا توی دیتابیس میگیره درحالی که همین عکس با فرمت JPEG حدوداً 600 کیلوبایت میشه. بعلاوه حجم دیتابیس بالا میره و سرعت کار بشدت کاهش پیدا میکنه. اگه بخواین عکسها تغییر کنه هم باید این حجم عظیم رو آپدیت کنید. مسائل Backup گرفتن از دیتابیس و... رو هم باید درنظر داشته باشین.