Test avant chargement de fichier | Titre du sujet : Test avant chargement de fichier par garrath sur 25/06/2007 19:58:00
Sur les chargements de fichiers si vous utilisez protector, et cela avec n'importe quel module, protector interdit les noms contenants plusieurs '.' C un principe de securite assez basique (cela evite les extensions bizarre, les .. a la suite etc...)
Le hic, c'est que protector ne retourne pas de message d'erreur ni rien d'autre lorsqu'il rencontre ce pb. Cela nous donne un belle page blanche.
J'aurais pu herite de la classe formfile mais bon ca me faisait pas mal de retouche a faire, donc j'ai modifie la classe formfile de base en y rajoutant une methode
function renderValidationJS() {
$name = $this->getName();
$js = "assertion = myform.{$name}.value;n" ;
$js .= "resultat = assertion.match(/b.b/g);n";
$js .= "if(resultat) { n";
$js .= "tif ( resultat.length > 1 ) {n" .
"ttmyform.{$name}.focus();nttwindow.alert( 'Le champ $name est invalide. Un nom de fichier ne doit pas contenir plusieurs "." ' );nttreturn false;nt}n}";
return $js;
}
Bon le message d'alerte peut etre mis en define etc... mais bon ca me suffisait amplement la
En gros maintenant lorsque j'utilise sur n'importe quel module xoopsformfile, il y aura une verification de faite en javascript sur le fait que le nom de fichier possede plusieurs ., s'il en a plusieurs, il envoi un petit message d'erreur a l'utilisateur.
|
|