2017-07-08 89 views
1

我试图使用PHP和MySQL上传的图像,并且下面是所使用的代码..为什么move_upload_file在给定的代码中总是返回false?

的index.php

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

<table style="border-collapse: collapse; font: 12px Tahoma;" border="1" cellspacing="5" cellpadding="5"> 
<tbody><tr> 
<td> 
<input name="uploadedimage" type="file"> 
</td> 

</tr> 

<tr> 
<td> 
<input name="Upload Now" type="submit" value="Upload Image"> 
</td> 
</tr> 


</tbody></table> 

</form> 

submit.php

<?php 

include("mysqlconnect.php"); 

function GetImageExtension($imagetype) { 
    if (empty($imagetype)) 
     return false; 
    switch ($imagetype) { 
     case 'image/bmp': return '.bmp'; 
     case 'image/gif': return '.gif'; 
     case 'image/jpeg': return '.jpg'; 
     case 'image/png': return '.png'; 
     default: return false; 
    } 
} 

if (!empty($_FILES["uploadedimage"]["name"])) { 

    $file_name = $_FILES["uploadedimage"]["name"]; 
    $temp_name = $_FILES["uploadedimage"]["tmp_name"]; 
    $imgtype = $_FILES["uploadedimage"]["type"]; 
    $ext = GetImageExtension($imgtype); 
    $imagename = date("d-m-Y") . "-" . time() . $ext; 
    $target_path = "images/" . $imagename; 



    if (move_uploaded_file($_FILES['uploadedimage']['tmp_name'], $target_path)) { 
     $detail = date("Y-m-d"); 
     $sql = "INSERT INTO `image_upload`(`id`, `image`, `detail`) VALUES (NULL,'$target_path','$detail')"; 
     if (!$conn->query($sql)) { 
      echo $conn->error; 
     } else { 
      echo "Successfully inserted. "; 
     } 
    } else { 

     exit("Error While uploading image on the server"); 
    } 
} 
?> 

表结构:

# Name  Type Collation  Attributes Null Default Extra 
1 id(Primary) int(11)        No None AUTO_INCREMENT 
2 image  blob         Yes NULL  
3 detail  varchar(500) utf8_general_ci   Yes NULL 

每当我执行这个它总是显示我“错误在服务器上传图片时“我不明白为什么。有人可以让我知道我哪里错了,我该如何改进我的实施? 在此先感谢。

+1

检查您的目录中存在与否,并有写权限给予 –

+0

权限目录已经它仍然不执行。 –

回答

0

在移动文件之前添加此行。

if (!file_exists($target_path)) { mkdir($target_path , 0777, true); } 

这将添加文件夹,如果不存在..具有所有权限。

+0

我尝试添加这但仍给了相同的输出 –

+0

显示我的错误.... – GYaN

+0

它不给任何错误,它只是给move_uploaded_file代码else块: 其他{ 退出(“错误在服务器上上传图片“); } –

0

改变你的表结构的图像为varchar(255),并检查是否工作

相关问题