|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : février 2007 Messages : 11 ![]() |
Salutations.
Pardonnez cette question digne d'une débutante, mais je ne trouve pas de solution à mon souci. J'ai suivi le didacticiel 'Débuter avec Zend Framework 1.10' sans souci et j'ai approfondi mes connaissances via divers mini-projet test. Je rencontre aujourd'hui un souci que je n'arrive pas à résoudre. Dans un formulaire qui fonctionnait j'ai ajouter une multicheckbox. Le formulaire pour ajouter ou modifier une entrée s'affiche correctement, mais si je le valide j'obtiens une page blanche. Je n'ai pas réussi à afficher la requête généré par Application_Model_DbTable_Utlisateurs. J'ai testé la méthode fourni dans la FAQ 'Comment récupérer les erreurs retournées par la base de données ?' mais cela ne me retourne rien. Je n'ai pas réussi à trouver comment sont stocker les valeurs retournées par une multicheckbox en base avec Zend. Cela me retourne bien un tableau avec les valeurs cochés, mais ensuite ? Désolée si ma question semble décousue, mais ayant du mal à appréhender le problème j'ai aussi du mal à l'exprimer. Si je retire ma case à cocher du formulaire et la variable associé dans le model_dbtable associé tout fonctionne bien. Merci. |
|
|
00
|
|
|
#2 |
![]() ![]() |
Il faudrait que tu nous montres le code de ton formulaire, de ton contrôleur et de ton modèle pour qu'on puisse t'aider.
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
|
00
|
|
|
#3 | ||||||
|
Invité de passage
![]() Inscription : février 2007 Messages : 11 ![]() |
Bonjour
bien sur tout à fait, où avais-je la tête. Voici le code que je test et que je n'arrive pas à faire fonctionner : Code :
Code :
Code :
merci. |
||||||
|
|
00
|
|
|
#4 |
![]() ![]() |
Dans ton modèle, il manque la définition de la table ; on ne sait pas à quelle table de la BDD fait référence cette classe.
La fonction de ce modèle s'appelle ajouterCheckbox mais dans ton contrôleur tu appelles la fonction ajouterAlbum qui vient du tuto. Je crois n'avoir jamais utilisé de multi-checkbox et ça fait un moment que je n'ai plus touché à Zend Framework alors je ne suis pas sûr de ce qui suit mais il me semble que, puisque l'utilisateur peut choisir plusieurs options dans la multi-checkbox, le résultat récupéré est un array et je crains que ta fonction ajoutercheckbox ne fonctionne qu'avec une valeur unique. Zend Framework est un peu déroutant au début mais ensuite c'est vrai qu'on peut développer assez rapidement des programmes qui tiennent la route. Bon courage !
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
|
00
|
|
|
#5 |
![]() ![]() Loïc Développeur Web Inscription : février 2011 Messages : 678 ![]() |
Je confirme ce que dit CinePhil, un checkbox multiple à le même fonctionnement qu'un select multiple.
Du coup tu récupèrera un tableau correspondant au name de ton checkbox |
|
|
00
|
|
|
#6 | ||
|
Invité de passage
![]() Inscription : février 2007 Messages : 11 ![]() |
Oops bien vu pour le ajouterAlbum, j'ai recoder rapidement un formulaire contenant juste la checkbox pour tester avant de poster.
Cependant j'ai toujours un An error occurred // Application error sur la récupération du formulaire après correction. J'ai créé une table checkbox pour tester les retours comme suit (c'est à la rache mais c'était pour tester le type de retour) Code :
merci à tantôt Maosalia. |
||
|
|
00
|
|
|
#7 |
![]() ![]() Loïc Développeur Web Inscription : février 2011 Messages : 678 ![]() |
Où récupére tu ton formulaire car moi je ne vois rien dans ton code dans ton controller qui permet de récupérer ton formulaire, car chaque action est vide
|
|
|
00
|
|
|
#8 | |||
|
Invité de passage
![]() Inscription : février 2007 Messages : 11 ![]() |
Citation:
Dans l'action ajouter : Code :
|
|||
|
|
00
|
|
|
#9 |
![]() ![]() Loïc Développeur Web Inscription : février 2011 Messages : 678 ![]() |
Je t invite à ajouter ZFDebug à ton application car là c est dur de voir ton erreur
|
|
|
00
|
|
|
#10 | ||||
|
Invité de passage
![]() Inscription : février 2007 Messages : 11 ![]() |
Bonjour,
merci beaucoup pour ZF Debug que je ne connaissais pas et grâce à qui tout est rentré dans l'ordre. en fait, l'erreur était ailleurs mais révélée par l'ajout des checkbox dans le formulaire... par contre il me sauvegarde le résultat de la multi checkbox en Array dans la base, et j'ai une erreur du type : Notice: Array to string conversion in C:\php\includes\Zend\Db\Statement\Pdo.php on line 228 Je vais enquêter là dessus. merci encore pour votre aide et votre patience ![]() ___edit___ J'ai corrigé le souci du array to string en ajoutant dans les fonctions ajouter et modifier du Application_Model_DbTable : Code :
Code :
$form->populate($referents->obtenirReferent($id)); Code :
|
||||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com