Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 10-03-2013 14:35:09

samspitz
Nouveau membre
Date d'inscription: 16-05-2010
Messages: 7

Zend_Json enregistrement en base de donnée

Bonjour à tous,

  Je rencontre quelques soucis avec Zend_Json pour enregistrer mes données en base de donnée après un onChange sur un formulaire sans bouton submit.
  Je m'explique, je souhaite mettre en place des formulaire via Zend_Form sans bouton submit, à chaque valeur entrer ou modifier, j'enregistre les nouvelle valeurs en base de donnée via JSON. (je n'y arrive pas.)

exemple de formulaire

Code:

<form id="toto" method="POST" action="index">           
                 <td class="center"><input id="id" style="width:20px; size="10" type="text" name="id" value="<?php echo $test->id ?>"/></td>
                 <td class="center"><input id="name" class="input" name="name" value="<?php echo $name->name; ?>"onChange="test()" /></td>
                </form>

exemple jquery

Code:

function test(dataAjax)
{
   $.ajax({
        type: 'POST',
        url: '../index/index',
       data: dataAjax,
        dataType: "json",
        success : function(response)
        {
        //que faire pour enregistrer les valeurs, ou est-ce le controller ?
        
        }
    })
}

exemple de controller :

Code:

public function indexAction()
    {
       $model = new Default_Model_DbTable_Save();
       $form = new Default_Form_Form();
     
      if (!$form->isValid($_POST)) 
       {
        $this->view->values = $form->getValues();
        $this->view->getHelper('formError')->setMessages($form->getMessages());
       }
       //debut recuereration json         
           if($this->_request->isXmlHttprequest())
        {
            $this->_helper->layout->disableLayout();
            $this->_helper->viewRenderer->setNoRender(true);
            $this->_helper->viewRenderer->setNeverRender(true);
            
            $params = $this->_request->getParams();
            
            if($form->isValid($_POST))
            {
                echo 'toto';
               $id = $form->getValue('id'); 
               $name = $form->getValue('name'); 
               if($this->getRequest()->isPost())
               {
                   if($form->isValid($this->getRequest()->getPost()))
                   {
                       
                   }
               }
               
               if($model->edit($idMarque,$nameMarque)=== FALSE)
               {
                   throw new Exception('problem');
               }
               
              
            } 
            $this->_helper->json($modelMarque,
                                    array(
                                        'enableJsonExprFinder' => true
                                        ));
             
//comment faire pour enregistrer en base de donnée, je suis vraiment bloqué
            
            
        }

Merci d'avance de votre aide

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