Script PHP ou mes valeurs pourront aller vers la bonne page HTML

[Résolu/Fermé]
Signaler
Messages postés
23
Date d'inscription
samedi 20 janvier 2018
Statut
Membre
Dernière intervention
4 mars 2018
-
Messages postés
23
Date d'inscription
samedi 20 janvier 2018
Statut
Membre
Dernière intervention
4 mars 2018
-
Bonjour, je cherche a me créer un script qui devra utiliser "3 champs" et un bouton "Submit" et dépendemment des valeurs aux 3 champs devra aller a une page en particulier.
exemple:

CHAMP 1 = DES ANIMAUX
CHAMP 2 = DES CHIFFRES
CHAMP 3 = VOITURE

alors le script devra faire en sorte que :

SI CHAMP #1 = CHIEN
et CHAMP #2 = 123
et CHAMP #3= HONDA
+ Appuyer sur bouton submit ira sur PAGE#1 = "chien123honda.html"

ou 

SI CHAMP #1 = CHAT
et CHAMP #2 = 456
et CHAMP #3= TOYOTA
+ Appuyer sur bouton submit ira sur PAGE #2 = "chat456toyota.html"

etc etc



(mes PAGES sont déjà prédéfini avec les bons résultats mais c'est juste de préparer le script en PHP pour aller à la bonne page)
Une bonne aide serait fortement apprécié !!!! ;-) Merci d'avance.

2 réponses

Messages postés
33480
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 septembre 2021
3 720
Bonjour,

Sur quoi bloques tu exactement ? La création du formulaire html ? L'utilisation des variables POST ou GET ? la concaténation de variables en PHP ? La redirection elle même ???

Montres nous ce que tu as commencé à faire.

Sachant que .. pour une redirection en php :
header('location : lapageoualler.php');
exit();


Pour concaténer :
$var1 = "Bonjour ";
$var2 =" Jordane";
$varcomplete = $var1 . $var2 ;
echo $varcomplete ;
 


Pour récupérer des variables en POST
$varTruc = !empty($_POST['name']) ? $_POST['name'] : NULL;



Au passage, je t'invite à lire ceci :https://www.commentcamarche.net/faq/48399-php-gestion-des-erreurs-debogage-et-ecriture-du-code
Messages postés
23
Date d'inscription
samedi 20 janvier 2018
Statut
Membre
Dernière intervention
4 mars 2018

ReBonjours Jordane,

Il y a du progrès dans mon script, mais ce n'est pas encore totalement réglé. J'ai retirer le POST pour le remplacer par un GET, et aussi l'erreur de ligne 6 a été résolu suite a un oublie de ";" a la fin de la ligne 5.
Voici ou je suis actuellement rendu :

<?php 
if(isset($_GET['submit'])){ // this is option 1
 $var1 = "Chien";
 $var2 = "250";
 $var3 = "Honda";
 $option1 = $var1 . $var2 . $var3; 
 header('location: PAGE1.html');
} elseif(isset($_GET['submit'])){  // this is option 2
 $var1 = "Chat";
 $var2 = "500";
 $var3 = "Toyota";
 $option2 = $var1 . $var2 . $var3; 
 header('location: PAGE2.html');
} elseif(isset($_GET['submit'])){ // this is option 3
 $var1 = "Poisson";
 $var2 = "750";
 $var3 = "Mazda";
 $option3 = $var1 . $var2 . $var3; 
 header('location: PAGE3.html');
} else {
 header('location: PAGE10.html');
}
?>


J'arrive a me dirigé à la PAGE1, mais le problème c'est que c'est peu importe quel valeur que je met il me dirige toujours à la même PAGE.
Une aide serait fortement apprécié à partir de la. :-(
Messages postés
33480
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 septembre 2021
3 720
Il me faut le code de ton formulaire
Messages postés
23
Date d'inscription
samedi 20 janvier 2018
Statut
Membre
Dernière intervention
4 mars 2018
>
Messages postés
33480
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 septembre 2021

code actuel du formulaire est celui ci:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
<style type="text/css">
<!--
.style3 {color: #000000}
-->
</style>
</head>

<body>
<form action="test-3-3.php" method="get" name="form1" id="form1">
  <div align="center">
    <p><span class="style3"><strong>ANIMAL? </strong></span>
      <select name="var1" id="var1">
        <option selected="selected">--- Veuillez choisir ---</option>
        <option>Chat</option>
        <option>Chien</option>
        <option>Poisson</option>
      </select>
    </p>
    <p><span class="style3"><strong>QUANTITÉ</strong></span>:
      <select name="var2" id="var2">
        <option selected="selected">--- Veuillez choisir ---</option>
        <option>2</option>
        <option>5</option>
        <option>10</option>
        <option>20</option>
      </select>
</p>
    <p><span class="style3"><strong>AUTO</strong></span>:
      <select name="var3" id="select">
        <option selected="selected">--- Veuillez choisir ---</option>
        <option>Mazda</option>
        <option>Toyota</option>
        <option>Chevrolet</option>
        <option>GMC</option>
        <option>Mercedes</option>
      </select>
</p>
    <p>
      <input name="submit" type="submit" id="submit" value="Envoie" />
    </p>
  </div>
</form>
</body>
</html>


comme tu peux voir le champ animal a (3 valeurs différente) + le champ quantité a (4 valeurs différente) + le auto (5 valeurs différente), ce qui m'amène a un total de 41 possibilité de redirection vers une page. Je ne demande pas a ce que tu me code le tout "si tu le fait tant mieux et c'est fortement apprécié... mais sinon pourrais tu m'aider a au moins faire 3 possibilité différente et je vais pouvoir utilisé ton exemple pour complété le reste moi meme?
Messages postés
33480
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 septembre 2021
3 720
Sachant que pour l'instant tes if sont 3 fois les mêmes...
Et en plus...Tu ne récupères pas les valeurs de tes champs
Messages postés
23
Date d'inscription
samedi 20 janvier 2018
Statut
Membre
Dernière intervention
4 mars 2018

la raison pourquoi j'ai mis 3 IF est que j'ai 3 conditions pour m'amener a 3 pages différente (tout dépendemment des valeur obtenue). Alors comment je peux faire pour que chaque IF m'amene a redirigé chacune a leur page? est-ce possible avec PHP ?
Messages postés
33480
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 septembre 2021
3 720
<?php
//Activation des erreurs PHP
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);


//récupération PROPRE des variables AVANT de les utiliser
$var1 = !empty($_GET['var1']) ? $_GET['var1'] : NULL;
$var2 = !empty($_GET['var2']) ? $_GET['var2'] : NULL;
$var3 = !empty($_GET['var3']) ? $_GET['var3'] : NULL;


//If en fonction des valeurs de ton formulaire
if($var1 == "Chien" && $var2 == "250" && $var3 == "Honda") {
	header('location: PAGE1.html');
	exit();
	
} elseif($var1 == "Chat" && $var2 == "500" && $var3 == "Toyota") {
	header('location: PAGE2.html');
	exit();
} elseif($var1 == "Poisson" && $var2 == "750" && $var3 == "Mazda") {
	header('location: PAGE3.html');
	exit();
} else {
	header('location: PAGE10.html');
	exit();
}
?>


Messages postés
1466
Date d'inscription
mercredi 31 août 2011
Statut
Membre
Dernière intervention
20 mai 2021
136
Je savais pas que ça s'appeler ternaire.
J'ai était ammener a utiliser ces méthode sur de la crypto en bash.

Tu voudrais utiliser du ternaire pour remplacer :
if ( !is_null($animal) && !is_null($quantity) && !is_null($car) )
?

Haha, le site est vieux :) C'est du pur troll ->
http://www.la-rache.com/images.html
http://www.la-rache.com/temoignages.html

Le pauvre "bighawa", j'lui pouri son post :/
Messages postés
23
Date d'inscription
samedi 20 janvier 2018
Statut
Membre
Dernière intervention
4 mars 2018

oh mon Dieu !! C'est exactement ça que je voulais !!! Jordane , UN GROS MERCI !!!!! ça résolu mon problème ...ENFIN !!!!!!!! ;-)

Merci aussi Exileur pour ton aide ;-)
Messages postés
41466
Date d'inscription
mercredi 11 avril 2007
Statut
Modérateur
Dernière intervention
21 septembre 2021
11 832 >
Messages postés
23
Date d'inscription
samedi 20 janvier 2018
Statut
Membre
Dernière intervention
4 mars 2018

Messages postés
23
Date d'inscription
samedi 20 janvier 2018
Statut
Membre
Dernière intervention
4 mars 2018

Rebonjour Jordane,
Tu m’avais tres bien aider pour faire ce script, mais je me demandais une question. Est ce possible d’y ajouter une condition sur php qui priorise un checkbox obligatoire avant les champs?
Exemple 1: si checkbox est coché se fier aux resultats des 3 champs

Sinon...
Exemple 2: si checkbox n’est pas cocher, faire apparaitre une boite avec le message suivant: VEUILLEZ ACCEPTER LES TERMES POUR CONTINUER

Tu comprendras que c’est pour bien sur approuver aux termes du site.
Messages postés
23
Date d'inscription
samedi 20 janvier 2018
Statut
Membre
Dernière intervention
4 mars 2018

Laisse faire jai pu le faire par html et ca regle mon probl hihi