Bonjour à vous tous en ce jour de pâques ensoleillé,
Je souhaite poursuivre mon premier devoir de PHP mais je bute sur un problème de syntaxe que je n'arrive pas à résoudre même en révisant mes cours.
Je dois réaliser une application de covoiturage où les internautes devront passer par un formulaire de contact pour la mise en relation avec des conducteurs pour des voyages. L'internaute doit choisir une ville de départ, à partir d'une liste définie, et en fonction de son choix différents itinéraires lui seront proposés.
Voici ma structure HTML :
Voici le résultat à l'écran :
Et voici le script PHP :
Dans mes cours, il n'est pas fait mention d'un exemple de codage avec une liste <select> et <option>, seulement avec des boutons radio. Je pense que l'erreur vient de la condition ($_POST['ville'] == $_POST['paris']) où je cherche à tester que si le choix de l'internaute est Paris alors la boucle foreach lui renvoi les valeurs des clefs 0, 3 et 4 sinon elle demande de choisir une ville.
Merci à vous pour votre aide.
Modifié par ObiJuanKenobi (18 Apr 2022 - 07:25)
Je souhaite poursuivre mon premier devoir de PHP mais je bute sur un problème de syntaxe que je n'arrive pas à résoudre même en révisant mes cours.
Je dois réaliser une application de covoiturage où les internautes devront passer par un formulaire de contact pour la mise en relation avec des conducteurs pour des voyages. L'internaute doit choisir une ville de départ, à partir d'une liste définie, et en fonction de son choix différents itinéraires lui seront proposés.
Voici ma structure HTML :
<!doctype html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<title>Devoir 1, développer en PHP</title>
</head>
<body>
<form action="traitement" method="post">
<label>Nom : </label>
<input type="text" name="nom">
<br>
<label>Prénom : </label>
<input type="text" name="prenom">
<br>
<label>E-mail :</label>
<input type="email" name="email">
<br>
<label>Téléphone : </label>
<input type="texte" name="telephone">
<br>
<select name="ville">
<option>--Ville de départ --</option>
<option value="paris" name="paris">Paris</option>
<option value="orleans" name="orleans">Orléans</option>
<option value="dublin" name="dublin">Dublin</option>
<option value="nice" name="nice">Nice</option>
<option value="tours" name="tours">Tours</option>
</select>
<br>
<input type="submit" name="validation">
</form>
</body>
</html>
Voici le résultat à l'écran :
Et voici le script PHP :
$voyages = array(
['id' => 0, 'depart' => 'Paris', 'destination' => 'Nantes', 'heure_depart' => '11:00', 'heure_arrivee' => '12:34', 'conducteur' => 'Thomas'],
['id' => 1, 'depart' => 'Orléans', 'destination' => 'Nantes', 'heure_depart' => '05:15', 'heure_arrivee' => '09:32', 'conducteur' => 'Mathieu'],
['id' => 2, 'depart' => 'Dublin', 'destination' => 'Tours', 'heure_depart' => '07:23', 'heure_arrivee' => '08:50', 'conducteur' => 'Nathanaël'],
['id' => 3, 'depart' => 'Paris', 'destination' => 'Orléans', 'heure_depart' => '03:00', 'heure_arrivee' => '05:26', 'conducteur' => 'Clément'],
['id' => 4, 'depart' => 'Paris', 'destination' => 'Nice', 'heure_depart' => '10:00', 'heure_arrivee' => '12:09', 'conducteur' => 'Audrey'],
['id' => 5, 'depart' => 'Nice', 'destination' => 'Nantes', 'heure_depart' => '10:40', 'heure_arrivee' => '13:00', 'conducteur' => 'Pollux'],
['id' => 6, 'depart' => 'Nice', 'destination' => 'Tours', 'heure_depart' => '11:00', 'heure_arrivee' => '16:10', 'conducteur' => 'Edouard'],
['id' => 7, 'depart' => 'Tours', 'destination' => 'Amboise', 'heure_depart' => '16:00', 'heure_arrivee' => '18:40', 'conducteur' => 'Priscilla'],
['id' => 8, 'depart' => 'Nice', 'destination' => 'Nantes', 'heure_depart' => '12:00', 'heure_arrivee' => '16:00', 'conducteur' => 'Charlotte'],
);
if($_POST['ville'] == $_POST['paris']){
echo 'Voyages possibles si ville de départ = ' . $_POST['paris'];
foreach($voyages as $valeur){
echo $_POST[0] . '<br>';
echo $_POST[3] . '<br>';
echo $_POST[4] . '<br>';
}
}else{
echo 'Choisissez une ville de départ';
}
Dans mes cours, il n'est pas fait mention d'un exemple de codage avec une liste <select> et <option>, seulement avec des boutons radio. Je pense que l'erreur vient de la condition ($_POST['ville'] == $_POST['paris']) où je cherche à tester que si le choix de l'internaute est Paris alors la boucle foreach lui renvoi les valeurs des clefs 0, 3 et 4 sinon elle demande de choisir une ville.
Merci à vous pour votre aide.
Modifié par ObiJuanKenobi (18 Apr 2022 - 07:25)