Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
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
<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
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 :
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