Outils pour utilisateurs

Outils du site


web:php:file-upload

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
web:php:file-upload [le 18/08/2015 à 12:07] Yoskoweb:php:file-upload [le 18/08/2015 à 12:49] (Version actuelle) Yosko
Ligne 1: Ligne 1:
 ====== Upload de fichier en PHP ====== ====== Upload de fichier en PHP ======
 +
 +Notes :
 +  * Liste à pucesi la taille du fichier envoyé dépasse ''upload_max_filesize'', la variable ''$_FILES'' contiendra, entre autres choses, l'erreur rencontrée. Tandis que si le formulaire complet (y compris le fichier) dépasse la configuration ''post_max_size'', le formulaire ne sera pas transmis à PHP. Cela veut dire que ''$_POST'' et ''$_FILES'' seront vides. Pour détecter ce dernier cas, une solution peut être, [[http://stackoverflow.com/a/9908619/863323|comme évoqué ici]], de vérifier que ''$_POST'' est vide, mais que ''$_SERVER['CONTENT_LENGTH']'' a une valeur supérieure à 0.
 +  * http://php.net/manual/en/features.file-upload.errors.php
  
 Quelques fonctions utilitaires liées à l'envoi de fichier via un formulaire avec ''%%<input type="file">%%''. Quelques fonctions utilitaires liées à l'envoi de fichier via un formulaire avec ''%%<input type="file">%%''.
 +
 <code php> <code php>
 public static function getFileUploadMaxSize() { public static function getFileUploadMaxSize() {
Ligne 21: Ligne 26:
     $unit = mb_strtolower(mb_substr($string, -1));     $unit = mb_strtolower(mb_substr($string, -1));
  
-    $bytes = (int)round($size * pow(1024, strpos('bkmgtpezy', $unit)))+    return (int)round($size * pow(1024, strpos('bkmgtpezy', $unit)));
- +
-    return $bytes;+
 } }
  
Ligne 34: Ligne 37:
     }     }
  
-    $string = sprintf('%s%s', round($value, 2)$units[$unit_rank])+    return round($value, 2).$units[$unit_rank]);
- +
-    return $string;+
 } }
 </code> </code>
web/php/file-upload.1439899664.txt.gz · Dernière modification : le 18/08/2015 à 12:07 de Yosko