par
cyrilleb » 09 sept. 2020, 19:10
Bonjour j'ai un formulaire qui
upload un fichier csv
J'ai un test sur ce fichier pour vérifier qu'il corresponde bien au critère souhaité : type et taille
Pour le type j'ai ce tableau
Code : Tout sélectionner
$allowed = array("csv" => "text/csv");
$filename = $_FILES["formFichier"]["name"];
$filetype = $_FILES["formFichier"]["type"];
$filesize = $_FILES["formFichier"]["size"];
Et le test
J'utilise que Linux. ça passe nickel.
Par contre, les gens qui ont des windows m'ont rapporté que ça ne passait pas. J'ai récupéré un PC windows pour voir (c'était IE d'installé) et j'ai rajouté dans mon $allowed les entrées suivantes
Code : Tout sélectionner
$allowed = array("csv" => "text/csv", "csv1" => "text/plain", "csv2" => "application/vnd.ms-excel", "csv3" => "text/x-csv" );
ça passe nickel. Mais je n'avais pas testé sous Firefox (ce n'était pas mon PC et il n'était pas installé). Et donc sous firefox (windows) ça plante.
Je n'avais pas envisagé que le type MIME allait être aussi compliqué à gerer en fonction du SE et du client .
Je recherche donc l'entrée qu'il faudrait pour que ça passe avec tous les clients Unix (linux, freebsd) et windows.
Si vous aviez des idées, je suis preneur
D'avance merci
(PS le script tourne via nginx sur serveur yunohost debian 9, php-fpm 7.0)