MVC : transmettre des variables d'une vue vers un modèle
Mon routeur commence par extraire une liste de billets à l'aide d'une méthode du modèle ; cette liste est transmise à une vue pour que l'utilisateur puisse en sélectionner un à supprimer et ensuite je voudrais retransmettre cette info au modèle afin qu'une autre méthode puisse supprimer le billet. Mais problème : comment transmettre cette donnée au modèle ?
Voici mon code actuel :
dans le routeur :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| if($_GET['action'] == 'delBillet') {
$liste_billets=$this->ctrldelBillet->delete_Billet();//extraction de la liste des billets par une méthode du modèle (appelée par une méthode du contrôleur)
$vuedelBillet=new Vue("delBillet");
$vuedelBillet->generer(array('liste_billets'=>$liste_billets));//on passe la liste à la vue
var_dump($_POST); //n'affiche rien :-(
if (isset($_POST["delBillet"])) {
$delBillet = $this->getParametre($_POST, 'delBillet');
echo "billet à effacer :".$delBillet;
}
} |
vuedelBillet.php (qui sera exécuté grâce à la méthode generer...) :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
<?php
if (!isset($_POST["delBillet"])) {
?>
<form method="post" action="index.php?action=delBillet">
<select name="delBillet">
<?php
foreach($liste_billets as $liste_billets2){?>
<option value="<?php echo $liste_billets2['BIL_TITRE'];?>"><?php echo $liste_billets2['BIL_TITRE']; ?> </option>
<?php } ?>
</select>
<br/><br/>
<input type="submit" value="Supprimer un billet" />
</form>
<?php } ?> |
EDIT: petite précision : la méthode générer de la classe Vue va permettre d'exécuter la vue delBillet (nom passé en paramètre au constructeur de la classe Vue) et la variable $liste_billets lui est transmise (ligne 5 du routeur).