اپلود فایل در php

PHP

توسط hasti در 4 سال پیش
0 669 3 4 سال پیش
hastirezamaxphp-sec
0

درود بر شما. 1-من یه کدی دارم درمورد آپلود فایل کدشو براتون قرار میدم امکانش هست این کد رو برای من خط به خط توضیح بدید ممنون میشم.

<?php
	
    if(isset($_POST['btn_upload']))
    {
            
        $error = $_FILES['user_file']['error'];
        $name = $_FILES['user_file']['name'];
        $tempFile = $_FILES['user_file']['tmp_name'];
        if($error == 0)
        {
			$moveFile = move_uploaded_file($tempFile,"files/$name");
			if($moveFile)
			{
				header("location:?msg=ok");
				exit;				
			}
			else
			{
				header("location:?msg=err2");
				exit;
				
			}
		}
        else
        {
            
			header("location:?msg=err1");
			exit;
        }
        
            
    }
	
	
		if(isset($_GET['msg']) && $_GET['msg'] == 'err1')
			print "error file not upload !";	
		if(isset($_GET['msg']) && $_GET['msg'] == 'ok')
			print "file ok upload";	
		if(isset($_GET['msg']) && $_GET['msg'] == 'err2')
			print "file not upload!";	
	
		
		if(file_exists("files/a.txt"))
			print "ok";
		else
			print "errr";
		
    
    ?>
    

	<form method="post" action="" enctype="multipart/form-data">
    	
        File : <input type="file" name="user_file" />
        
        <input type="submit" value="Upload" name="btn_upload" />
    
    </form>
آخرین ویرایش: 21-05-2014 ساعت 23:26، توسط Daniel
0

سلام کدها رو تو تگ کد php قرار بدید تا خوانا باشه.

<?php

if(isset($_POST['btn_upload'])){

	$error = $_FILES['user_file']['error']; // تعریف متغیر برای نگه داری خطاهای احتمالی مثل خطای انتخاب فایل یا حجم بیش از اندازه فایل
	$name = $_FILES['user_file']['name']; // نام فایل
	$tempFile = $_FILES['user_file']['tmp_name']; // نام موقت فایل در سرور
	// اگر خطایی وجود نداشت...
	if($error == 0){
		$moveFile = move_uploaded_file($tempFile,$name); //انتقال فایل به محل جدید
		// ااگر در انتقال فایل انجام شد...
		if($moveFile){
			header("location:?msg=ok"); // بارگذاری دوباره صفحه با ارسال پارامتر برای نمایش پیام
			exit; // همیشه بعد از دستور هدر این دستور نیاز است.
		}
		else
		{
			header("location:?msg=err2");  // بارگذاری دوباره صفحه با ارسال پارامتر برای نمایش پیام
			exit;
		}
	}
	else
	{
		header("location:?msg=err1");  // بارگذاری دوباره صفحه با ارسال پارامتر برای نمایش پیام
		exit;
	}
}

// با توجه به پارامترهای ارسال شده توسد دستور هدر پیامهای مناسب نمایش میدهد
if(isset($_GET['msg']) && $_GET['msg'] == 'err1')
	print "error file not upload !";
	
if(isset($_GET['msg']) && $_GET['msg'] == 'ok')
	print "file ok upload";
	
if(isset($_GET['msg']) && $_GET['msg'] == 'err2')
	print "file not upload!";


// این دستورات ربطی به اپلود فایل ندارن اما موجودیت یک فایل رو چک میکنه
if(file_exists("files/a.txt"))
	print "ok";
else
	print "errr";

?>


<form method="post" action="" enctype="multipart/form-data">

File : <input type="file" name="user_file" />

<input type="submit" value="Upload" name="btn_upload" />

</form>
0

مچکرم.فقط ببخشید این err2برای چیه؟

0

> مچکرم.فقط ببخشید این err2برای چیه؟
سلام در صورتی که تابع move_uploaded_file نتونه کارشو انجام بده err2 نمایش پیدا میکنه.

خوش آمدید

برای طرح سوال، ایجاد بحث و فعالیت در سایت نیاز است ابتدا وارد حساب کاربری خود شوید. در صورتی که هنوز عضو سایت نیستید میتوانید در عرض تنها چند ثانیه ثبت نام کنید.

لطفا ابتدا لاگین کنید