Aller au contenu

Help sur Formulaire avec redirection


annuwair

Sujets conseillés

Bonjour et merci d'avance pour votre aide,

J'ai une page qui commence par un formulaire, sur ce formulaire il y a 3 menus déroulant qui permettent une redirection vers différentes pages du site.

J'ai trouvé le script suivant qui me permet de faire une redirection :

Le formulaire :

<FORM method="POST" action="redirect.php">
<select NAME="Liste">
<option selected="selected" value="">-Sélectionnez votre destination-</option>
<option value="bleu">Bleu</option>
<option value="blanc">Blanc</option>
<option value="rouge">Rouge</option>
</select>
<input type="submit" name="envoi" value="envoyer" />
</FORM>

La page de redirection redirect.php:

<?php switch($_POST['ListeCouleur']){
case "bleu":
header("Location: [url="http://www.bleu.com");"]http://www.bleu.com");[/url]
break;
case "blanc":
header("Location: [url="http://www.blanc.com");"]http://www.blanc.com");[/url]
break;
case "rouge":
header("Location: [url="http://www.rouge.com");"]http://www.rouge.com");[/url]
break;
default:
header("Location: abc.htm");
}
?>

Mon problème est de savoir comment écrire ma page redirect.php si j'ai plusieurs menu déroulant ?

EXEMPLE : Mon formulaire contient 2 menus déroulants ListeCouleur et ListeNombre:

<FORM method="POST" action="redirect.php">
<select NAME="ListeCouleur">
<option selected="selected" value="">-Sélectionnez votre destination-</option>
<option value="bleu">Bleu</option>
<option value="blanc">Blanc</option>
<option value="rouge">Rouge</option>
</select>
<select NAME="ListeNombre">
<option selected="selected" value="">-Sélectionnez votre destination-</option>
<option value="un">un</option>
<option value="deux">deux</option>
<option value="trois">trois</option>
</select>
<input type="submit" name="envoi" value="envoyer" />
</FORM>

J'AI ESSAYE DE FAIRE CECI ? Mais çà ne fonctionne pas parfaitment, alors je viens vous demander votre aide, merci :-)

<?php switch($_POST['ListeCouleur']){
case "bleu":
header("Location: [url="http://www.bleu.com");"]http://www.bleu.com");[/url]
break;
case "blanc":
header("Location: [url="http://www.blanc.com");"]http://www.blanc.com");[/url]
break;
case "rouge":
header("Location: [url="http://www.rouge.com");"]http://www.rouge.com");[/url]
break;
default:
header("Location: abc.htm");
}

switch($_POST['ListeNombre']){
case "un":
header("Location: [url="http://www.un.com");"]http://www.un.com");[/url]
break;
case "deux":
header("Location: [url="http://www.deux.com");"]http://www.deux.com");[/url]
break;
case "trois":
header("Location: [url="http://www.trois.com");"]http://www.trois.com");[/url]
break;
}
?>

Merci :)

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

Il est normal que cela ne fonctionne pas parce que le code contenu dans ton second switch ne sera jamais exécuté. Il ne sert donc à rien vu que la redirection se fera toujours avant lui.

Le tout est de savoir ce que tu veux faire avec le second menu: changer les redirections ou donner un argument aux redirections "bleu","blanc" ou "rouge"".

Tu pourrais par exemple dans ce dernier cas, remplacer:

header("Location: http://www.bleu.com");

par

header("Location: http://www.bleu.com&nombre=".$_POST['ListeNombre']);

qui enverra à la page de redirection le nombre sélectionné.

Dan

Lien vers le commentaire
Partager sur d’autres sites

En fait c'est pour faire une redirection supplémentaire, par exemple si on selctionne le nombre 1 + la couleur bleu, çà envoi vers une page précise.

Je pense écrire quelque chose comme çà, pourriez vus m'aider à l'écrire correctement please ?

if ($_POST['ListeCouleur']!='bleu' and $_POST['ListeNombre']!='deux')
{
switch($_POST['ListeNombre']){
case "deux":
header("Location: http://www.deux.com");
break;
}
}

Thanks, :)

Modifié par annuwair
Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...