PDA

View Full Version : سوال: آپلود کردن فایل با php به سرور



morteza271
یک شنبه 09 خرداد 1389, 09:42 صبح
من توی سایتم این امکانو گذاشتم که مدیر سایت بتونه فایل هایی رو آپلود کنه و کاربرا بتونن اونارو دانلود کنن...
ولی وقتی یه فایل 2 مگ به بالا رو انتخاب مبکنم خطا میده و اصلا اون متغیرهای input رو نمیشناسه!!!
ولی فایل های زیر دو مگ رو به راحتی آپلود میکنه!!! به نظرتون مشکلش چیه؟چیکار باید بکنم؟
با تشکر

Reza1607
یک شنبه 09 خرداد 1389, 09:55 صبح
این مشکل نیست بلکه خود php به صورت پیش فرض حداکثر حجم برای آپلود رو 2 مگا انتخاب کرده
این خط رو توی فایل php.ini پیدا کن
upload_max_filesize = 2M
و هر مقداری که خواست به جای 2 بزار

morteza271
یک شنبه 09 خرداد 1389, 10:06 صبح
ممنونم اقا رضا،اون مشکل درست شد ولی:
حالا فایل هایی که سایز آنها از 2مگ بیشتر است رو میگه خالیه و size اونا رو صفر میگیره!!!
چیکار کنم؟!!

Reza1607
یک شنبه 09 خرداد 1389, 10:19 صبح
تگ فرمت باید قسمت زیر رو هم داشته باشه


enctype="multipart/form-data"

در ضمن شما بیشتر از 8 MB رو نمی تونی پست کنی و اگه می خوای بیشتر پست کنی بازم توی فایل php.ini خط
post_max_size = 8M
رو پیدا و به جای 8 مقدار خودتو بذار و آپاچی رو restart کن

Reza1607
یک شنبه 09 خرداد 1389, 10:21 صبح
در ضمن می تونی از لینک زیر که ارسال ایمیل فارسی با قابلیت ارسال فایل هست استفاده کنی
http://barnamenevis.org/forum/showthread.php?t=223403

morteza271
یک شنبه 09 خرداد 1389, 10:29 صبح
بازم ممنونم اقا رضا...درست شد...

یه سوال مبتدیانه دارم(شرمنده)
میخوام سایز فایل رو به کیلو بایت داشته باشم ولی خود php به بیت میده و وقتی تقسیم بر 1024 میکنمش پس از اعشارش کلی عدد میذاره ولی من میخوام تا دو رقم بعد اعشار بیشتر نشون نده! باید چیکار کنم؟
بازم ممنون و شرمنده بابت این سوال مبتدیانه!!!

Reza1607
یک شنبه 09 خرداد 1389, 10:31 صبح
از دستور number_format استفاده کنید

morteza271
یک شنبه 09 خرداد 1389, 10:32 صبح
راستی یه سوال دیگه :
چجوری باید فایلی رو که قبلا آپلودش کردم رو حذف کنم(البته اول چک کنم که اگه وجود داره حذفش کنه...)

morteza271
یک شنبه 09 خرداد 1389, 10:38 صبح
از دستور number_format استفاده کنید
میشه بگید چجوری باید استفاده کنم اقا رضا، آخه وقت ندارم!ممنون

Reza1607
یک شنبه 09 خرداد 1389, 10:44 صبح
از دستور به صورت زیر استفاده کن


echo "Size : ".number_format($size);
برای چک کردن این که فایل هست یا نه از دستور file_exists و به صورت زیر می تونی استفاده کنی


if(file_exists($filename)){
//فایل موجود هست
unlink($filename);
}
و برای راهنمایی بیشتر این تابع آدرس زیر رو نگاه کن
http://ir.php.net/manual/en/function.file-exists.php