Jump to content

Ajout d'un champ dans le formulaire d'inscription


phinette

Recommended Posts

Bonjour,

j'ai besoin de rajouter un champs dans le formulaire d'inscription.

Pour cela, j'ai créé un module qui affiche ce champ grâce au hook : createAccountForm.

Je souhaite ensuite que la valeur du champ soit enregistré dans une table à part (pour ne pas casser "customer"). J'ai vu qu'il existe le hook : createAccount qui s'active lorsque la création du compte s'est bien déroulée. Donc j'imagine que si j'utilise ce hook pour faire mon enregistrement ça devrait fonctionner.

Par contre, je souhaiterais gérer les erreurs et donc pouvoir invalider une inscription si la valeur de mon champ est incorrecte. Comment faire?

Merci d'avance pour vos explications,
Phinette

Link to comment
Share on other sites

Bonjour,

Que diriez-vous de rajouter une ligne en dur dans authentication.php vers la ligne 50 :$ ?

Après réflexion, vous pouvez en fait vous greffer également sur le HOOK_TOP et contrôler votre champ :

if (Tools::isSubmit('submitAccount'))
{
   if (!Validate::isMonChampPerso(Tools::getValue('champperso')))
       // j'affiche mon erreur / je redirect / je plante
}



Pour résumé c'est faisable mais en trichant un peu... beaucoup et en jouant sur les hooks.
Ca demande un peu de pratique (et beaucoup de détermination pour ne pas céder et rajouter cette petite ligne en dur)

Link to comment
Share on other sites

Si le problème n'est que purement esthétique (-> afficher une jolie gestion d'erreur), il vous suffit de faire cette vérification en javascript.
Cela ne dispense pas bien sûr de la vérification PHP, mais les messages d'erreurs de 99% des gens seront gérés.

Après encore une fois tout est possible, mais il faut se demander si ça en vaut la peine.

Exemple d'idée tordue donc : vérification du champ dans le hook header, si il y a une erreur je redirige vers la création de compte en rajoutant une variable get perso dans l'URL, dans mon hook createformaccount je test cette valeur et affiche un message d'erreur si elle est présente.
Tordu est ici un proche synonyme de "absolument horrible mais ça marche".
Bon courage !

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...