récupérer des valeur de type "radio" sur une autre page

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : récupérer des valeur de type "radio" sur une autre page

Re: récupérer des valeur de type "radio" sur une autre page

par Invité » 04 juil. 2012, 21:47

C'est bon j'ai enfin réussi !
Le problème n'était pas du au formulaire mais juste au contenu à l'intérieur du input type "radio".
Je mets la solution si ça peut aider des personnes...
<input type="radio" name="trombinoscope" <?php if($donnees['trombinoscope']=='oui') {echo "checked"; }?>  />
<input type="radio" name="trombinoscope"  <?php if($donnees['trombinoscope']=='non') {echo "checked"; }?> />
Et encore merci de m'avoir aidé.

Re: récupérer des valeur de type "radio" sur une autre page

par Mazarini » 04 juil. 2012, 18:49

Copie le source de ton formulaire dans le validateur w3c (http://validator.w3.org/#validate_by_input)

Re: récupérer des valeur de type "radio" sur une autre page

par Invité » 04 juil. 2012, 18:36

J'ai essayé en mettant votre test et rien ne se passe. Je dois avoir un pb au niveau du formulaire mais je ne vois vmt pas lequel, car ce même formulaire a très bien fonctionner pour ajouter des éléments ds ma base de données.
En tout cas merci de m'avoir aidé

Re: récupérer des valeur de type "radio" sur une autre page

par Thaandor » 04 juil. 2012, 18:19

1/ L'option sensée être sélectionnée, l'est-elle bien avec le code fourni ?

2/ Le problème est-il toujours présent en utilisant le HTML "en dur" ? (L'option "Oui" sera toujours sélectionné pour le test)
<label id="ok">Oui </label>
<input type="radio" name="trombinoscope" for="ok" value="oui" selected />

<label id="nok">Non </label>
<input type="radio" name="trombinoscope" value="non" />
3/ Si ça ne passe pas avec le test 2/, c'est qu'il y a aussi un problème dans la validation du formulaire.

Re: récupérer des valeur de type "radio" sur une autre page

par Invité » 04 juil. 2012, 17:31

Ca me parait très bien mais malheureusement, ça ne fonctionne pas ...

J'ai aussi essayé de faire avec un if comme ceci :
...value="<?php if($donnees['trombinoscope']=='oui' ) {echo "cheked=\"cheked\"";}  ?> />
Mais ça ne fonctionne toujours pas ...

Re: récupérer des valeur de type "radio" sur une autre page

par Thaandor » 04 juil. 2012, 17:06

Les variables testées sont des chaines, donc...
<?php echo $donnees['trombinoscope']=='oui' ? 'selected':'' ?>
...il ne faut pas oublier les guillemets.

Re: récupérer des valeur de type "radio" sur une autre page

par Invité » 04 juil. 2012, 16:45

Merci, pour la réponse. J'ai bien modifié mon code suite à votre conseil mais malheureusement cela ne fonctionne pas.
Cependant, ce problème doit s'expliquer du fait que je n'ai pas paramétré dans ma base de données mes champs en forme "booléen" mais en 'Varchar" avec une taille de 3 pouvant indiquer si la réponse est oui ou non. De ce fait "trombinoscope ne contient pas 1 ou 0...
J'ai alors modifié :
<label id="ok">Oui </label>
<input type="radio" name="trombinoscope" for="ok" value="<?php echo $donnees['trombinoscope']; ?>" <?php echo $donnees['trombinoscope']==oui ? 'selected':'' ?> />

<label id="nok">Non </label>
<input type="radio" name="trombinoscope" value="<?php echo $donnees['trombinoscope']; ?>" <?php echo $donnees['trombinoscope']==non ? 'selected':'' ?> />
Malheureusement ça ne fonctionne toujours pas.

Re: récupérer des valeur de type "radio" sur une autre page

par Thaandor » 04 juil. 2012, 16:26

Les <input type="radio"/> retourne la valeur de l'option sélectionnée.

En partant du principe que $donnees['trombinoscope'] contient 1 ou 0, il faudrait faire quelque chose comme ça:
<label id="ok">Oui </label>
<input type="radio" name="trombinoscope" for="ok" value="<?php echo $donnees['trombinoscope']; ?>" <?php echo $donnees['trombinoscope']==1 ? 'selected':'' ?> />

<label id="nok">Non </label>
<input type="radio" name="trombinoscope" value="<?php echo $donnees['trombinoscope']; ?>" <?php echo $donnees['trombinoscope']==0 ? 'selected':'' ?> />

récupérer des valeur de type "radio" sur une autre page

par debutant » 04 juil. 2012, 15:26

Bonjour,

J'ai un souci pour récupérer des valeurs de types "radio" dans une autre page afin de pouvoir les modifier.

Voici mon fichier "liste.php" listant tous mes formulaire dans un tableau
// On récupère tout le contenu de la table formulaire
$reponse = $bdd->query('SELECT * FROM formulaire');

// On affiche chaque entrée une à une
while ($donnees = $reponse->fetch())
{
?>
					
							<tr>
								<td><?php echo stripslashes($donnees['nom']);?></td>
								<td><?php echo $donnees['prenom']; ?></td>
								<td><?php echo $donnees['matricule']; ?></td>
								<td><?php echo $donnees['trombinoscope']; ?></td>
								<td><?php echo $donnees['intranet']; ?></td>
								<td><?php echo $donnees['journaux']; ?></td>
                                <td><?php echo $donnees['expositions_internes']; ?></td>
								<td><?php echo $donnees['brochures_commerciales']; ?></td>
								<td><?php echo $donnees['brochures_publicitaires']; ?></td>
								<td><?php echo $donnees['internet']; ?></td>
								<td><?php echo $donnees['video']; ?></td>
								
                                <td>
   
									<a href="edit.php?id=<?php echo $donnees['id']?>" class="btn small primary">Modifier</a>
								</td>
								<td>
									<a href="remove.php?id=<?php echo $donnees['id']?>" class="btn small danger">Supprimer</a>
								</td>
							</tr>
							<?php
}
Et lorsqu'on appuie sur le bouton "Modifier" nous nous redirigeons vers le fichier "edit.php"
Afin de récupérer mes valeurs j'ai fait ceci :

// recupere l'id du formulaire en question
<?php
							if(isset($_GET['id'])) {
									
					$formulaire=$_GET['id'];
					$reponse = $bdd->prepare('SELECT * FROM formulaire WHERE formulaire.id=:formulaire');
					$reponse->execute(array(
						'formulaire' => $formulaire
					));
					while($donnees=$reponse->fetch()) {
						
					?>
					
                 
										<form method="post" action="edit.php?id=<?php echo $formulaire ?>" enctype="multipart/form-data">
						<div class="clearfix">
							<label>Nom</label>
							<div class="input">
								<input type="text" name="nom" value="<?php echo stripslashes($donnees['nom']) ?>" />
							</div>
                         </div>
                         
                         <div class="clearfix">
                            <label>Prénom</label>
							<div class="input">
								<input type="text" name="prenom" value="<?php echo stripslashes($donnees['prenom']) ?>" />
							</div>
                         </div>
                         
                         <div class="clearfix">
                            <label>Matricule</label>
							<div class="input">
								<input type="text" name="matricule" value="<?php echo stripslashes($donnees['matricule']) ?>" />
							</div>
                         </div>
                         
                        
                         
                         <div class="clearfix">
                            <label>Trombinoscope</label>
							<div class="input">
                             <label>
                            Oui
								<input type="radio" name="trombinoscope" value="<?php echo $donnees['trombinoscope']; ?>" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                            Non 
								<input type="radio" name="trombinoscope" value="<?php echo $donnees['trombinoscope']; ?>" />
                            </label>
							</div>
                         </div>
Malheureusement, le type="radio" name="trombinoscope" de renvoie aucune valeur, en revanche cela fonctionne très bien pour les type "text" ...
Je ne sais pas quoi faire...
D'avance je vous remercie.