Message d'avertissement

The subscription service is currently unavailable. Please try again later.

la fonction _validate()

Information importante

En raison d'un grand nombre d'inscriptions de spammers sur notre site, polluant sans relache notre forum, nous suspendons la création de compte via le formulaire de "sign up".

Il est néanmoins toujours possible de devenir adhérent•e en faisant la demande sur cette page, rubrique "Inscription" : https://www.drupal.fr/contact


De plus, le forum est désormais "interdit en écriture". Il n'est plus autorisé d'y écrire un sujet/billet/commentaire.

Pour contacter la communauté, merci de rejoindre le slack "drupalfrance".

Si vous voulez contacter le bureau de l'association, utilisez le formulaire disponible ici, ou envoyez-nous un DM sur twitter.

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.

Forum : 

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.