2017-07-08 4 views
1

Ich versuche, ein Bild mit PHP und MySQL und unten ist der Code verwendet ..Warum gibt move_upload_file im angegebenen Code nicht immer false zurück?

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"); 
    } 
} 
?> 

Tabellenstruktur zu laden:

# 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 

Jedes Mal, wenn ich dies ausführe, zeigt es mir immer "Fehler Beim Hochladen von Bildern auf den Server "Ich verstehe nicht warum. Kann mir jemand sagen, wo ich falsch liege und wie ich meine Umsetzung verbessern kann? Vielen Dank im Voraus.

+1

Ihr Verzeichnis überprüfen vorhanden sind oder nicht und Schreibrechte –

+0

Berechtigungen für das Verzeichnis angegeben werden schon noch ist es nicht ausführen. –

Antwort

0

Fügen Sie diese Zeile hinzu, bevor Sie die Datei verschieben.

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

Dies wird den Ordner hinzufügen, wenn nicht vorhanden .. mit allen Berechtigungen.

+0

Ich habe versucht, das Hinzufügen, aber immer noch gibt es die gleiche Leistung –

+0

mir die Fehlermeldung anzeigen .... – GYaN

+0

Es ist keine Störungen nicht geben, es geht nur um den anderen Block des move_uploaded_file Code: else { Ausfahrt ("Error Beim Hochladen eines Bildes auf den Server "); } –

0

Ihre Tabellenstruktur für Bild als varchar Alter (255) und prüfen Sie, ob das funktioniert

Verwandte Themen