Submitted by oracle on
bonjour, j' ai écri un module (mon prémier) qui affiche comme block un formulaire.Le module s'appelle monformulaire. le nom de la fonction qui définit le formulaire est:
function monformulaire_nameform(){}
en principe ce nom est considéré comme le id du block.
la fonction de validation ce défini comme suit:
function monformulaire_validate($form_id,$form_values){
$valid_email = valid_email_address($form_values['adres_mail']);
if (!$valid_email) {
form_set_error('adres_mail', t('The e-mail address you supplied is not valid.'));
}
}
mais quand on saisi une adresse invalide cette fonction ne fait aucun controle(donc pas de validation).
alors j'ai ajouté ce code dans la definition de mon formulaire càd dans la fonction
monformulaire_nameform()
:
$form['#validate']=array(
'formulaire_validate' =>array($param)
);
mais toujours aucun controle.comment résoudre ce problème?La fontion submit ne pose pas de problème et pourtant elle a la meme signature que la fonction validate.voici la signature de la fonction submit:
function monformulaire_nameform_submit($form,$form_values){
}
merci d'avance.
Es tu sur que ton code est
Permalien Soumis par zmove le 25 Juillet, 2008 - 08:21
Es tu sur que ton code est bien executé ? en faisant des print dedans et en regardant si tu vois qqch.
Sinon, tu peux regarder au niveau du poids de ton module, dans la table system de la BDD. Met un poid à ton module supérieur à celui qui contient le formulaire pour lequel tu veux ajouter une validation, ca m'a déjà posé problème.