PHP Warning: move_uploaded_file
Je suis en train de monter un script tout bête d'upload d'avatar sur mon site et j'ai cet affreux message d'erreur :
[27-Mar-2010 20:08:17] PHP Warning: move_uploaded_file(avatar/) [<a href='function.move-uploaded-file'>function.move-uploaded-file</a>]: failed to open stream: Is a directory in /home/estoriai/public_html/profil.php on line 238
[27-Mar-2010 20:08:17] PHP Warning: move_uploaded_file() [<a href='function.move-uploaded-file'>function.move-uploaded-file</a>]: Unable to move '/tmp/phpdAROB6' to 'avatar/' in /home/estoriai/public_html/profil.php on line 238
Quelqu'un pourrait-il m'aider à en trouver l'origine ? Voici mon code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
|
<?php
if (isset($_FILES['avatar']))
{
// Vérifier les éventuelles erreurs
if ($_FILES['avatar']['error'] == 0)
{
// Vérifier la taille du fichier
if ($_FILES['avatar']['size'] <= 10240)
{
// Vérifier l'extension du fichier
if ($_FILES['avatar']['type'] != 'image/png' && $_FILES['avatar']['type'] != 'image/jpeg' && $_FILES['avatar']['type'] != 'image/jpg' && $_FILES['avatar']['type'] != 'image/gif')
{
echo 'Votre avatar doit être au format jpeg, jpg, gif ou png.';
}
else
{
// Vérifier les dimensions de l'image
$maxwidth = 100; // En pixel
$maxheight = 100;
$image_sizes = getimagesize($_FILES['avatar']['tmp_name']);
if ($image_sizes[0] <= $maxwidth AND $image_sizes[1] <= $maxheight)
{
// On définit l'extention du fichier puis on le nomme par le timestamp actuel
if ($_FILES['avatar']['type'] == 'image/jpeg') { $extention = '.jpeg'; }
if ($_FILES['avatar']['type'] == 'image/jpg') { $extention = '.jpg'; }
if ($_FILES['avatar']['type'] == 'image/png') { $extention = '.png'; }
if ($_FILES['avatar']['type'] == 'image/gif') { $extention = '.gif'; }
$nom_avatar = time().$extention;
$repertoire = 'avatar/';
if (move_uploaded_file($_FILES['avatar']['tmp_name'], $repertoire.$nom_avatar))
{
echo 'Image uploaded !';
}
else
{
echo 'L\'image n\'a pas pu être uploadée sur le serveur.';
}
}
else
{
echo '<p>Les dimensions de votre image ne sont pas correctes (taille maximale : 100*100).</p>';
}
}
}
else
{
echo '<p>Votre avatar est trop lourd (poids maximum : 10ko).</p>';
}
}
else
{
echo '<p>Une erreur est survenue lors de l\'enregistrement de votre avatar.</p>';
}
}
?> |