2015-09-16 86 views
0

我試圖上傳圖片文件,我想顯示該圖片的信息。但是我的代碼無法正常工作,我不確定是什麼問題,我希望有人能指出我做錯了什麼。上傳圖片並顯示信息

<!DOCTYPE html> 
<html> 
<head> 
<title>Upload Image</title> 
</head> 
<body> 
<form action="upload_image.php" action="post" enctype="multipart/form-data"> 
Select image: <input type="file" name="image"> 
<input type="submit" name="upload" value="Upload Now"> 
</form> 
<?php 
if(isset($_POST['upload'])){ 

    echo $image_name = $_FILES['image']['name']; 
    echo $image_type = $_FILES['image']['type']; 
    echo $image_size = $_FILES['image']['size']; 
    echo $image_tmp_name = $_FILES['image']['tmp_name']; 

    if($image_name == ""){ 
     echo "<script>alert('Please select an image!')</script>"; 
     exit(); 
    } 
} 
?> 
</body> 
</html> 

PS:我還是新的PHP和文件上傳,所以請去容易對me..Thank你提前

+0

您使用的是哪個版本的PHP? –

+0

@ChaibiAlaa php5 – blackhorse123

+0

上傳....,在哪裏? –

回答

1

的問題似乎是一個事實,即沒有指定任何位置上傳到哪裏,既不是文件類型。這是帶有擴展驗證,大小的代碼,並將文件移動到名爲images的文件夾中。

<?php 
if(isset($_FILES['image'])){ 
    $errors= array(); 
    $file_name = $_FILES['image']['name']; 
    $file_size =$_FILES['image']['size']; 
    $file_tmp =$_FILES['image']['tmp_name']; 
    $file_type=$_FILES['image']['type']; 
    $file_ext=strtolower(end(explode('.',$_FILES['image']['name']))); 
    $extensions = array("jpeg","jpg","png");   
    if(in_array($file_ext,$extensions)=== false){ 
    $errors[]="extension not allowed, please choose a JPEG or PNG file." 
    } 
    if($file_size > 2097152){ 
    $errors[]='File size must be excately 2 MB'; 
    }    
    if(empty($errors)==true){ 
     move_uploaded_file($file_tmp,"images/".$file_name); 
     echo "Success"; 
    }else{ 
     print_r($errors); 
    } 
} 
?> 
<form action="" method="POST" enctype="multipart/form-data"> 
    <input type="file" name="image" /> 
    <input type="submit"/> 
</form> 
+1

同時確保該文件夾具有適當的權限寫入;-) –

+1

Exactlu,並顯示錯誤(如果有的話)。 –