bonjour,
j'ai un petit soucis, j'ai créé un code qui me permet d'uploader des fichier en HTTP.
voici mon fichier html :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
<form name="form" method="post" action="upload.php" enctype="multipart/form-data">
   <!-- Taille maximale en octets. Non sécurisé car facilement contournable !! -->
   <input type="hidden" name="MAX_FILE_SIZE" value="10000000" />
   Veuillez s&eacute;lectionner un fichier &agrave; uploader:
   <input type="file" name="aFile" />
   <input type="submit" name="submitFile" value="Envoyer le fichier" />
</form>
voici mon fichier php :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
<?php
 
  /**
   * function formatFileName
   * @access public
   * @param string - nom de fichier à formater
   * @param int - longueur maximale autorisée pour le nom de fichier
   * @return string - nom de fichier formaté
   * @desc Tronque éventuellement le nom de fichier, le convertit en minuscules et
   *           y élimine les caractères potentiellement dangereux.
   */         
 
   function formatFileName($aFileName, $aMaxLength = 50) 
   {
     $aFileName = strToLower(subStr($aFileName, 0, $aMaxLength));
     $aFileName = ereg_replace('[^a-zA-Z0-9,._\+\()\-]', '_', $aFileName);
     return $aFileName;
   } // end of function formatFileName() /2
 
   /* PARAMETRES DE CONFIGURATION DU SCRIPT
    */
 
   // chemin d'accès au répertoire d'upload (vers où le fichier uploadé temporaire sera transféré)
   // ce répertoire doit EXISTER et être ACCESSIBLE EN ECRITURE !!
   $destination_dir = './up/';
   // taille maximale en octets du fichier à uploader
   $file_max_size = 100;
   // extensions de fichiers autorisées
   $authorized_extensions = array('jpg','gif','jpeg','bmp','doc','docx','xls','xslx','pdf','zip','rar','jar','ppt','pptx','pps','ppsx','exe','msi');
   /* TRAITEMENT PRINCIPAL
    */   
  // vérifie l'existence du répertoire de destination
   if (!is_dir($destination_dir)) 
   {
     echo 'Veuillez indiquer un r&eacute;pertoire destination correct !';
     die(); 
   }
   // vérifie que répertoire de destination a des droits en écriture
   if (!is_writeable($destination_dir)) 
   {
     echo 'Veuillez spécifier des droits en écriture pour le r&eacute;pertoire destination !';
     die();      
   }   
   // réception du formulaire
   if (isSet($_POST['submitFile'])) 
   {
     // vérifie qu'un fichier a bien été soumis
     if (isSet($_FILES) && is_array($_FILES)) 
	 {
       // pas d'erreur lors de l'upload
       if ($_FILES['aFile']['error'] == UPLOAD_ERR_OK) 
	   {
		   // vérifie l'extension du fichier recu
		   // il est aussi possible (et sans doute mieux) de se baser sur $_FILES['aFile']['type']
		   // qui retourne le type MIME correspondant (par exemple: image/pjpeg)         
		   $lastPos = strRChr($_FILES['aFile']['name'], ".");
		   if ($lastPos !== false && in_array(strToLower(subStr($lastPos, 1)), $authorized_extensions)) 
		   {
			 // définit un nom de fichier destination unique à partir du nom du fichier original formaté
			 $destination_file = time().formatFileName($_FILES['aFile']['name']);            
			 // déplace le fichier uploadé du répertoire temporaire
			 // vers les répertoire/fichier destination spécifiés
			 if (move_uploaded_file($_FILES['aFile']['tmp_name'], $destination_dir.DIRECTORY_SEPARATOR.$destination_file)) 
			 {
			   echo 'Fichier valide et upload&eacute; correctement.';   
			 } 
			 else 
			 { // error sur move_uploaded_file
			   echo 'Le fichier n\'a pas &eacute;t&eacute; upload&eacute; correctement !';
			 }
		   } 
		   else 
		   { // pas d'extension ou mauvaise extension
			 echo 'Mauvaise extension !';
		   }      
       }
	   else 
	   { // Erreur lors de l'upload
         switch ($_FILES['aFile']['error']){
           case UPLOAD_ERR_INI_SIZE:
              echo 'Le fichier upload&eacute; d&eacute;passe la valeur sp&eacute;cifi&eacute;e 
                       pour upload_max_filesize dans php.ini.';
              break;
           case UPLOAD_ERR_FORM_SIZE:
              echo 'Le fichier upload&eacute; d&eacute;passe la valeur sp&eacute;cifi&eacute;e
                       pour MAX_FILE_SIZE dans le formulaire d\'upload.';
              break;
           case UPLOAD_ERR_PARTIAL:
              echo 'Le fichier n\'a &eacute;t&eacute que partiellement upload&eacute;.';
              break;                            
           default:
              echo 'Aucun fichier n\'a &eacute;t&eacute upload&eacute;.';
         } // switch
       }   
     }
	 else 
	 { // aucun fichier reçu
       echo 'Pas de fichier recu';
     }
   } // fin de réception de formulaire
?>
Tout cela fonctionne parfaitement, en local.
Dès que je place ce code sur mon serveur, j'accède bien à ma page web, jusque là aucun soucis, en revanche lors que le code php s'exécute, j'ai constamment cette erreur :
Le fichier n'a pas été uploadé correctement !
Je ne comprend pas pourquoi ce code s'exécute très bien en local et par sur mon site.
Merci par avance pour votre aide.