Javascript sur formulaire HMTL
roms75001
Messages postés
395
Date d'inscription
Statut
Membre
Dernière intervention
-
roms75001 Messages postés 395 Date d'inscription Statut Membre Dernière intervention -
roms75001 Messages postés 395 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je suis sur la réalisation d'un site web pour l'achat de billet d'avion.
J'ai crée mon formulaire HTML que voici :
Et voici mon code PHP afin de renvoyer les vols disponibles :
Le problème c'est que rien ne "bloque" les données que l'utilisateur entre.
Par exemple si je choisi une date d'aller et retour inférieur à la date d'aujourd'hui, je vais quand même pouvoir accéder à la deuxième page.
Ou si je choisi un vol qui n'est pas disponible sur ma BDD, j'accéderai quand même à la deuxième page.
Je pense donc que pour remédier à cela, je dois utiliser le Javascript, mais c'est un langage que je ne maitrise pas du tout.
Je cherche donc quelqu'un qui pourrait m'aider
Merci d'avance
Je suis sur la réalisation d'un site web pour l'achat de billet d'avion.
J'ai crée mon formulaire HTML que voici :
<!DOCTYPE html> <html> <head> <title>Choose your flight !</title> <meta charset="utf-8" /> <meta http-equiv="Content-Language" content="fr-fr" /> <link rel="stylesheet" media="screen" type="text/css" href="design.css" /> </head> <body> <?php include("header.php"); ?> <?php include("menu.php"); ?> <!-- Corps --> <div id="div_corps_index"> <!-- Formulaire pour trouver un vol --> <div id="div_formulaire"> <h1 id="titre_form"> TROUVER UN <span class="mots_clés">VOL</span> </h1> <form method="post" action="page2.php"><table id="table_form"> <tr><td class="colonne1"> <label>Aller Retour</label> <input type="radio" checked="checked"> </td> <td class="colonne2"> <label>Aller Simple</label> <input type="radio" onClick="self.location.href='index_simple.php'"> </td></tr> <tr><td class="colonne1"> <label>Départ</label> : <br><input type="text" name="depart" placeholder="Paris" class="input_mot" /> </td> <td class="colonne2"> <label>Arrivée</label> : <br><input type="text" name="arrivee" placeholder="Rome" class="input_mot" /> </td></tr> <tr><td class="colonne1"> <label>Date de départ :</label><br><input type="date" class="input_mot" name="date_depart"/> </td> <td class="colonne2"> <label>Date de retour :</label><br><input type="date" class="input_mot" name="date_retour"/> </td></tr> <tr><td class="colonne1"> <label name="adultes">Adulte(s) :</label> <label name="enfants" id="colonne1_2">Enfant(s) :</label> </td> </tr> <tr><td class="colonne1"> <select name="adultes" class="input_chiffre"> <!-- menu deroulant pour choisir le nombre de voyageurs --> <?php for ($i=1; $i<10; $i++) echo '<option value="'.$i.'">'.$i.'</option>'; ?> </select> <select name="enfants" id="input_chiffre2" class="input_chiffre"> <?php for ($i=0; $i<10; $i++) echo '<option value="'.$i.'">'.$i.'</option>'; ?> </select></td></tr> </table> <input type="submit" value="RECHERCHER UN VOL" name="rechercher" class="rechercher"/> </form></div> <!-- fin de la div "formulaire" --> </div> <!-- fin de la div "corps" --> </body> </html>
Et voici mon code PHP afin de renvoyer les vols disponibles :
<!DOCTYPE html> <html> <head> <title>Choose your flight !</title> <meta charset="utf-8" /> <meta http-equiv="Content-Language" content="fr-fr" /> <link rel="stylesheet" media="screen" type="text/css" href="design.css" /> </head> <body> <?php require_once('connect.php'); ?> <?php include("header.php"); ?> <?php include("menu.php"); ?> <div class="corps"> <?php // On récupèrer les champs if(isset($_POST['depart'])) $depart=$_POST['depart']; else $depart=""; if(isset($_POST['arrivee'])) $arrivee=$_POST['arrivee']; else $arrivee=""; if(isset($_POST['date_depart'])) $date_depart=$_POST['date_depart']; else $date_depart=""; if(isset($_POST['date_retour'])) $date_retour=$_POST['date_retour']; else $date_retour=""; if(isset($_POST['adultes'])) $adultes=$_POST['adultes']; else $adultes=0; if(isset($_POST['enfants'])) $enfants=$_POST['enfants']; else $enfants=0; ?> <div id="div_liste_vols" class="div_corps"> <form name="frm_ajout_reservation" method="POST" action="ajout_reservation.php"> <h1 id="titre_vols">Votre vol <span class="mots_clés">"Aller"</span></h1> <table id="table_vols_aller"> <thead class="t_head_vols"> <td class="ligne_head_vols"> <label>Numéro de vol</label> </td> <td class="ligne_head_vols"> <label>Départ</label> </td> <td class="ligne_head_vols"> <label>Date <br> Heure départ</label> </td> <td class="ligne_head_vols"> <label>Destination</label> </td> <td class="ligne_head_vols"> <label>Heure d'arrivée</label> </td> <td class="ligne_head_vols"> <label>Compagnie</label> </td> <td class="ligne_head_vols"> <label>Prix /p</label> </td> <td class="ligne_head_vols"> <label>Choix du vol "aller"</label> </td> </thead> <?php /* Requete pour déduire le nom de l'aeroport de depart grace au code IATA */ $sql_iata_depart = "SELECT * FROM aeroport WHERE ville = '".$depart."' OR nomAeroport = '".$depart."' OR codeIATA = '".$depart."' "; $result_iata_depart = $bdd_vol->query($sql_iata_depart); while($iata_depart = $result_iata_depart->fetch(PDO::FETCH_ASSOC)) { /* Requete pour déduire le nom de l'aeroport destination grace au code IATA */ $sql_iata_destination = "SELECT * FROM aeroport WHERE ville = '".$arrivee."'"; $result_iata_destination = $bdd_vol->query($sql_iata_destination); while($iata_destination = $result_iata_destination->fetch(PDO::FETCH_ASSOC)) { /* Requete pour trouver les vols aller disponibles selon critères saisis */ $sql_aller = "SELECT * FROM vol WHERE provenance = '".$iata_depart['codeIATA']."' AND destination = '".$iata_destination['codeIATA']."' AND dateDepart = '".$date_depart."'"; $result = $bdd_vol->query($sql_aller); while($row_aller = $result->fetch(PDO::FETCH_ASSOC)) { echo "<tr>"; echo "<td class=\"ligne_paire_vols\">".$row_aller['numeroVol']."</td>"; echo "<td class=\"ligne_paire_vols\">".$depart."</td>"; echo "<td class=\"ligne_paire_vols\">".dateusfr($row_aller['dateDepart'])."<br>".$row_aller['heureDepart']."</td>"; echo "<td class=\"ligne_paire_vols\">".$arrivee."</td>"; echo "<td class=\"ligne_paire_vols\">".dateusfr($row_aller['dateArrivee'])."<br>".$row_aller['heureArrivee']."</td>"; /* Recupère le nom de la compagnie grace à IDavion */ $sql_compagnie = "SELECT * FROM avion WHERE idAvion = '".$row_aller['IDavion']."'"; $result_compagnie = $bdd_vol->query($sql_compagnie); while($compagnie = $result_compagnie->fetch(PDO::FETCH_ASSOC)) { echo"<td class=\"ligne_paire_vols\">".$compagnie['compagnie']."</td>"; } echo "<td class=\"ligne_paire_vols\">".$row_aller['prix']."€</td>"; echo '<td class="ligne_paire_vols"><input type="radio" name="choix_aller" value="'.$row_aller['numeroVol'].'"></td>'; echo"</tr>"; } /* Requete pour trouver les vols retour disponibles selon critères saisis */ $sql_retour = "SELECT * FROM vol WHERE provenance = '".$iata_destination['codeIATA']."' AND destination = '".$iata_depart['codeIATA']."' AND dateDepart = '".$date_retour."'"; $result_retour = $bdd_vol->query($sql_retour); } } ?> </table> <h1 id="titre_vols">Votre vol <span class="mots_clés">"Retour"</span></h1> <table id="table_vols_retour"> <thead class="t_head_vols"> <td class="ligne_head_vols"> <label>Numéro de vol</label> </td> <td class="ligne_head_vols"> <label>Départ</label> </td> <td class="ligne_head_vols"> <label>Date <br> Heure départ</label> </td> <td class="ligne_head_vols"> <label>Destination</label> </td> <td class="ligne_head_vols"> <label>Heure d'arrivée</label> </td> <td class="ligne_head_vols"> <label>Compagnie</label> </td> <td class="ligne_head_vols"> <label>Prix /p</label> </td> <td class="ligne_head_vols"> <label>Choix du vol "aller"</label> </td> </thead> <?php while($row_retour = $result_retour->fetch(PDO::FETCH_ASSOC)) { echo "<tr>"; echo "<td class=\"ligne_paire_vols\">".$row_retour['numeroVol']."</td>"; echo "<td class=\"ligne_paire_vols\">".$arrivee."</td>"; echo "<td class=\"ligne_paire_vols\">".dateusfr($row_retour['dateDepart'])."<br>".$row_retour['heureDepart']."</td>"; echo "<td class=\"ligne_paire_vols\">".$depart."</td>"; echo "<td class=\"ligne_paire_vols\">".dateusfr($row_retour['dateArrivee'])."<br>".$row_retour['heureArrivee']."</td>"; /*Recupère le nom de la compagnie grace à IDavion */ $sql_compagnie = "SELECT * FROM avion WHERE idAvion = '".$row_retour['IDavion']."'"; $result_compagnie = $bdd_vol->query($sql_compagnie); while($compagnie = $result_compagnie->fetch(PDO::FETCH_ASSOC)) { echo"<td class=\"ligne_paire_vols\">".$compagnie['compagnie']."</td>"; } echo "<td class=\"ligne_paire_vols\">".$row_retour['prix']." €</td>"; echo '<td class="ligne_paire_vols"><input type="radio" name="choix_retour" value="'.$row_retour['numeroVol'].'"></td>'; echo"</td>"; echo"</tr>"; } ?> </table> </div> <input type="hidden" value="<?php echo $enfants; ?>" name="nbenfants"> <input type="hidden" value="<?php echo $adultes; ?>" name="nbadultes"> <input type="submit" value="Réserver" name="reserver" id="reserver" /> </form> </div> </body> </html>
Le problème c'est que rien ne "bloque" les données que l'utilisateur entre.
Par exemple si je choisi une date d'aller et retour inférieur à la date d'aujourd'hui, je vais quand même pouvoir accéder à la deuxième page.
Ou si je choisi un vol qui n'est pas disponible sur ma BDD, j'accéderai quand même à la deuxième page.
Je pense donc que pour remédier à cela, je dois utiliser le Javascript, mais c'est un langage que je ne maitrise pas du tout.
Je cherche donc quelqu'un qui pourrait m'aider
Merci d'avance
A voir également:
- Javascript sur formulaire HMTL
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook - Guide
- Formulaire de reclamation instagram - Guide
- Telecharger javascript - Télécharger - Langages
- Confirmer le nouvel envoi du formulaire err_cache_miss - Forum Webmastering
1 réponse
Bonjour
Tu peux très bien faire tes vérifications en PHP.
De toutes manières, même si tu les faisais en Javascript, tu serais obligé de les refaire en PHP derrière, car c'est trop facile de contourner les contrôles faits en Javascript.
Tu peux aussi apprendre le javascript, ça n'est pas très compliqué et ça te servira dans tout ton site.
Tu peux très bien faire tes vérifications en PHP.
De toutes manières, même si tu les faisais en Javascript, tu serais obligé de les refaire en PHP derrière, car c'est trop facile de contourner les contrôles faits en Javascript.
Tu peux aussi apprendre le javascript, ça n'est pas très compliqué et ça te servira dans tout ton site.
roms75001
Messages postés
395
Date d'inscription
Statut
Membre
Dernière intervention
7
D'accord merci je vais regarder des tuto