2010-08-27 13 views
0

Ok, donc j'ai essayé d'utiliser la forme zend, mais ce que j'essaie d'accomplir est beaucoup trop pour moi de gérer la forme de zend. Je vais essayer de le décrire en quelques lignes peut-être que vous avez une solution pour moi sinon vous comprendrez pourquoi j'ai choisi d'utiliser un formulaire dans un fichier de vue.zend obtenir les variables postées de la forme statique à partir du fichier de vue

J'ai un formulaire pour rechercher des produits dans une base de données. La recherche est effectuée en utilisant la saisie semi-automatique (faite sur mesure). Lorsque l'utilisateur appuie sur "Ajouter un produit à la liste", le produit est ajouté à un div dans le formulaire, créant ainsi l'impression d'une liste. Je veux soumettre ceci (les entrées nouvellement ajoutées dans le formulaire) au contrôleur et traiter le formulaire. Je ne sais pas comment faire, ou ce n'est pas possible, je n'ai pas encore la moindre idée, mais la forme de zend m'a donné tellement de maux de tête que je suis très proche d'arrêter de l'utiliser.

J'ai donc conçu une forme statique, dans mon fichier de vue. J'ai mes trucs jquery là-bas, j'ajoute des données (champs de saisie cachés et cases à cocher) et je veux poster sur mon contrôleur. La question est comment puis-je obtenir le tableau $ _POST dans mon contrôleur?

+0

Ce que vous faites n'est pas une pratique recommandée. Voir cette bande de roulement pour voir pourquoi: http://stackoverflow.com/questions/3248134/zend-form-when-should-be-form-created-in-view-and-not-in-controller/3248884 – takeshin

Répondre

0

Je vais essayer de vous répondre aussi bien que je peux donner à quel point votre question est vague.

Si vous avez un formulaire HTML sur votre page Web tout ce que vous devez faire est de définir son action à votre contrôleur:

action="mycontroller/myaction" 

Et dans le cas où ce ne est pas:

method="post" 

Et dans votre contrôleur en fait cela fonctionne:

$_POST['param_name'] 

mais la façon dont Zend serait dans l'action de votre contrôleur:

if ($this->_request->isPost()) { 
    $data = $this->_request->getPost(); 
    Zend_Debug::dump($data); 
} 

Espérons que cette aide. Si vous avez besoin de plus de détails, éditez votre question pour la rendre plus claire.

Peu importe si le formulaire a été créé avec Zend_Form ou à la main, ce code fonctionnera malgré tout.