Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 19-01-2011 16:30:02

trinic
Nouveau membre
Date d'inscription: 19-01-2011
Messages: 1

[zendX & form] validation de formulaire et update.

Bonjour à tous,
Je bloque sur un petit probleme depuis quelques heures (jours ?)
J'ai cherché à droite à gauche ainsi que sur le forum mais je ne trouve pas de solution.

Mon problème:

Je load un formulaire via un a appel grace a ajaxLink.

Jusque là tout va bien.

Il arrive a préremplir le formulaire et me l'afficher au bon endroit.

C'est au moment de la validation qu'il ne se passe rien. Il recharge la page mais ne fais pas l'update dans la base.

Mon controller :
________________________________________________________________

public function edittxtAction(){
        $params = $this->getRequest()->getParams();
        $name = (string) $params['n'];
        $mapperLinkosaur = new Application_Model_LinkosaurMapper();
        $id = $mapperLinkosaur ->findIdByName($name);

        $request = $this->getRequest();
        $form = new Application_Form_EditTxt();
           
        $txt = $mapperLinkosaur->findTxtById($id);

        if($this->getRequest()->isPost()) {
            if(    $form->isValid($request->getPost())) {
           
            $txt = $form->getValue('txt');

        $data =  array('txt' => $txt);
        $form->setDefaults($data);

                $mapperLinkosaur->getDbTable()->update($data, array('id= ?' => $id));
               
                //$this->view->form = null;
                $this->view->txt = $txt;
        }}else{
       
                $data =  array('txt' => $txt);
                $form->setDefaults($data);
                $this->view->form = $form;
        }
    }

________________________________________________________________

Mon appel:
________________________________________________________________

    <?php
                    echo $this->ajaxLink('[ edit ]',
                    $this->url(array('controller'=>'linkosaur', 'action'=>'edittxt', 'n'=>$this->linkosaur->getName())),
                    array(
                    'method'=>'get',
                    'update'=>'aside #edit',
             
                    'id' => 'txt',
                    'title' => 'customize your message',
                    /*'complete' => "$('#mynest').css('display' , 'block')",*/
                    ));
                ?>

________________________________________________________________


Mon form:

________________________________________________________________

class Application_Form_EditTxt extends Zend_Form
{
    public function init()
    {
    $this->setMethod('post');
      $this->addElement('textarea', 'txt', array(
            )
        );
   
        // Un bouton d'envoi
        $this->addElement('submit', 'submit', array(
            'ignore'   => true,
            'label'    => 'ok',
            'value' =>'ok',

    }
______________________________________________________________


Je tiens a signaler  que sans appel par ajaxlink() tous fonctionne.

merci d'avance

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages