Zend Framework :Envoi d une variable de la vue vers le controlle
victoria ghabri
Messages postés
95
Date d'inscription
Statut
Membre
Dernière intervention
-
victoria ghabri Messages postés 95 Date d'inscription Statut Membre Dernière intervention -
victoria ghabri Messages postés 95 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Comment je peut envoyer une variable de ma vue vers le controlleur ,je veu l utiliser dans le controlleur "properties" ,dans l action "tasktodo".
*******************************
vue : envoi de la variable : BB (que je ne connait pas comment )
*******************************
function popup1(message) {
var answer = confirm ("You are in the good address ");
if (answer)
{window.location = "<?php echo $this->url(array('controller'=>'properties', "action" => "tasktodo","Address" => $property->Address ), null, true);?>";
}
else
alert ("Sorry bad address ");
}
********************************
Contolleur : reception de BB
*********************************
$var = $this->_request->getParam('BB');
Comment je peut envoyer une variable de ma vue vers le controlleur ,je veu l utiliser dans le controlleur "properties" ,dans l action "tasktodo".
*******************************
vue : envoi de la variable : BB (que je ne connait pas comment )
*******************************
function popup1(message) {
var answer = confirm ("You are in the good address ");
if (answer)
{window.location = "<?php echo $this->url(array('controller'=>'properties', "action" => "tasktodo","Address" => $property->Address ), null, true);?>";
}
else
alert ("Sorry bad address ");
}
********************************
Contolleur : reception de BB
*********************************
$var = $this->_request->getParam('BB');
A voir également:
- Zend Framework :Envoi d une variable de la vue vers le controlle
- Net framework 2.0 - Télécharger - Divers Utilitaires
- Net framework 4.0 - Télécharger - Divers Utilitaires
- Zend studio - Télécharger - Divers Web & Internet
- Telecharger net framework 3.5 (inclut .net 2.0 et 3.0) windows 10 offline - Forum Windows 8 / 8.1
- .Net framework 4.8.1 n'est pas pris en charge sur ce système d'exploitation. - Forum Framework .NET
2 réponses
depuis la vue tu peux appeler ce type de méthode par exemple :
$this->action('action', 'controller', 'module');
Rappelle toi par contre que la vue ne doit pas faire office de controller et que l'on doit garder une architecture MVC !
L'appelle d'un autre controller ou méthode depuis une vue cela peut être différent que de vouloir passer une variable depuis la vue à un controller.
En tous les cas si c'est pour un appelle d'un controller et méthode différente depuis une vue différente alors la méthode action de la vue est là bonne méthode
$this->action('action', 'controller', 'module');
Rappelle toi par contre que la vue ne doit pas faire office de controller et que l'on doit garder une architecture MVC !
L'appelle d'un autre controller ou méthode depuis une vue cela peut être différent que de vouloir passer une variable depuis la vue à un controller.
En tous les cas si c'est pour un appelle d'un controller et méthode différente depuis une vue différente alors la méthode action de la vue est là bonne méthode
Bonjour
J ai fait quelques rectifications :
Mais j ai un noveua probleme ,j ai utilise ajax pour envoyer une variable ,la fonction success marche bien ,cad que la variable a ete bien envoye au controller ,mais je n arrive pas a recuperer cette variable au niveau du controller .Voila un petit apercus sur le code :
Au niveau de la vue :
*********************************
$.ajax({
type: "POST",
url: "<?php echo $this->url(array('controller' => 'properties', "action" => "tasktodo")); ?>",
// url: "C:/wamp/www/pm-sys-03/application/controllers/PropertiesController.php",
// data: "variable1=" + somevar1 + "\variable2="+ somevar2,
data: somevar1 ,
success: function(msg)
{ alert("bbbbb");
alert(somevar1);
window.location = "<?php echo $this->url(array('controller'=>'properties', "action" => "tasktodo","Address" => $property->Address), null, true);?>";
}
});
//}
//else
//alert ("Sorry bad address ");
}
**************************************
Au niveau du controller
*********************
public function tasktodoAction()
{
// page title
$this->view->page_heading = "Tasks To Do ";
//get the address field from the previous view
$adr = $this->_request->getParam('Address');
//send the address field to the next view: tasktodo
$this->view->address=$adr;
$count=0;
$this->view->nb=$count;
if($this->getRequest()->isPost())
{ echo "nnnnnn";
if (isset($_POST['variable1']))
{
$this->getRequest()->isPost();
$value=$_POST['variable1'];
}
}
$k=$this->_request->getParam('somevar1');
//echo "55555555".$k ."7777777777777";
$loc=new Application_Model_DbTable_Location();
//$loc->insert(array( "address" => $_POST['variable1']));
//insertion dans la base de donnes
}
J ai fait quelques rectifications :
Mais j ai un noveua probleme ,j ai utilise ajax pour envoyer une variable ,la fonction success marche bien ,cad que la variable a ete bien envoye au controller ,mais je n arrive pas a recuperer cette variable au niveau du controller .Voila un petit apercus sur le code :
Au niveau de la vue :
*********************************
$.ajax({
type: "POST",
url: "<?php echo $this->url(array('controller' => 'properties', "action" => "tasktodo")); ?>",
// url: "C:/wamp/www/pm-sys-03/application/controllers/PropertiesController.php",
// data: "variable1=" + somevar1 + "\variable2="+ somevar2,
data: somevar1 ,
success: function(msg)
{ alert("bbbbb");
alert(somevar1);
window.location = "<?php echo $this->url(array('controller'=>'properties', "action" => "tasktodo","Address" => $property->Address), null, true);?>";
}
});
//}
//else
//alert ("Sorry bad address ");
}
**************************************
Au niveau du controller
*********************
public function tasktodoAction()
{
// page title
$this->view->page_heading = "Tasks To Do ";
//get the address field from the previous view
$adr = $this->_request->getParam('Address');
//send the address field to the next view: tasktodo
$this->view->address=$adr;
$count=0;
$this->view->nb=$count;
if($this->getRequest()->isPost())
{ echo "nnnnnn";
if (isset($_POST['variable1']))
{
$this->getRequest()->isPost();
$value=$_POST['variable1'];
}
}
$k=$this->_request->getParam('somevar1');
//echo "55555555".$k ."7777777777777";
$loc=new Application_Model_DbTable_Location();
//$loc->insert(array( "address" => $_POST['variable1']));
//insertion dans la base de donnes
}