Bonjour,
je ne sais pas si tu as résolu ton problème mais je voudrais juste te dire que cette succession de if/else imbriqués est une véritable horreur à suivre, surtout si tu rajoutes des champs dans ton formulaire.
De plus fonctionellement parlant ça n'est vraiment pas top parce que si l'utilisateur a oublié de renseigner 3 champs, par exemple, il aura 1 première alerte pour le premier champ, il fait la correction puis une deuxième alerte pour le deuxième champ etc etc, alors qu'il serait plus judicieux de fournir à l'utilisateur en une seule fois la liste de tous les champs qui posent problème.
Ce que je te propose comme solution c'est de vérifier tous les champs et en fin de traitement de renvoyer une seule alerte indiquant quels sont les champs qui posent problème
function verifForm(formulaire)
{
erreurMsg = "Erreur : les champs suivants sont vides\n"; // on initialise la chaine du message d'erreur
erreur = false; // on part du principe qu'il n'y a pas d'erreur
if(document.formulaire.nom.value == "") {
erreur = true; // il y a donc une erreur
erreurMsg += "Nom\n"; // \n équivaut à un saut de ligne (tu verras pourquoi après)
}
// là pas besoin de else, car ça n'a rien à voir avec la condition ci dessus
if(document.formulaire.sujet.value) == "") {
erreur = true;
erreurMsg += "Sujet\n";
}
if(document.formulaire.texte.value == "") {
erreur = true;
erreurMsg += "Texte";
}
// etc etc pour les autres champs, j'ai un peu la flemme de tout retaper ;)
// et maintenant on regarde si un ou plusieur champs est en erreur
if(erreur == true) {
alert(erreurMsg);
return false;
}
else { return true; }
}
Et voilà, une seule alerte pour tous les champs en erreur.
Bon celà dit, vérifier la validité des données d'un formulaire du coté client c'est bien mais ça n'est pas suffisant. C'est un peu comme si tu allais en boite et qu'il y avait un contrôle de sécurité à l'entrée du parking (non fermé) et personne à la porte de la boite... n'importe qui peut rentrer en fait. Il faut surtout valider les données du coté serveur parce que rien n'empêche de poster directement les données sur l'url de destination du formulaire. La première rêgle en terme de développement informatique, et c'est encore plus vrai sur le web, c'est qu'il ne faut
jamais jamais jamais jamais jamais faire confiance aux données fournies par les utilisateurs.
Autre chose : si ce n'est déjà le cas, développe sous firefox et installe firebug, ça te permettra de voir ce qu'il y a comme erreur... il est possible que ton fichier n'ait pas été correctement transféré sur ton hébergement.
HTH