blesso Posted July 8, 2015 Share Posted July 8, 2015 Bonjour à toutes et à tous. Je viens vers vous au sujet d'un problème que je rencontre actuellement pour créer des "cases à cocher" dans le formulaire de modification de la fiche client. Je souhaite ajouter un champs "participation aux expos" avec deux choix possibles. Ceux-ci devront être stocké sur mysql. J'ai créé deux Pour reprendre l'historique de mes modifications : - J'ai overridé le fichier Customer.php pour y ajouter ce code : /** @var string Expo 1 */ public $expo1; /** @var string Expo 2 */ public $expo2; ainsi que ce code dans "public static $definition" : 'expo1' => array('type' => self::TYPE_STRING, 'validate' => 'isGenericName'), 'expo2' => array('type' => self::TYPE_STRING, 'validate' => 'isGenericName'), Ensuite, j'override AdminCustomersController.php et j'y ajoute : $this->fields_form['input'][] = array( 'type' => 'checkbox', 'name' => 'expo1', 'values' => array( 'query' => array( array( 'id_option' => 'NOM EXPO 1', 'name' => 'NOM EXPO 1' ) ), 'id' => 'id_option', 'name' => 'name' ) ); $this->fields_form['input'][] = array( 'type' => 'checkbox', 'name' => 'expo2', 'values' => array( 'query' => array( array( 'id_option' => 'NOM EXPO 2', 'name' => 'NOM EXPO 2' ) ), 'id' => 'id_option', 'name' => 'name' ) ); J'ai aussi ajouté dans $this->tpl_view_vars 'expo1' => $customer->expo1, 'expo2' => $customer->expo2, Pour la partie mysql, j'ai créé mes deux champs via la commande : ALTER TABLE `ps_customer` ADD `expo1` VARCHAR(64) ADD `expo2` VARCHAR(64) Pour faire apparaître les champs à la page d'inscription, j'ai aussi modifié les fichiers AuthController.php et authentification.tpl mais je ne pense pas qu'ils soient liés à ce problème. Lors de l'inscription, les cases cochés sont bien mises à jour dans mysql. Je ne rencontre pas de message d'erreur lors du chargement de la page mais lorsque je coche l'une des cases, ou les deux, il n'y a pas de mise à jour sur mysql. Et lorsque je reviens sur la modification de la fiche, logiquement les cases sont décochées. Les infos de mon serveur/install : Version de PrestaShop 1.6.0.9 Version de MySQL 5.6.24-2+deb.sury.org~vivid+2 Version de PHP 5.6.4-4ubuntu6.2 Merci d'avance pour vos réponses. Link to comment Share on other sites More sharing options...
blesso Posted July 20, 2015 Author Share Posted July 20, 2015 Un petit up pour m'aider svp. Merci ! Link to comment Share on other sites More sharing options...
blesso Posted August 24, 2015 Author Share Posted August 24, 2015 up ?... Link to comment Share on other sites More sharing options...
Regaton Posted May 26, 2016 Share Posted May 26, 2016 Bonjour, As-tu la solution à ton pb ? Merci de la partager si tu l'as... Link to comment Share on other sites More sharing options...
fbenoist.com Posted May 26, 2016 Share Posted May 26, 2016 Bonjour, Je pense avoir trouvé le problème. "...J'ai aussi ajouté dans $this->tpl_view_vars..." Il faut ajouté dans $this->fields_value Link to comment Share on other sites More sharing options...
Regaton Posted May 27, 2016 Share Posted May 27, 2016 (edited) Bon au final je n'ai pas fait comme ça. En fait je voulais mettre une case à cocher obligatoire du type "j'accepte les condition d'utilisation et les CGV....". Pour faire cela, j'ai juste rajouté un champ dans le formulaire si la case n'est pas cochée alors une erreur. Si c'est coché alors pas de message d'erreur et donc presta enregistre les infos normalement. Pas besoin de le rajouter en base ni quoi que se soit. Juste une modif dans le tpl et dans AuthController pour tester la valeur. Edited May 27, 2016 by Regaton (see edit history) Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now