آپلود كردن فايل

با سلام و تبريك سال نو
ميخواستم ببينم چطوري ميشه يه فايل رو سرور آپلود كرد
من هركاري ميكنم نميشه كد من هم اينه
مشكل چيه؟
ممنون ميشم منا مطلع كنيد
PHP:
<?php
extract($_POST);
if($File)
{
		print("File Name: $File_name");
        print("<br>");
		print("Size File is: $File_size");
		if( copy($File, "users/$File_name"))
		{
			print ("Upload Successfully");            
		}else{
			print ("Upload Unsuccessfull");	
		}
		unlink($File);
}
print ("<br>");
print("Upload a file");
print("<form id=\"form1\" name=\"form1\" enctype=\"multipart/form-data\" method=\"post\" action=\"upload.php\">\t \n");
print("File <input name=\"File\" type=\"file\" size=\"20\" /> <br>\n");
print("<input name=\"submit\" type=\"submit\" value=\"ارسال\" />");
?>

ادیت: لطفا کدها رو در تگ php بذارید
 
سلام دستور extract چرا خطرناكه؟
به جاش بايد از چي استفاده كنم؟
براي آپلود فايل خطرناكه يا در همه موارد؟
من ديدم وقتي اطلاعات فرمم ارسال نميشه و خالي در ديتا بيس ذخيره ميشه از اين فرمان استفاده كردم.
حتما راهنمايي كنيد.
 

ziXet

مدیر انجمن PHP/MYSQL
دستور extract به خاطر این خطرناکه که چون همه متغیر های POST یا GET رو به متغیرهای معمولی تبدیل میکنه ممکنه مثلاشما درون برنامه ات از یه متغیر به نامه ali استفاده کنید ! حالا هکر میتونه با ارسال یک متغیر با همون نام (ali) توسط POST کنترل اون متغیر ali اصلی که در برنامه استفاده شده رو در دست بگیره!!
شما میتونید از طریق:
PHP:
$_POST['نام متغیر'];
به متغیرها دسترسی داشته باشید
 
2 تا سوال ديگه
چرا وقتي با استفاده از فرمان copy ميخواهيم فايل رو آپلود كنيم آپلود نميشه؟
اما وقتي روي كامپيوتر خودم امتحان ميكنم جواب ميده؟!!!!
سوال دوم هم بي مربوط نيست
چرا وقتي به صورت معمولي بدون $_POST يا extract اين كارو ميكنيم داده ها وارد ديتا بيس نميشن؟ اما روي كامپيوتر شخصي اين اتفاق ميوفته و بدون مشكل وارد ميشن؟
در ضمن سايت اين error رو ميده دليلش چي ميتونه باشه؟
ميگه Permission denied بايد توي كدام قسمت تنظيمات انجام بدم؟
http://www.pssengco.com/1.php
 
آخرین ویرایش:

ziXet

مدیر انجمن PHP/MYSQL
2 تا سوال ديگه
چرا وقتي با استفاده از فرمان copy ميخواهيم فايل رو آپلود كنيم آپلود نميشه؟
اما وقتي روي كامپيوتر خودم امتحان ميكنم جواب ميده؟!!!!
سوال دوم هم بي مربوط نيست
چرا وقتي به صورت معمولي بدون $_POST يا extract اين كارو ميكنيم داده ها وارد ديتا بيس نميشن؟ اما روي كامپيوتر شخصي اين اتفاق ميوفته و بدون مشكل وارد ميشن؟
در ضمن سايت اين error رو ميده دليلش چي ميتونه باشه؟
ميگه Permission denied بايد توي كدام قسمت تنظيمات انجام بدم؟
http://www.pssengco.com/1.php
خب مشکل از جای دیگه هست!
شما باید پرمیشن فولدری که میخواین فایل توش آپلود کنید رو عوض کنید.
برای این کار از طریق ftp پرمیشن رو روی 777 قرار دهید.
 

meysam-fathi

Active Member
move_uploaded_file
ساده تر از این دستور نداریم
یه سرچ کوچولو بزن
پیدا میکنی!
 

جدیدترین ارسال ها

بالا