Bonjour,
Je me trouve face à un problème insoluble. J'ai eus beau retourner le truc dans tout les sens, je ne vois pas ce qui cloche.
Je voudrai une liste de bouton radio sur plusieurs pages avec un seul choix pour toutes les pages.
Quand je clique sur page suivante ou page précédente tout ce passe bien mais je ne récupère le résultat que sur la première page.
Enfin rien de tel que le code pour voir le problème :
require_once ("HTML/QuickForm.php");
if (!isset($_GET['npage']))$page=1;
else $page=$_GET['npage'];
$lastpage=3;
if($page == $lastpage){
$nextpage=1;
$previouspage=$page-1;
}
elseif ($page == 1) {
$nextpage=$page+1;
$previouspage=$lastpage;
}
else {
$nextpage=$page+1;
$previouspage=$page-1;
}
$designlist = array();
switch ($page) {
case 1:
$designlist[]='template 1/ page 1';
$designlist[]='template 2/ page 1';
$designlist[]='template 3/ page 1';
break;
case 2:
$designlist[]='template 4/ page 2';
$designlist[]='template 5/ page 2';
$designlist[]='template 6/ page 2';
break;
case 3:
$designlist[]='template 7/ page 3';
$designlist[]='template 8/ page 3';
$designlist[]='template 9/ page 3';
break;
}
$form = new HTML_QuickForm('myform', 'post');
if($designlist) foreach ($designlist as $design) {
$radio[] = &$form->createElement('radio', null, null, $design , $design);
}
$form->addGroup($radio, 'template', '','');
$form->addElement('submit', 'create',POST);
$comment .= '';
$comment .= 'previous page ';
$comment .= '';
$comment .= 'next page';
$content_form = $form->toHtml();
$comment.= $content_form;
echo $comment;
if ($form->validate()) {
echo 'valid';
$template = $form->exportValue('template');
var_export($template);
}
Si quelqu'un pouvais avoir la solution, ça me soulagerai beaucoup.
Merci d'avance
# Sessions ?
Posté par Thomas Douillard . Évalué à 2.
Regarde du côté des "sessions" php alors, ou des "champs cachés", parce qu'une requête HTML "post" ça ne trasmet les valeurs que sur la page suivante.
[^] # Re: Sessions ?
Posté par nanodots . Évalué à 1.
Je remarque que le code est pas bien passé. Il y a un lien vers la page courante en passant une variable ?npage=1 2 ou 3.à la place de
$comment .= 'previous page ';
j'avais mis : $comment .= '<a href= test.php?npage='.$previouspage.'">';
qui permet de recharger la page avec d'autres entrées pour mon formulaire
Selon la valeur du numéro de page que je récupère avec le $page=$_GET['npage']
je crée un tableau qui contient 3 choix possible pour la page 1 :
template 1/ page 1
template 2/ page 1
ou template 3/ page 1
Si je récupère npage=2 je veux afficher 3 autres choix:
template 1/ page 2
template 2/ page 2
ou template 3/ page 2
etc.
Le but étant de pouvoir choisir parmi une multitude de choix répartit en plusieurs pages.
Je cherche donc ici à créer avec 3 boutons radio différents sur chacune des trois pages et j'aimerai savoir quelle case est cochée sur les 9 proposées.
Si je met les 9 choix sur la première page, tout fonctionne bien même si on fait un choix sur la deuxième page.
Par contre, dans le cas présent ça fonctionne bien uniquement si on fait un choix sur la première page.
Si on clique sur le lien qui mène à une autre page, on ne récupère pas valeur donnée par la case radio sauf si on revient sur la première page en cliquant sur suivant à partir de la dernière page.
Merci
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.