PDA

View Full Version : سوال: مشکل با $_FILES در آپلود کردن فایل



Itist82
دوشنبه 24 فروردین 1388, 13:46 عصر
سلام
فایل php ای نوشتم که غیر از چند تا مورد، یه فایل هم از کاربر می گیره و اونو آپلود می کنه. این برنامه روی کامپیوتر خودم داره درست اجرا می شه (wamp) اما روی هاست که آپلود کردم با tmp_name (یعنی این:

$_FILES['Uploadedfile']['tmp_name']) مشکل داره. اون $_Files رو توی کامپیوتر خودم echo کردم مسیر صحیح فایل انتخاب شده رو نشون داد، اما توی سرور یه چیز عجیب نشون داد: /tmp/phpCokUgt
بعد هم می گه فایلی نبود و نشد آپلود کنم (...Unable to move '/tmp/phpCokUgt' to)
چی کارش باید کرد؟ غیر از $_Files مگه راهی برای دسترسی به فایل آپلود شده هست؟
در ضمن توی تنظیمات سرور دیدم اجازه آپلود داده بود (file_uploads on)
من هم توی اینترنت سرچ کردم هم اینجا اما نفهمیدم این مشکل رو چه جوری درست کنم.

Itist82
پنج شنبه 27 فروردین 1388, 16:43 عصر
یعنی واقعا هیچ کس نمی دونه چی کارش باید کرد؟ ای بابا! هیچ برنامه نویس پی اچ پی ای اینجا نیست که فایل آپلود کرده باشه؟؟!!

narsic
پنج شنبه 27 فروردین 1388, 19:57 عصر
با سلام
برنامه نویس زیاده اما شما باید کدتون رو بطور کامل بزارید .
موفق باشید

Itist82
پنج شنبه 27 فروردین 1388, 22:49 عصر
با سلام
برنامه نویس زیاده اما شما باید کدتون رو بطور کامل بزارید .
موفق باشید

ممنون از توجهتون، چیز خاصی تو کد من نیست، همین چند تا خط ساده:


$path="$newsImagFolder\\";
$filename=$_FILES['Uploadedfile']['name'];
move_uploaded_file ($_FILES['Uploadedfile']['tmp_name'],"$path/{$_FILES['Uploadedfile']['name']}");
$path .= $filename;

همین! حالا اگه ایده ای دارید ممنون می شم بگید

narsic
جمعه 28 فروردین 1388, 23:14 عصر
با سلام
دوست عزیز کد کامل یعنی کد صفحه Html و PHP هر دو در هر صورت من همین کد رو براتون آماده کردم البته به این علت که احتمال خطا در کد صفحه Html داشتید یک فرم ساده هم آماده کردم .(تست شد)



<?php
$path='uploads';
$filename=$_FILES['Uploadedfile']['name'];
$mupload=move_uploaded_file ($_FILES['Uploadedfile']['tmp_name'],$path."/".$_FILES['Uploadedfile']['name']);
if ($mupload)
echo "Ok Fie Upload ...";
else
echo "Fail File not Upload !!!";

?>
<form enctype='multipart/form-data' method='POST'>
File : <input name='Uploadedfile' type='file'/><input type='submit' value='Upload'/>
</form>

موفق باشید

Itist82
پنج شنبه 03 اردیبهشت 1388, 13:20 عصر
دوست عزیز خیلی ممنون، درست شد. البته من هنوز درست مطمئن نیستم مشکل چی بوده، یه حدس قوی می زنم که اسلش و بک اسلش یه کم مشکل درست کرده بودن، در هر صورت من کد شما رو جایگزین مال خودم کردم و حل شد. خیلی لطف کردید.
یه چیز دیگه اینکه فولدری که توی سرور در نظر گرفته بودیم برای فایل هایی که آپلود می شدن، اجازه نوشتن نداشت، من مجبور شدم از توی کنترل پنل اجازه نوشتن رو ی اون فولدر رو در سطح world بذارم که احتمالا امنیتشو میاره پایین. آیا راهی برای این کار می شناسید؟

اوبالیت به بو
پنج شنبه 03 اردیبهشت 1388, 17:26 عصر
http://barnamenevis.org/forum/showpost.php?p=668583&postcount=6

reza_22
پنج شنبه 10 اردیبهشت 1388, 02:47 صبح
همونطور که خودت هم حدس زدی این مشکل به خاطر استفاده از اسلش و بک اسلش است که در ویندوز و لینوکس با یکدیگر فرق میکند.