نقل قول: مشکل با آپلود عکس
سلام
متغیر ریسورس، ارجاع به یک منبع خارجی است مانند زمانی که قصد دارید اطلاعاتی را از دیتابیس بخوانید php مستقیم به دیتای درون دیتابیس دسترسی ندارد بلکه با منبع خارجی (مثلا دیتابیس Mysql) ارتباط برقرار می کند و درخواست خود را ارسال می کند. یا حتی زمانی که قصد دارید محتوای فایلی را بخوانید خروجی دستور fopen از نوع ریسورس می باشد. در اینجا نیز دستور imagecreatefromjpeg از کتابخانه GD استفاده می کند که یک منبع بیرونی است.
اینکه چرا برای برخی تصاویر خطای فرمت میدهد باید دیباگ کنید. خطای فرمت مربوط به شرطهای درج شده در خط ۳۴ و ۵۴ می باشد بنابراین شرط ها را بصورت مجزا با استفاده از دستور var_dump نمایش دهید تا مشخص شود دقیقا مشکل کجاست. مثلا برای شرط خط ۳۴ کافیست این دستورات را به کد خود اضافه کنید و بعد با تصویری که آپلود نمیشود تست کنید:
var_dump( array(
$file['tmp_name'],
"getimagesize:",
getimagesize($file['tmp_name']) ,
"pic_type:",
$result['pic_type'],
!in_array($result['pic_type'], array('png','gif','bmp','jpg','jpeg')) ,
"mimetype:",
$mimetype,
!in_array($mimetype, array('image/png','image/gif','image/bmp','image/jpeg')))
);
نقل قول: مشکل با آپلود عکس
نقل قول:
نوشته شده توسط
ali_sed
سلام
متغیر ریسورس، ارجاع به یک منبع خارجی است مانند زمانی که قصد دارید اطلاعاتی را از دیتابیس بخوانید php مستقیم به دیتای درون دیتابیس دسترسی ندارد بلکه با منبع خارجی (مثلا دیتابیس Mysql) ارتباط برقرار می کند و درخواست خود را ارسال می کند. یا حتی زمانی که قصد دارید محتوای فایلی را بخوانید خروجی دستور fopen از نوع ریسورس می باشد. در اینجا نیز دستور imagecreatefromjpeg از کتابخانه GD استفاده می کند که یک منبع بیرونی است.
اینکه چرا برای برخی تصاویر خطای فرمت میدهد باید دیباگ کنید. خطای فرمت مربوط به شرطهای درج شده در خط ۳۴ و ۵۴ می باشد بنابراین شرط ها را بصورت مجزا با استفاده از دستور var_dump نمایش دهید تا مشخص شود دقیقا مشکل کجاست. مثلا برای شرط خط ۳۴ کافیست این دستورات را به کد خود اضافه کنید و بعد با تصویری که آپلود نمیشود تست کنید:
var_dump( array(
$file['tmp_name'],
"getimagesize:",
getimagesize($file['tmp_name']) ,
"pic_type:",
$result['pic_type'],
!in_array($result['pic_type'], array('png','gif','bmp','jpg','jpeg')) ,
"mimetype:",
$mimetype,
!in_array($mimetype, array('image/png','image/gif','image/bmp','image/jpeg')))
);
ممنون از راهنمایی تون.
بیشتر میخواستم بدونم ک کد ها خطای منطقی داره یا نه.
عکس ها رو با paint xp :خجالت: ایجاد کرده بودم. ک فقط عکس ایجادی با پسوند png اون رو آپلود میکرد.
توابع imagecreatefromjpeg و ... خروجیشون به gd بولین هست آیا؟؟
دکمه تشکر کجا رفته؟؟
نقل قول: مشکل با آپلود عکس
عکسی که از اول هم پسوندش bmp یا jpg باشه آپلود نمیکنه با این کد :گریه::گریه::گریه:
خطای format میده !!
فقط عکس های png آپلود میشن :عصبانی++::عصبانی++::عصبانی++:: صبانی++::عصبانی++:
نقل قول: مشکل با آپلود عکس
نقل قول:
نوشته شده توسط
milad_d993
عکسی که از اول هم پسوندش bmp یا jpg باشه آپلود نمیکنه با این کد :گریه::گریه::گریه:
خطای format میده !!
فقط عکس های png آپلود میشن :عصبانی++::عصبانی++::عصبانی++:: صبانی++::عصبانی++:
سلام
شما لطفا خروجی کدهایی که توضیح دادم را روی عکسی که آپلود نمی شود ارسال کنید تا ببینیم مشکل کجاست.
ممکن است پلاگین خاصی روی سرور شما نصب نباشد و برنامه نمیتواند فرمت ها را به درستی شناسایی کنید مثلا FILEINFO_MIME_TYPE ممکن است درست عمل نکند.