Bonjour
J'utilise un script d'upload que j'ai trouvé sur le net et qui marche
très bien sur d'autre site néanmoins la bizarement le fichier uploadé
n'existe pas, je ne pense pas que cela vienne du script d'upload mais
dans le doute le voici :
// DEBUT DE L'UPLOAD DE L'IMAGE...
$width_max = 50; // Largeur max de l'image en pixels
$height_max = 50; // Hauteur max de l'image en pixels
$nom=$_FILES['fichier']['name'];
$extensions_ok = array("jpg","gif","jpeg",'png');
$extension = substr($nom,-3); // Récupération de l'extension
$infos_img = getimagesize($_FILES['fichier']['tmp_name']); // taille de l'image
// infos du fichier :
echo '<pre>';
print_r($_FILES);
echo'</pre>';
// test de toutes les erreurs :
if ($_FILES['fichier']['error']) {
switch ($_FILES['nom_du_fichier']['error']){
case
1: // UPLOAD_ERR_INI_SIZE
echo"Le
fichier dépasse la limite autorisée par le serveur (fichier php.ini)
!";
break;
case
2: // UPLOAD_ERR_FORM_SIZE
echo
"Le fichier dépasse la limite autorisée dans le formulaire HTML !";
break;
case
3: // UPLOAD_ERR_PARTIAL
echo
"L'envoi du fichier a été interrompu pendant le transfert !";
break;
case
4: // UPLOAD_ERR_NO_FILE
echo
"Le fichier que vous avez envoyé a une taille nulle !";
break;
};
} else if(!in_array(strtolower($extension),$extensions_ok)) {
echo
'<b>Le fichier n\'est pas d\'un format valide.</b>';
} else if(($infos_img[0] > $width_max) || ($infos_img[1] > $height_max)) {
echo
'Le fichier est trop grand en hauteur / en largeur / en poid';
} else {
$chemin_destination = '../images/persos/';
move_uploaded_file($_FILES['fichier']['tmp_name'],
$chemin_destination.$_FILES['fichier']['name']);
// FIN DE L'UPLOAD DE L'IMAGE
|
Il a troujours marché mais la il ne veut pas, le champ fichier est correct et du bon nom je pense :
<input name="fichier" type="file">
|
et mon formulaire porte bien le
'enctype="multipart/form-data"', je suis bien en "post", je suis chez free
mais au final, j'ai un message d'erreur généré par le script comme quoi
l'image n'est pas d'un format valide et franchement je ne voit pas d'ou
cela vient... J'ai bien essayé de tester le script sur une autre page avec le code suivant :
<?php
// DEBUT DE L'UPLOAD DE L'IMAGE...
$width_max = 50; // Largeur max de l'image en pixels
$height_max = 50; // Hauteur max de l'image en pixels
$nom=$_FILES['fichier']['name'];
$extensions_ok = array("jpg","gif","jpeg",'png');
$extension = substr($nom,-3); // Récupération de l'extension
$infos_img = getimagesize($_FILES['fichier']['tmp_name']); // taille de l'image
// infos du fichier :
echo '<pre>';
print_r($_FILES);
echo'</pre>';
// test de toutes les erreurs :
if ($_FILES['fichier']['error']) {
switch ($_FILES['fichier']['error']){
case 1: // UPLOAD_ERR_INI_SIZE
echo"Le fichier dépasse la limite autorisée par le serveur (fichier
php.ini) !";
break;
case 2: // UPLOAD_ERR_FORM_SIZE
echo "Le fichier dépasse la limite autorisée dans le formulaire HTML !";
break;
case 3: // UPLOAD_ERR_PARTIAL
echo "L'envoi du fichier a été interrompu pendant le transfert !";
break;
case 4: // UPLOAD_ERR_NO_FILE
echo "Le fichier que vous avez envoyé a une taille nulle !";
break;
};
} else if(!in_array(strtolower($extension),$extensions_ok)) {
echo '<b>Le fichier n\'est pas d\'un format
valide.</b>';
} else if(($infos_img[0] > $width_max) || ($infos_img[1] > $height_max)) {
echo 'Le fichier est trop grand en hauteur / en largeur / en poid';
} else {
$chemin_destination = '../';
move_uploaded_file($_FILES['fichier']['tmp_name'],
$chemin_destination.$_FILES['fichier']['name']);
// FIN DE L'UPLOAD DE L'IMAGE
};
?>
<form method="post" enctype="multipart/form-data" action="<?php echo $PHP_SELF; ?>">
<input type="file" name="fichier">
<input type="submit" value="Click!">
</form>
En testant, le fichier uploadé n'est plus vide mais il me retourne cette fois ce message d'erreur :
Warning: move_uploaded_file(): Unable to access ../laugh.gif in /var/www/free.fr/3/b/hxh.believe/test.php on line 36
Quelqu'un peut m'aider parce que la je commence à deprimer

ca marche pas et ca m'enerve