Page 1 sur 1
boutons radios / page php
Posté : 12 avr. 2005, 20:29
par Justone
Bonjour,
J'ai écris une page avec 3 boutons radios et un bouton envoyer.
Je voudrais que lorsque l'utilisateur choisi :
le premier bouton et clic sur le bouton ca ouvre une page1.php
le second bouton et clic : page2.php
le troisieme bouton et cilc : page3.php
Comment je dois m'y prendre??
Merci pour votre aide...
Posté : 12 avr. 2005, 21:24
par ouckileou
suggestion :
faire une page intermédiaire sur laquelle va pointer ton formulaire, et qui suivant la valeur transmise va rediriger sur la page voulue
Posté : 12 avr. 2005, 22:32
par zoul
Autre possibilité:
Ajouter une propriété onclick() sur chacun de tes boutons radio qui fera un truc du genre:
Code : Tout sélectionner
onclick ="document.forms['nomformulaire'].action = page1.php"
Posté : 12 avr. 2005, 22:48
par ouckileou
comme d'hab', précisons que ça ne marchera que si le Javascript est activé sur le navigateur

Posté : 12 avr. 2005, 23:20
par Gentoo Warrior
Sinon en php :
<?php
if(isset($_POST['radiobutton']))
{
include $_POST['radiobutton'].".php";
}else{
?>
<form name="form1" method="post" action="<?php $PHP_SELF ?>">
<input type="radio" name="radiobutton" value="page1" checked>
Page 1<br>
<input type="radio" name="radiobutton" value="page2">
Page 2<br>
<input type="radio" name="radiobutton" value="page3">
Page 3<br>
<input type="submit" name="Submit" value="Envoyer">
</form>
<?php } ?>
Posté : 12 avr. 2005, 23:33
par albat
Bien vu,
Gentoo Warrior !

Mais ne serait-ce pas plutôt
<?php
if (isset($_POST['radiobutton']))
{ $newpage=$_POST['radiobutton'].".php";
header(Location:$newpage);
}
else
{
?>
<form name="form1" method="post" action="<?php $PHP_SELF ?>">
<input type="radio" name="radiobutton" value="page1" checked="checked" />Page 1<br />
<input type="radio" name="radiobutton" value="page2" />Page 2<br />
<input type="radio" name="radiobutton" value="page3" />Page 3<br />
<input type="submit" name="Submit" value="Envoyer" />
</form>
<?php
}
?>
Posté : 12 avr. 2005, 23:55
par Gentoo Warrior
Normalement oui.
Mais la commande header ne veut jamais fonctionner avec moi, du moins avec mon site.
Mais je crois que ça dépend aussi un peu de la structure de son site.
Sur le mien ça ne fonctionne pas car je passe tout par une page index.
Style : index.php?page=page_a_afficher
et le header fonctionne pas… et c’est logique si on se base sur cet excellent article :
http://www.phpfrance.com/tutoriaux/inde ... edirection
(Un peu de pub pour un bon site en français. Vous connaissez ?)

Posté : 13 avr. 2005, 00:03
par albat
Tu as tout à fait raison,
d'autant que ce script contenant le header doit impérativement être placé
- rappelons-le again and again and again - tout au début de la page,
avant même la balise <html> !
Posté : 13 avr. 2005, 09:23
par Justone
Merci a tous.
Ca marche impec'... :lol: