Formulaire upload fichier

Fermé
LynX - 6 juil. 2008 à 15:43
 LynX - 6 juil. 2008 à 19:01
Bonjour,
J'ai rencontré un probleme avec mon formulaire d'upload, il fonctionnait avant pourtant... je ne comprends pas.
Je vous mets tout afin que vous puissiez tester vous meme.

mon message d'erreur: Warning: move_uploaded_file(/tmp/phpqwVL8b) [function.move-uploaded-file]: failed to open stream: Permission denied in /web/sites/vhbu3/1/141/96465/public/www/upload/upload.php on line 24

Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/phpqwVL8b' to 'upload/don.png' in /web/sites/vhbu3/1/141/96465/public/www/upload/upload.php on line 24
Echec de l'upload !

fichier upload.php
<?php
$dossier = 'upload/';
$fichier = basename($_FILES['avatar']['name']);
$taille_maxi = 100000;
$taille = filesize($_FILES['avatar']['tmp_name']);
$extensions = array('.png', '.gif', '.jpg', '.jpeg');
$extension = strrchr($_FILES['avatar']['name'], '.');
//Début des vérifications de sécurité...
if(!in_array($extension, $extensions)) //Si l'extension n'est pas dans le tableau
{
$erreur = 'Vous devez uploader un fichier de type png, gif, jpg, jpeg, txt ou doc...';
}
if($taille>$taille_maxi)
{
$erreur = 'Le fichier est trop gros...';
}
if(!isset($erreur)) //S'il n'y a pas d'erreur, on upload
{
//On formate le nom du fichier ici...
$fichier = strtr($fichier,
'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ',
'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
$fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier);
if(move_uploaded_file($_FILES['avatar']['tmp_name'], $dossier . $fichier)) //Si la fonction renvoie TRUE, c'est que ça a fonctionné...
{
echo 'Upload effectué avec succès !';
}
else //Sinon (la fonction renvoie FALSE).
{
echo 'Echec de l\'upload !';
}
}
else
{
echo $erreur;
}
?>



fichier html:
<html>
<body>

<form method="POST" action="upload.php" enctype="multipart/form-data">
<!-- On limite le fichier à 100Ko -->
<input type="hidden" name="MAX_FILE_SIZE" value="100000">
Fichier : <input type="file" name="avatar">
<input type="submit" name="envoyer" value="Envoyer le fichier">
</form>


</html>


Merci d'avance.
A voir également:

4 réponses

Je précise que j'ai mis un CHMOD de 755
0
Il fonctionne tres bien en local, et meme en 777 il ne fonctionne pas sur le serveur :s
0
Je vais m'arracher les cheveux, ça doit venir du serveur, je suis hebergé chez Amen, je n'ai jamais eu de problemes pourtant.
0
Pourtant je ne refuse aucune permission.
Warning: move_uploaded_file(/tmp/phpqwVL8b) [function.move-uploaded-file]: failed to open stream: Permission denied in /web/sites/vhbu3/1/141/96465/public/www/upload/upload.php on line 24

Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/phpqwVL8b' to 'upload/don.png' in /web/sites/vhbu3/1/141/96465/public/www/upload/upload.php on line 24




ligne24:

if(move_uploaded_file($_FILES['avatar']['tmp_name'], $dossier . $fichier))

Si ça marche en local et pas sur le serveur alors que j'ai autorisé les access je n'y comprends plus rien, personne pourrait m'aider?
0