2010-04-10 4 views
1

J'ai un site web sur l'hébergement gratuit - 000webhost.com et il vous permet de télécharger des images.move_uploaded_file() erreur

Cependant, lorsque je tente de télécharger une image, je reçois ces erreurs:

Avertissement: move_uploaded_file (images/SmallSmileyFace.jpg) [function.move-fichier téléchargé-]: failed to open stream: Permission denied dans /home/a6621074/public_html/m/write.php à la ligne 76

Avertissement: move_uploaded_file() [fichier function.move-uploaded]: Impossible de déplacer '/ tmp/phpcmW3mo' vers 'images/SmallSmileyFace. jpg 'dans /home/a6621074/public_html/m/write.php sur la ligne 76

Ceci est le code:

if (!empty($_FILES['fileImage']['name'])) { 
    // check image type and size 
    if ((($imagetype == 'image/gif') || ($imagetype == 'image/jpeg') || ($imagetype == 'image/pjpeg') || ($imagetype == 'image/png')) 
    && ($imagesize > 0) && ($imagesize <= 32768)) { 

    if ($_FILES['fileImage']['error'] == 0) { 
     //move file 
     $target = 'images/' . $image; 
     if (move_uploaded_file($_FILES['fileImage']['tmp_name'], $target)) { 
      $query = "INSERT INTO reviews (post_date, food_name, location, cafeteria, review, image, rating, user_id) 
      VALUES (NOW(), '$foodname', '$location', '$cafeteria', '$review', '$image', $rate, $id)"; 

      mysqli_query($dbc, $query); 

      //confirm success 
      echo '<p>Thank you for your submission!</p>'; 
     } 
     else { 
      echo '<p class="errmsg">There was a problem uploading your image.</p>'; 
     } 
    } 
    @unlink($_FILES['fileImage']['tmp_name']); 
    } 
else { 
     echo '<p class="errmsg">The screen shot must be a GIF, JPEG, or PNG image file no greater than 32KB in size.</p>'; 
    } 
} 

Des idées?

Répondre

5
  1. Vérifiez vos autorisations de dossier "images", faites-le 0777 (accessible en écriture pour tout le monde), par exemple.
  2. Modifiez le chemin "images /" vers le chemin absolu du serveur.
+0

Comment le définir sur 0777? Le dossier images a également été téléchargé sur l'hébergement. Je ne suis pas sûr comment changer les images/au chemin absolu de serveur? Désolé si cela semble stupide, je suis vraiment nouveau à ce sujet. –

+0

votre programme ftp devrait avoir une fonction quelque part qui vous permet de définir les autorisations 0777 – bumperbox

+0

merci, cela a fonctionné. –

1

La permission refusée est généralement causée par les autorisations de fichiers avec votre hôte. Fondamentalement, vous n'avez pas d'autorisations d'écriture sur le dossier dans lequel vous essayez de déplacer le fichier. Vous devrez peut-être parler à votre fournisseur d'hébergement ou essayer de télécharger vers un dossier différent.

Questions connexes