Page 1 sur 1

quickform zip upload

Posté : 15 mai 2007, 12:20
par Invité
Bonjour,
j'essaye d'uploader un fichier zip avec quickform:
$form->addElement('file', 'fichier', 'Fichier:');
$form->addRule('fichier', 'Le fichier choisi est trop gros', 'maxfilesize', 15000000);
$form->addRule('fichier', 'Vous devez choisir un fichier texte ou zip', 'mimetype', array('text/plain', 'application/zip', 'multipart/x-zip', 'multipart/x-gzip') );
Mes fichiers texte passent, mais pas les zip. Je reçois le message de validation: 'Vous devez choisir un fichier texte ou zip'

Voyez vous ce qui ne va pas?

Posté : 15 mai 2007, 13:01
par Invité
il n'y a que quand j'efface cette ligne que mon fihcier passe
$form->addRule('fichier', 'Vous devez choisir un fichier texte ou zip', 'mimetype', array('text/plain', 'application/zip', 'multipart/x-zip', 'multipart/x-gzip') );

Posté : 15 mai 2007, 13:20
par lem
Elle fait quoi ta méthode "addRule" ?

Posté : 15 mai 2007, 13:31
par Invité
La 2 méthode addrul obligent:
1- a choisir un fichier d'une taille max de 15000000 octets
2- a choisir un fichier txt ou zip

J'ai trouvé d'ou vient le pb:
J'ai initialisé mon form comme ceci
$form = new HTML_QuickForm('formImportFichier', 'post', $_SERVER['REQUEST_URI']);
et je lance une fonction à la validation comme ceci :
if ($form->validate()) 
{
	$form->process('recProd_AU', false);		
}
else 
{	
	$form->display();
}
'recProd_AU' est une fonction qui recoit et traite mon fichier.
Avec $_SERVER['REQUEST_URI'], la validation se fait sur la même page et le fichier zip ne passe pas. si je fais la validation sur une autre page en mettant par exemple validation.php à la place de $_SERVER['REQUEST_URI'], ça marche car la validation du fichier zip est sur une autre page.

Ce problème ne se présente pas pour les autres champs.
Je ne sais pas si vous me suivez...