Aider moi à récupéré les données du menu déroulant
james
-
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
<?php require_once("dbcontroller.php"); $db_handle = new DBController(); $query ="SELECT * FROM ville"; $results = $db_handle->runQuery($query); ?> <html> <head> <TITLE>jQuery Dependent DropDown List - Countries and States</TITLE> <head> <style> body{width:610px;font-family:calibri;} .frmDronpDown {border: 1px solid #7ddaff;background-color:#C8EEFD;margin: 2px 0px;padding:40px;border-radius:4px;} .demoInputBox {padding: 10px;border: #bdbdbd 1px solid;border-radius: 4px;background-color: #FFF;width: 50%;} .row{padding-bottom:15px;} </style> <script src="jquery-3.2.1.min.js" type="text/javascript"></script> <script> function getState(val) { $.ajax({ type: "POST", url: "getState.php", data:'ville_id='+val, success: function(data){ $("#commune-list").html(data); getCity(); } }); } function getCity(val) { $.ajax({ type: "POST", url: "getCity.php", data:'commune_id='+val, success: function(data){ $("#quartier-list").html(data); } }); } </script> <?php if (isset ( $_POST [ 'ok' ])) { // c'est l'id que je récupérer avec ce code echo 'ID ville sélectionné:' . $_POST [ 'ville' ]; echo 'ID commune sélectionné:' . $_POST [ 'comm' ]; echo 'Identifiant quartier:' . $_POST [ 'quartier' ]; } ?> <?php $query ="SELECT * FROM ville"; ?> </head> <body> <form action="" method="POST"> <div class="frmDronpDown"> <div class="row"> <label>ville:</label><br/> <select name="ville" id="ville-list" class="demoInputBox form-control" onChange="getState(this.value);" > <option value disabled selected>Select ville</option> <?php foreach($results as $ville) { ?> <option value="<?php echo $ville['id']; ?>"> <?php echo $ville["ville_name"]; ?></option> <?php } ?> </select> </div> <div class="row"> <label>Commune:</label><br/> <select name="comm" id="commune-list" class="demoInputBox form-control" onChange="getCity(this.value);" > <option value="" name="comm">Select commune</option> </select> </div> <div class="row"> <label>Quartier:</label><br/> <select name="quartier" id="quartier-list" class="demoInputBox form-control" > <option value="" name="quartier">Select quartier</option> </select> </div> </div> <button value="submit" name="ok">valider</button> </form> </body> </html>
A voir également:
- Aider moi à récupéré les données du menu déroulant
- Fuite données maif - Guide
- Menu déroulant excel - Guide
- Excel menu déroulant en cascade - Guide
- Menu déroulant google sheet - Accueil - Guide bureautique
- Supprimer les données de navigation - Guide
4 réponses
<?php require_once("dbcontroller.php"); $db_handle = new DBController(); //récupération propre des variables AVANT de les utiliser : $idVille = !empty($_POST["ville"]) ? $_POST["ville"]: NULL; $comm = !empty($_POST["comm"]) ? $_POST["comm"]: NULL; $quartier = !empty($_POST["quartier"]) ? $_POST["quartier"]: NULL; // récupération de la liste des villes $query = "SELECT * FROM ville "; if($idVille){ // si on a submit le formulaire $query .= " WHERE id='$idVille' "; } $results = $db_handle->runQuery($query); ?> <html> <head> <TITLE>Countries and States</TITLE> <meta charset="utf-8"> <style> body{ width:610px;font-family:calibri; } .frmDronpDown{ border: 1px solid #7ddaff;background-color:#C8EEFD;margin: 2px 0px;padding:40px;border-radius:4px; } .demoInputBox { padding: 10px;border: #bdbdbd 1px solid;border-radius: 4px;background-color: #FFF;width: 50%; } .row{ padding-bottom:15px; } </style> <script src="jquery-3.2.1.min.js" type="text/javascript"></script> </head> <body> <?php if (isset($_POST['ok'])) { echo 'la ville est : ' . $idVille.'<br>'; echo 'la state est : ' . $comm.'<br>'; echo 'la city est : ' . $quartier.'<br>'; } ?> <form action="" method="POST"> <div class="frmDronpDown"> <div class="row"> <label>ville:</label><br/> <select name="ville" id="ville-list" class="demoInputBox form-control" onChange="getState(this.value);" > <option value disabled selected>Select ville</option> <?php foreach($results as $ville) { $selected = $ville['id'] == $idVille ? " selected='selected' " : ""; echo "<option value='".$ville['id']."' ".$selected.">".$ville["ville_name"]."</option>"; } ?> </select> </div> <div class="row"> <label>Commune:</label><br/> <select name="comm" id="commune-list" class="demoInputBox form-control" onChange="getCity(this.value);" > <option value="" name="comm">Select commune</option> </select> </div> <div class="row"> <label>Quartier:</label><br/> <select name="quartier" id="quartier-list" class="demoInputBox form-control" > <option value="" name="quartier">Select quartier</option> </select> </div> </div> <button value="submit" name="ok">valider</button> </form> <!-- On place de préférence le javascript a la fin de la page juste avant le </body> --> <script> function getState(val) { $.ajax({ type: "POST", url: "getState.php", data:'ville_id='+val, success: function(data){ $("#commune-list").html(data); getCity(); } }); } function getCity(val) { $.ajax({ type: "POST", url: "getCity.php", data:'commune_id='+val, success: function(data){ $("#quartier-list").html(data); } }); } </script> </body> </html>
Bonjour
Quel est le souci exactement ?
Quel est le souci exactement ?
J'ai créé un formulaire de menus déroulante qui me permet d'entrer la ville, la commune et le quartier en ajax et php alors que les différents villes,commune et quartier sont enregistrés dans la base de données ou je récupère pour les affiches sur le formulaire.
Ensuite lorsqu'on remplir le formulaire du menu déroulant j'arrive à récupérer l'identifiant (ID) et non le nom de la ville, commune et quartier.
Ensuite lorsqu'on remplir le formulaire du menu déroulant j'arrive à récupérer l'identifiant (ID) et non le nom de la ville, commune et quartier.
Ca vient du contenu de tes listes déroulantes.....
En ajax, que renvoies tu ?
En ajax, que renvoies tu ?
toujours dans le même sujet.
j'arrive à récupéré et afficher la valeur de ($_post['ville']) qui est un identifiant de la table: ville.
maintenant que j'ai l'ID de la ville sélectionner.
je voudrais récupéré et afficher grace a L' id de la ville le nom dans le champs ville_nom de la base de données.
mais je me retrouve pas.
j'arrive à récupéré et afficher la valeur de ($_post['ville']) qui est un identifiant de la table: ville.
maintenant que j'ai l'ID de la ville sélectionner.
je voudrais récupéré et afficher grace a L' id de la ville le nom dans le champs ville_nom de la base de données.
mais je me retrouve pas.
<?php if (isset($_POST['ok'])) {
// c'est l'id que je récuper avec ce code
echo 'la ville est : ' . $_POST["ville"].'<br>';
echo 'la state est : ' . $_POST["comm"].'<br>';
echo 'la city est : ' . $_POST["quartier"].'<br>';}
?>
<?php $query ="SELECT 'ville_name' from ville WHERE 'id'=" . $_POST["ville"]; ?>
Et bien ?
TU as écris la bonne requête visiblement (hormis des quotes en trop )
Il te reste à l'exécuter ...
EDIT : Correction de l'emplacement du point-virgule
TU as écris la bonne requête visiblement (hormis des quotes en trop )
Il te reste à l'exécuter ...
<?php $idVille = !empty($_POST["ville"]) ? $_POST["ville"]: NULL; $query ="SELECT ville_name FROM ville WHERE id='$idVille' "; $results = $db_handle->runQuery($query); ?>
EDIT : Correction de l'emplacement du point-virgule
on m'affiche une erreur l'orsque j'execute ce code:
error: syntax error, unexpected '$results' (T_VARIABLE)
error: syntax error, unexpected '$results' (T_VARIABLE)
<?php if (isset($_POST['ok'])) {
// c'est l'id que je récuper avec ce code
echo 'la ville est : ' . $_POST["ville"].'<br>';
echo 'la state est : ' . $_POST["comm"].'<br>';
echo 'la city est : ' . $_POST["quartier"].'<br>';}
?>
<?php
$idVille = !empty($_POST["ville"]) ? $_POST["ville"]: NULL;
$query ="SELECT ville_name
FROM ville
WHERE id='$idVille' "
$results = $db_handle->runQuery($query);
; ?>
quand j’insère ce code le menu déroulant ne s'affiche plus.
alors que je veux afficher en php la valeur de ville_name sélectionner.
alors que je veux afficher en php la valeur de ville_name sélectionner.
$results = $db_handle->runQuery($query);
voila mon code complet.
<?php require_once("dbcontroller.php"); $db_handle = new DBController(); $query ="SELECT * FROM ville"; $results = $db_handle->runQuery($query); ?> <html> <head> <TITLE>Countries and States</TITLE> <head> <style> body{width:610px;font-family:calibri;} .frmDronpDown {border: 1px solid #7ddaff;background-color:#C8EEFD;margin: 2px 0px;padding:40px;border-radius:4px;} .demoInputBox {padding: 10px;border: #bdbdbd 1px solid;border-radius: 4px;background-color: #FFF;width: 50%;} .row{padding-bottom:15px;} </style> <script src="jquery-3.2.1.min.js" type="text/javascript"></script> <script> function getState(val) { $.ajax({ type: "POST", url: "getState.php", data:'ville_id='+val, success: function(data){ $("#commune-list").html(data); getCity(); } }); } function getCity(val) { $.ajax({ type: "POST", url: "getCity.php", data:'commune_id='+val, success: function(data){ $("#quartier-list").html(data); } }); } </script> <?php if (isset($_POST['ok'])) { // c'est l'id que je récuper avec ce code echo 'la ville est : ' . $_POST["ville"].'<br>'; echo 'la state est : ' . $_POST["comm"].'<br>'; echo 'la city est : ' . $_POST["quartier"].'<br>';} ?> <?php $idVille = !empty($_POST["ville"]) ? $_POST["ville"]: NULL; $query ="SELECT ville_name FROM ville WHERE id='$idVille' "; $results = $db_handle->runQuery($query); ; ?> </head> <body> <form action="" method="POST"> <div class="frmDronpDown"> <div class="row"> <label>ville:</label><br/> <select name="ville" id="ville-list" class="demoInputBox form-control" onChange="getState(this.value);" > <option value disabled selected>Select ville</option> <?php foreach($results as $ville) { ?> <option value="<?php echo $ville['id']; ?>"> <?php echo $ville["ville_name"]; ?></option> <?php } ?> </select> </div> <div class="row"> <label>Commune:</label><br/> <select name="comm" id="commune-list" class="demoInputBox form-control" onChange="getCity(this.value);" > <option value="" name="comm">Select commune</option> </select> </div> <div class="row"> <label>Quartier:</label><br/> <select name="quartier" id="quartier-list" class="demoInputBox form-control" > <option value="" name="quartier">Select quartier</option> </select> </div> </div> <button value="submit" name="ok">valider</button> </form> </body> </html>
mais il me reste seulement a afficher le non de la ville, commune et quartier sélectionner stp.
Qu'as tu essayé ?