Il y a quelque chose qui me dépasse, je veux faire quelque chose de vraiment basique.
Formulaire :
<form name="envoyer" action="" method="post" enctype="multipart/form-data" target="_self" onsubmit="" >
<fieldset>
<legend>Fichier</legend>
<input type="hidden" name="MAX_FILE_SIZE" value="<?php print( return_bytes() ); ?>" />
<input name="fichier" type="file" /> Taille max du fichier <?php print( ini_get('upload_max_filesize') ); ?>o
<input name="soumis" type="hidden" value="1" />
<input name="go" type="submit" value="Envoyer" />
</fieldset>
</form>
Rien de formidableN.B. : L'erreur ne provient pas de la fonction return_bytes() me renvoit bien 2097152 o pour un unpload_max_filesize à 2M qui correspnd au php.ini
+
PHP
<?php var_dump($_FILES); ?php>
facile...+
UPLOAD
J'envoie un fichier de plus de 2097152 o donc plus grand que le upload_max_filesize du php.ini
=
Réponse attendue le tableau $_FILES['fichier']['error'] = 1, Valeur : 1. Le fichier téléchargé excède la taille de upload_max_filesize, configurée dans le php.ini, dixit la doc or Au lieu de cela j'ai dans le dump du tableau
array(0) { }
J'ai vérifié les requetes http POST avec firebug, rien de flagrant. Ma question est : ou est passée mon tableau $_FILES, ne devrait il pas être non null dans ce cas ?MAJ :
J'ai vérifié également apache_error.log :
J'ai trouvé qq chose d'intéressant.
Code : Tout sélectionner
[error] [client 127.0.0.1] PHP Warning: POST Content-Length of 7327048 bytes exceeds the limit of 2097152 bytes in Unknown on line 0, referer: http://localhost/class.upload/index.php5
Comment faire pour l'intercepter ?
Ça avance mais à petit pas...