Liste liées Ajax , php
Fermé
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
-
24 oct. 2017 à 17:32
deep_sea Messages postés 201 Date d'inscription mardi 10 mai 2016 Statut Membre Dernière intervention 10 décembre 2022 - 20 déc. 2017 à 14:23
deep_sea Messages postés 201 Date d'inscription mardi 10 mai 2016 Statut Membre Dernière intervention 10 décembre 2022 - 20 déc. 2017 à 14:23
A voir également:
- Liste liées Ajax , php
- Liste déroulante excel - Guide
- Liste déroulante en cascade - Guide
- Easy php - Télécharger - Divers Web & Internet
- Liste site streaming illégal - Accueil - Services en ligne
- Liste de diffusion whatsapp - Guide
18 réponses
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
25 oct. 2017 à 11:04
25 oct. 2017 à 11:04
Bonjour,
Pour commencer, applique ceci :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
Puis ça :
https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
Pour commencer, applique ceci :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
Puis ça :
https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
6 nov. 2017 à 10:45
6 nov. 2017 à 10:45
La page materiel.php
<?php error_reporting(E_ALL); ini_set('display_errors',TRUE); ini_set('display_startup_errors',TRUE); include 'includes\db.php'; ?> <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>BST Gestion</title> <script type="text/javascript" src="../bootstrap/js/jquery-3.2.1.js"></script> <script src="../bootstrap/js/bootstrap.js"></script> <script type="text/javascript" src="../bootstrap/js/liste.js"></script> <link rel="stylesheet" href="../bootstrap/css/bootstrap.css"> <style> .user-row { margin-bottom: 14px; } .user-row:last-child { margin-bottom: 0; } .dropdown-user { margin: 13px 0; padding: 5px; height: 100%; } .dropdown-user:hover { cursor: pointer; } .table-user-information > tbody > tr { border-top: 1px solid rgb(221, 221, 221); } .table-user-information > tbody > tr:first-child { border-top: 0; } .table-user-information > tbody > tr > td { border-top: 0; } .toppad {margin-top:20px; } </style> </head> <body> <?php include 'includes/header.php';?> <div class="container"> <label> les catégories *:</label> <div class="input-group"> <span class="input-group-addon"><i class="glyphicon glyphicon-th-list"></i></span> <select class="form-control" name="categorie" id="categorie"> <option value="">Séléctionner une catégorie</option>'; </select> </div> <label> les sous catégories *:</label> <div class="input-group"> <span class="input-group-addon"><i class="glyphicon glyphicon-th-list"></i></span> <select class="form-control" id="sous_categorie" name="sous_categorie"> <option value="">Séléctionner une sous catégorie</option>'; </select> </div> <!--Element--> <label> les elements *:</label> <br> <div class="input-group"> <span class="input-group-addon"><i class="glyphicon glyphicon-th-list"></i></span> <select class="form-control" name="element" id="element"> <option value="">Séléctionner un élement</option> ?> </select> </div> </div> </body> </html>
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
6 nov. 2017 à 10:46
6 nov. 2017 à 10:46
page liste.php
<?php error_reporting(E_ALL); $conn->setattribute(PDO::ATTR_ERRMODE,ERRMODE_EXCEPTION); $conn->setattribute(PDO::ATTR_DEFAULT_FETCH_MODE,PDO::FETCH_ASSOC); /* connexion a la base de donnée*/ include 'includes\db.php'; if(isset($_GET['go']) || isset($_GET['categorie']) || isset($_GET['sous_categorie'])) { $json = array(); if(isset($_GET['go'])) { try{ $requete = "SELECT * FROM `categorie` order by `designation_categorie` asc"; $resultat = $conn->query($requete) or die(print_r($conn->errorInfo())); while($donnees = $resultat->fetch(PDO::FETCH_ASSOC)) { $json[$donnees["Id_categorie"]][] = utf8_encode($donnees["designation_categorie"]); } } catch(Exception $e) { echo "ERREUR!".$e->getmessage(); echo "Les datas:"; print_r($donnees); } } elseif(isset($_GET['categorie'])) { try{ $var_cat=$_GET['categorie'] ; $requete = "SELECT * FROM `sous_categorie` WHERE `id_categorie` = ORDER BY `designation_sous_categorie` ASC"; $resultat = $conn->query($requete) or die(print_r($conn->errorInfo())); while($donnees = $resultat->fetch(PDO::FETCH_ASSOC)) { $json[$donnees["designation_sous_categorie"]][] = utf8_encode($donnees["designation_sous_categorie"]); } } catch(Exception $e1) { echo "ERREUR!".$e1->getmessage(); echo "Les datas:"; print_r($donnees); } } elseif(isset($_GET['sous_categorie'])) { try{ $var_sous_cat=$_GET['sous_categorie']; $requete = "SELECT * FROM `element` WHERE `designation_sous_categorie`=$var_sous_cat ORDER BY `Designation_element ` ASC"; $resultat = $conn->query($requete) or die(print_r($conn->errorInfo())); while($donnees = $resultat->fetch(PDO::FETCH_ASSOC)) { $json[$donnees["code_element"]][] = utf8_encode($donnees["Designation_element"]); }} } echo json_encode($json); catch(Exception $e2) { echo "ERREUR!".$e2->getmessage(); echo "Les datas:"; print_r($donnees); } } ?>
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
6 nov. 2017 à 11:11
6 nov. 2017 à 11:11
Tu as regardé l'exemple du lien que je t'ai donné ??
As quel moment as tu vu que j'utilisais ce genre de ligne de code
<coce php>
die(print_r($conn->errorInfo()));
</code>
Et puis... n'as tu pas vu que je faisais du fetchAll ?
Et il te manque toujours la connexion à ta bdd dans le fichier que tu nous montres....
Relis toi avant de poster ton code....
As quel moment as tu vu que j'utilisais ce genre de ligne de code
<coce php>
die(print_r($conn->errorInfo()));
</code>
Et puis... n'as tu pas vu que je faisais du fetchAll ?
Et il te manque toujours la connexion à ta bdd dans le fichier que tu nous montres....
Relis toi avant de poster ton code....
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
6 nov. 2017 à 11:32
6 nov. 2017 à 11:32
Oui méme imprimé les exemple et j'ai suis les étapes !!
page db.php
la page liste.php
page db.php
<?php $server = 'localhost'; $username = 'root'; $password = ''; $db = 'bst_gestion'; $conn = mysqli_connect($server,$username,$password,$db); mysqli_set_charset( $conn , 'utf8' ); ?>
la page liste.php
<?php try{ $conn= new PDO ('mysql:host=localhost; dbname=include\db; charset=utf8', 'user', 'passwor'); error_reporting(E_ALL); $conn->setattribute(PDO::ATTR_ERRMODE,ERRMODE_EXCEPTION); $conn->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC); } catch(PDOException $e) { die('Erreur : ' . $e->getMessage()); } if(isset($_GET['go']) || isset($_GET['categorie']) || isset($_GET['sous_categorie'])) { $json = array(); if(isset($_GET['go'])) { try{ $requete = "SELECT * FROM `categorie` order by `designation_categorie` asc"; $resultat = $conn->query($requete) or die(print_r($conn->errorInfo())); while($donnees = $resultat->fetch(PDO::FETCH_ASSOC)) { $json[$donnees["Id_categorie"]][] = utf8_encode($donnees["designation_categorie"]); } } catch(Exception $e) { echo "ERREUR!".$e->getmessage(); echo "Les datas:"; print_r($donnees); } } elseif(isset($_GET['categorie'])) { try{ $var_cat=$_GET['categorie'] ; $requete = "SELECT * FROM `sous_categorie` WHERE `id_categorie` = ORDER BY `designation_sous_categorie` ASC"; $resultat = $conn->query($requete) or die(print_r($conn->errorInfo())); while($donnees = $resultat->fetch(PDO::FETCH_ASSOC)) { $json[$donnees["designation_sous_categorie"]][] = utf8_encode($donnees["designation_sous_categorie"]); } } catch(Exception $e1) { echo "ERREUR!".$e1->getmessage(); echo "Les datas:"; print_r($donnees); } } elseif(isset($_GET['sous_categorie'])) { try{ $var_sous_cat=$_GET['sous_categorie']; $requete = "SELECT * FROM `element` WHERE `designation_sous_categorie`=$var_sous_cat ORDER BY `Designation_element ` ASC"; $resultat = $conn->query($requete) or die(print_r($conn->errorInfo())); while($donnees = $resultat->fetch(PDO::FETCH_ASSOC)) { $json[$donnees["code_element"]][] = utf8_encode($donnees["Designation_element"]); }} } echo json_encode($json); catch(Exception $e2) { echo "ERREUR!".$e2->getmessage(); echo "Les datas:"; print_r($donnees); } } ?>
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
6 nov. 2017 à 11:45
6 nov. 2017 à 11:45
Tu peux m'expliquer comment tu peux avoir, d'un côté dans la page db.php ... du mysqli ...
et dans ton autre fichier (liste.php) ... du PDO ???
Tes pages web ... tu les as faites avec PDO ou mysqli ??? Il faut choisir l'un ou l'autre !
Et pas copier/coller bêtement du code sans essayer de le comprendre !!!
et dans ton autre fichier (liste.php) ... du PDO ???
Tes pages web ... tu les as faites avec PDO ou mysqli ??? Il faut choisir l'un ou l'autre !
Et pas copier/coller bêtement du code sans essayer de le comprendre !!!
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
6 nov. 2017 à 14:56
6 nov. 2017 à 14:56
tu as raison ,
j'utilise le mysqli
ok c juste pour tester
je vais corriger le programme
merci pour votre temps
j'utilise le mysqli
ok c juste pour tester
je vais corriger le programme
merci pour votre temps
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
>
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
6 nov. 2017 à 16:09
6 nov. 2017 à 16:09
Liste.php
<?php include 'includes\db.php'; if(isset($_GET['go']) || isset($_GET['categorie']) || isset($_GET['sous_categorie'])) { $json = array(); if(isset($_GET['go'])) { $requete = "SELECT * FROM `categorie` order by `designation_categorie` asc"; $resultat = $conn->query($requete) or die ('Erreur '.$requete.' '.$conn->error); while($row = mysqli_fetch_assoc($resultat)) { $json[$row ["Id_categorie"]][] = utf8_encode($row ["designation_categorie"]); } else { echo 'Erreur catégorie!'; } } elseif(isset($_GET['categorie'])) { $var_cat=$_GET['categorie'] ; $requete = "SELECT * FROM `sous_categorie` WHERE `id_categorie` = ORDER BY `designation_sous_categorie` ASC"; $resultat = $conn->query($requete) or die ('Erreur '.$requete.' '.$conn->error); while($row = mysqli_fetch_assoc($resultat)) { $json[$row["designation_sous_categorie"]][] = utf8_encode($row["designation_sous_categorie"]); } else { echo 'Erreur sous catégorie!'; } } elseif(isset($_GET['sous_categorie'])) { $var_sous_cat=$_GET['sous_categorie']; $requete = "SELECT * FROM `element` WHERE `designation_sous_categorie`=$var_sous_cat ORDER BY `Designation_element ` ASC"; $resultat = $conn->query($requete) or die ('Erreur '.$requete.' '.$conn->error); while($row = mysqli_fetch_assoc($resultat)) { $json[$row ["code_element"]][] = utf8_encode($row ["Designation_element"]); } else { echo 'Erreur sous catégorie!'; } } echo json_encode($json); } ?>
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
7 nov. 2017 à 14:12
7 nov. 2017 à 14:12
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
7 nov. 2017 à 14:30
7 nov. 2017 à 14:30
Y'a peu-être des choses à cocher non ?
Comme par exemple : log XmlHttpRequest ... pour debug de l'ajax... ça peut aider !
Tu peux aussi cocher "preserve log".
Et au passage... tu as bien ajouté des console.log comme je te l'ai demandé ???
Si oui...ils devraient apparaitre....dans la console...
Bien entendu.. tu regardes la console après avoir fais des choix dans tes listes déroulantes ..
Comme par exemple : log XmlHttpRequest ... pour debug de l'ajax... ça peut aider !
Tu peux aussi cocher "preserve log".
Et au passage... tu as bien ajouté des console.log comme je te l'ai demandé ???
Si oui...ils devraient apparaitre....dans la console...
Bien entendu.. tu regardes la console après avoir fais des choix dans tes listes déroulantes ..
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
27 nov. 2017 à 11:54
27 nov. 2017 à 11:54
Bonjour ,
page liste.js
page liste.php
materiel.php
les liens
Erreur affiché :
page liste.js
$(document).ready(function() { $("#form-categorie").change(function() { var spec = $(this).val(); $.ajax({ type : "POST", url: "liste.[/php/phpintro.php3 php]?categorie_id=" + spec, cache: false }).done(function(html) { var data = $.parseJSON(html); $("#form_sous_categorie").html(""); data.forEach( function(ent) { $("#form_sous_categorie").prepend("<option value=\""+ent.designation_sous_categorie+"\">"+ent.designation_sous_categorie+"</option>"); }); }); }); $("#form_sous_categorie").change(function() { var spec = $(this).val(); $.ajax({ url: "liste.php?sous_categorie_id=" + spec, cache: false }).done(function(html) { var data = $.parseJSON(html); $("#form_element").html(""); data.forEach(function(ent) { $("#form_element").prepend("<option value=\""+ent.code_element+"\">"+ent.Designation_element+"</option>"); }); }); }); });
page liste.php
<?php echo json_encode($_POST); exit(); //Activation des erreurs PHP error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); require_once 'includes\db.php'; success: function(json) { console.log(json); // Vérifier que l'id du catégorie a bien eté envoyé if((!empty($_GET['categorie_id'])) && (is_numeric($_GET['categorie_id']))) { $spec = $_GET['categorie_id']; // Tableau des resultats initialisé a vide $results = array(); // Séléction les catégories $requete= mysql_query("SELECT * FROM `sous_categorie` WHERE `id_categorie`='".$spec."'") or die (mysql_error()); while($data = mysql_fetch_assoc($requete)) { $results[] = $data; } // Encoder a l'aide de json avant de renvoyer echo json_encode($results); } // Vérifier que l'id den la sous catégorie a bien été envoyé else if((!empty($_GET['sous_categorie_id'])) && (is_numeric($_GET['sous_categorie_id']))) { $spec = $_GET['sous_categorie_id']; // Tableau des resultats initialisé a vide $results = array(); // Séléction les élements qui concernent la sous catégorie choisi $requete= mysql_query("SELECT * FROM `element` WHERE `designation_sous_categorie`='".$spec."'") or die (mysql_error()); while($data = mysql_fetch_assoc($requete)) { $results[] = $data; } // Encoder a l'aide de json avant de renvoyer echo json_encode($results); } ?>
materiel.php
<label> les catégories *:</label> <div class="input-group"> <span class="input-group-addon"><i class="glyphicon glyphicon-th-list"></i></span> <select class="form-control" name="categorie" id="form-categorie"> <option value="">Séléctionner une catégorie</option>'; <?php $requete_liste= "SELECT * FROM `categorie` order by `designation_categorie` asc"; $resultat_liste = $conn->query($requete_liste) or die ('Erreur '.$requete_liste.' '.$conn->error); while($co = mysql_fetch_array($resultat_liste)){ $id_categorie=$co['id_categorie']; $designation_categorie=$co['designation_categorie'];?> <option value="<?php echo $id_categorie;?>"><?php echo $designation_categorie;?></option> <?php }?> </select> </div> <label> les sous catégories *:</label> <div class="input-group"> <span class="input-group-addon"><i class="glyphicon glyphicon-th-list"></i></span> <select class="form-control" id="form_sous_categorie" name="sous_categorie"> <option value="">Séléctionner une sous catégorie</option>'; </select> </div> <!--Element--> <label> les elements *:</label> <br> <div class="input-group"> <span class="input-group-addon"><i class="glyphicon glyphicon-th-list"></i></span> <select class="form-control" name="element" id="form_element"> <option value="">Séléctionner un élement</option> </select> </div>
les liens
<script type="text/javascript" src="../bootstrap/js/jquery-3.2.1.js"></script> <script src="../bootstrap/js/bootstrap.js"></script> <script type="text/javascript" src="../bootstrap/js/liste.js"></script> <link rel="stylesheet" href="../bootstrap/css/bootstrap.css">
Erreur affiché :
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
27 nov. 2017 à 11:57
27 nov. 2017 à 11:57
Que vient faire ici cette ligne de code
success: function(json) { console.log(json);
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
>
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
27 nov. 2017 à 14:11
27 nov. 2017 à 14:11
pour afficher dans la consule les variable de javascript
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
>
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
27 nov. 2017 à 15:46
27 nov. 2017 à 15:46
C'est du code JAVASCRIPT .... il faut donc le mettre dans ton JAVASCRIPT et non dans le PHP !!!
Il faut donc le mettre dans le .done
Il faut donc le mettre dans le .done
}).done(function(html) { console.log(html);
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
>
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
27 nov. 2017 à 16:04
27 nov. 2017 à 16:04
méme erreur s'affiche :
Uncaught SyntaxError: Unexpected token (
Uncaught SyntaxError: Unexpected token (
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
>
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
27 nov. 2017 à 16:26
27 nov. 2017 à 16:26
Montre ton code modifié
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
28 nov. 2017 à 10:08
28 nov. 2017 à 10:08
j'utilise MySqli
liste.php
liste.php
<?php echo json_encode($_POST); exit(); //Activation des erreurs PHP error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); require_once 'includes\db.php'; // Vérifier que l'id du catégorie a bien eté envoyé if((!empty($_GET['categorie_id'])) && (is_numeric($_GET['categorie_id']))) { $spec = $_GET['categorie_id']; // Tableau des resultats initialisé a vide $results = array(); // Séléction les catégories $requete_sous_cat= "SELECT * FROM `sous_categorie` WHERE `id_categorie`='".$spec."'"; $resultat_categorie= $conn->query($requete_sous_cat) or die ('Erreur '.$requete_sous_cat.' '.$conn->error); while($data = mysql_fetch_array($resultat_categorie)) { $results[] = $data; } // Encoder a l'aide de json avant de renvoyer echo json_encode($results); } // Vérifier que l'id den la sous catégorie a bien été envoyé else if((!empty($_GET['sous_categorie_id'])) && (is_numeric($_GET['sous_categorie_id']))) { $spec = $_GET['sous_categorie_id']; // Tableau des resultats initialisé a vide $results = array(); // Séléction les élements qui concernent la sous catégorie choisi $requete_element= "SELECT * FROM `element` WHERE `designation_sous_categorie`='".$spec."'"; $resultat_element= $conn->query($requete_element) or die ('Erreur '.$requete_element.' '.$conn->error); while($data = mysql_fetch_assoc($resultat_element)) { $results[] = $data; } // Encoder a l'aide de json avant de renvoyer echo json_encode($results); } ?>
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
28 nov. 2017 à 10:08
28 nov. 2017 à 10:08
liste.js
success: function(html) { console.log(html); $(document).ready(function() { $("#form-categorie").change(function() { var spec = $(this).val(); $.ajax({ type : "POST", url: "liste.php?categorie_id=" + spec, cache: false }).done(function(html) { var data = $.parseJSON(html); $("#form_sous_categorie").html(""); data.forEach( function(ent) { $("#form_sous_categorie").prepend("<option value=\""+ent.designation_sous_categorie+"\">"+ent.designation_sous_categorie+"</option>"); }); }); }); $("#form_sous_categorie").change(function() { var spec = $(this).val(); $.ajax({ url: "liste.php?sous_categorie_id=" + spec, cache: false }).done(function(html) { var data = $.parseJSON(html); $("#form_element").html(""); data.forEach(function(ent) { $("#form_element").prepend("<option value=\""+ent.code_element+"\">"+ent.Designation_element+"</option>"); }); }); }); });
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
>
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
28 nov. 2017 à 10:22
28 nov. 2017 à 10:22
Tu utilises mysqli ????
Dans ce cas.. que font des instructions telle que mysql_fetch_array dans ton code ??
Commence par nous présenter un code conforme... on verra ensuite !
Dans ce cas.. que font des instructions telle que mysql_fetch_array dans ton code ??
Commence par nous présenter un code conforme... on verra ensuite !
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
Modifié le 28 nov. 2017 à 10:31
Modifié le 28 nov. 2017 à 10:31
<?php echo json_encode($_POST); exit(); //Activation des erreurs PHP error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); require_once 'includes\db.php'; // Vérifier que l'id du catégorie a bien eté envoyé if((!empty($_GET['categorie_id'])) && (is_numeric($_GET['categorie_id']))) { $spec = $_GET['categorie_id']; // Tableau des resultats initialisé a vide $results = array(); // Séléction les catégories $requete_sous_cat= "SELECT * FROM `sous_categorie` WHERE `id_categorie`='".$spec."'"; $resultat_categorie= $conn->query($requete_sous_cat) or die ('Erreur '.$requete_sous_cat.' '.$conn->error); while($data = mysql_fetch_assoc(($resultat_categorie)) { $results[] = $data; } // Encoder a l'aide de json avant de renvoyer echo json_encode($results); } // Vérifier que l'id den la sous catégorie a bien été envoyé else if((!empty($_GET['sous_categorie_id'])) && (is_numeric($_GET['sous_categorie_id']))) { $spec = $_GET['sous_categorie_id']; // Tableau des resultats initialisé a vide $results = array(); // Séléction les élements qui concernent la sous catégorie choisi $requete_element= "SELECT * FROM `element` WHERE `designation_sous_categorie`='".$spec."'"; $resultat_element= $conn->query($requete_element) or die ('Erreur '.$requete_element.' '.$conn->error); while($data = mysql_fetch_assoc($resultat_element)) { $results[] = $data; } // Encoder a l'aide de json avant de renvoyer echo json_encode($results); } ?>
EDIT : AJOUT DU LANGAGE dans les balises de code
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
28 nov. 2017 à 10:33
28 nov. 2017 à 10:33
Dans ton fichier JS ....
Tu as collé
N'IMPORTE OU !!!!
Tu supprimes ces lignes ....
Et tu écris dans les .DONE ceci:
et c'est tout !
Tu as collé
success: function(html) { console.log(html);
N'IMPORTE OU !!!!
Tu supprimes ces lignes ....
Et tu écris dans les .DONE ceci:
console.log(html);
et c'est tout !
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
28 nov. 2017 à 11:11
28 nov. 2017 à 11:11
$(document).ready(function() { $("#form-categorie").change(function() { var spec = $(this).val(); $.ajax({ type : "POST", url: "liste.php?categorie_id=" + spec, cache: false }).done(function([/html/htmlintro.php3 html]) { <gras>console.log(html);</gras> var data = $.parseJSON(html); $("#form_sous_categorie").html(""); data.forEach( function(ent) { $("#form_sous_categorie").prepend("<option value=\""+ent.designation_sous_categorie+"\">"+ent.designation_sous_categorie+"</option>"); }); }); }); $("#form_sous_categorie").change(function() { var spec = $(this).val(); $.ajax({ url: "liste.php?sous_categorie_id=" + spec, cache: false }).done(function(html) { <gras> console.log(html);</gras> var data = $.parseJSON(html); $("#form_element").html(""); data.forEach(function(ent) { $("#form_element").prepend("<option value=\""+ent.code_element+"\">"+ent.Designation_element+"</option>"); }); }); }); });
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
>
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
28 nov. 2017 à 11:15
28 nov. 2017 à 11:15
1 - Il serait bien que tu utilises CORRECTEMENT les balises de code (en y précisant le LANGAGE ) histoire qu'on puisse avoir la coloration syntaxique !
Explications ici : https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
Ce n'est pas le première fois que je te le dis !!!
2 - Maintenant que tu as corrigé ton code .... as tu toujours une erreur ??
Explications ici : https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
Ce n'est pas le première fois que je te le dis !!!
2 - Maintenant que tu as corrigé ton code .... as tu toujours une erreur ??
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
>
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
28 nov. 2017 à 11:19
28 nov. 2017 à 11:19
oui la méme erreur
Uncaught SyntaxError: Unexpected token (
Uncaught SyntaxError: Unexpected token (
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
Modifié le 28 nov. 2017 à 14:47
Modifié le 28 nov. 2017 à 14:47
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
28 nov. 2017 à 15:20
28 nov. 2017 à 15:20
Essayes ça :
$(document).ready(function() { console.log('document ready !'); $("#form-categorie").change(function() { var spec = $(this).val(); console.log('form-categorie CHANGE : ' + spec); $.ajax({ type : "POST", url: "liste.php?categorie_id=" + spec, cache: false }).done(function([/html/htmlintro.php3 html]) { <gras>console.log(html);</gras> var data = $.parseJSON(html); $("#form_sous_categorie").html(""); data.forEach( function(ent) { $("#form_sous_categorie").prepend("<option value=\""+ent.designation_sous_categorie+"\">"+ent.designation_sous_categorie+"</option>"); }); }).fail(function (jqXHR, textStatus) { console.log('ERREUR AJAX !'); console.log(textStatus); }); }); $("#form_sous_categorie").change(function() { var spec = $(this).val(); console.log('form_sous_categorie CHANGE : ' + spec); $.ajax({ url: "liste.php?sous_categorie_id=" + spec, cache: false }).done(function(html) { console.log(html); var data = $.parseJSON(html); $("#form_element").html(""); data.forEach(function(ent) { $("#form_element").prepend("<option value=\""+ent.code_element+"\">"+ent.Designation_element+"</option>"); }); }).fail(function (jqXHR, textStatus) { console.log('ERREUR AJAX !'); console.log(textStatus); }); }); });
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
10 déc. 2017 à 10:21
10 déc. 2017 à 10:21
Erreur
Uncaught SyntaxError: Invalid regular expression flags
Uncaught SyntaxError: Invalid regular expression flags
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
10 déc. 2017 à 11:03
10 déc. 2017 à 11:03
A quelle ligne ?
Ca doit te le dire dans la console
Ca doit te le dire dans la console
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
10 déc. 2017 à 11:19
10 déc. 2017 à 11:19
ligne 10
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
10 déc. 2017 à 12:49
10 déc. 2017 à 12:49
Et elle contient quoi la ligne 10 ?
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
10 déc. 2017 à 14:07
10 déc. 2017 à 14:07
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
10 déc. 2017 à 15:04
10 déc. 2017 à 15:04
Ce que tu me montres .. c'est la ligne 29 et non la 10 ...
Mais bon.. la 10 contient la même chose.
html ... je ne pense pas que ce soit bien choisit comme nom de variable.... non ?
A la place... utilise "reponse" ou '"result" ou "response" ...
Et comme tu fais du POST ... ne place pas tes variables dans l'url mais utilise l'attribut DATA
Et puis.. précise que tu veux un retour en JSON
Et pour finir .. retire le CACHE qui ne sert pas ..
Mais bon.. la 10 contient la même chose.
html ... je ne pense pas que ce soit bien choisit comme nom de variable.... non ?
A la place... utilise "reponse" ou '"result" ou "response" ...
Et comme tu fais du POST ... ne place pas tes variables dans l'url mais utilise l'attribut DATA
Et puis.. précise que tu veux un retour en JSON
Et pour finir .. retire le CACHE qui ne sert pas ..
var spec = $(this).val(); console.log('form-categorie CHANGE : ' + spec); $.ajax({ type : "POST", url: "liste.php", data : {categorie_id:spec}, dataType: 'json' }).done(function(reponse) { console.log(reponse)
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
10 déc. 2017 à 15:57
10 déc. 2017 à 15:57
document ready !
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
10 déc. 2017 à 17:17
10 déc. 2017 à 17:17
??
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
10 déc. 2017 à 19:10
10 déc. 2017 à 19:10
Ah oui.. tu veux nous dire que dans la console s'affiche document ready..
Doit le résultat de la ligne de code
Donc visiblement plus d'erreur de syntaxe dans le code....
Donc ça fonctionne non ?
Doit le résultat de la ligne de code
console.log('document ready !');
Donc visiblement plus d'erreur de syntaxe dans le code....
Donc ça fonctionne non ?
oui il y'a affichage de document ready !! --> pas d'erreur de syntaxe dans le code mais ça ne fonctionne pas
une autre erreur de syntaxe apparaît dans liste.php
Parse error: syntax error, unexpected '{' , on line 25
le problème j'ai vérifié tous les accolades mais j'ai pas trouvée
une autre erreur de syntaxe apparaît dans liste.php
Parse error: syntax error, unexpected '{' , on line 25
le problème j'ai vérifié tous les accolades mais j'ai pas trouvée
<?php echo json_encode($_POST); exit(); //Activation des erreurs PHP error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); require_once 'includes\db.php'; // Vérifier que l'id du catégorie a bien eté envoyé if((!empty($_GET['categorie_id'])) && (is_numeric($_GET['categorie_id']))) { $spec = $_GET['categorie_id']; // Tableau des resultats initialisé a vide $results = array(); // Séléction les catégories $requete_sous_cat= "SELECT * FROM `sous_categorie` WHERE `id_categorie`='".$spec."'"; $resultat_categorie= $conn->query($requete_sous_cat) or die ('Erreur '.$requete_sous_cat.' '.$conn->error); while($data = mysql_fetch_assoc(($resultat_categorie)) { $results[] = $data; } // Encoder a l'aide de json avant de renvoyer echo json_encode($results); } // Vérifier que l'id den la sous catégorie a bien été envoyé else if((!empty($_GET['sous_categorie_id'])) && (is_numeric($_GET['sous_categorie_id']))) { $spec = $_GET['sous_categorie_id']; // Tableau des resultats initialisé a vide $resultat_element = array(); // Séléction les élements qui concernent la sous catégorie choisi $requete_element= "SELECT * FROM `element` WHERE `designation_sous_categorie`='".$spec."'"; $resultat_element= $conn->query($requete_element) or die ('Erreur '.$requete_element.' '.$conn->error); while($data_element = mysql_fetch_assoc($resultat_element)) { $resultat_element[] = $data_element; } // Encoder a l'aide de json avant de renvoyer echo json_encode($results); } ?>
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
13 déc. 2017 à 10:25
13 déc. 2017 à 10:25
Que contient ton fichier 'includes\db.php' ?
Ensuite... tu as encore des erreurs de parenthèses dans tes IF ...
Regarde bien cette ligne....
Ca devrait être :
Qui.. plus proprement ... et si tu avais appliqué le contenu des liens que je t'ai déjà donné concernant l'écriture PROPRE du code tu aurais appliqué... devrais se faire comme ceci :
Mais là encore.. on pourrait améliorer l'écriture de ton code...
Regarde ce que donnes ceci:
NB : Tu utilises du POST ..et non du GET !
J'ai rectifié dans ton code.
Ensuite... tu as encore des erreurs de parenthèses dans tes IF ...
if((!empty($_GET['categorie_id'])) && (is_numeric($_GET['categorie_id']))) {
Regarde bien cette ligne....
Ca devrait être :
if( !empty($_GET['categorie_id']) && is_numeric($_GET['categorie_id']) ) {
Qui.. plus proprement ... et si tu avais appliqué le contenu des liens que je t'ai déjà donné concernant l'écriture PROPRE du code tu aurais appliqué... devrais se faire comme ceci :
$categorie_id= !empty($_GET['categorie_id']) && is_numeric($_GET['categorie_id']) ? $_GET['categorie_id'] : NULL; if($categorie_id){
Mais là encore.. on pourrait améliorer l'écriture de ton code...
Regarde ce que donnes ceci:
<?php //Activation des erreurs PHP error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); require_once 'includes\db.php'; //récupération PROPRE des variables AVANT de les utiliser: $categorie_id = !empty($_POST['categorie_id']) && is_numeric($_POST['categorie_id']) ? $_POST['categorie_id'] : NULL; $sous_categorie_id = !empty($_POST['sous_categorie_id']) && is_numeric($_POST['sous_categorie_id']) ? $_POST['sous_categorie_id'] : NULL; $results = array(); if($categorie_id ){ $fieldQuery = 'id_categorie'; $spec = $categorie_id; }elseif($sous_categorie_id){ $fieldQuery = 'designation_sous_categorie'; $spec = $sous_categorie_id; }else{ $results['error'] = "Aucune catégorie ou sous-catégorie envoyée..."; $results['post'] = $_POST; $spec = NULL; } if($spec){ $sql = "SELECT * FROM `sous_categorie` WHERE ".$fieldQuery."='".$spec."'"; $resultat_query = mysqli_query($conn,$sql); while($data =mysqli_fetch_assoc($resultat_query)) { $results[] = $data; } } // Encoder a l'aide de json avant de renvoyer echo json_encode($results); ?>
NB : Tu utilises du POST ..et non du GET !
J'ai rectifié dans ton code.
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
13 déc. 2017 à 10:38
13 déc. 2017 à 10:38
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
13 déc. 2017 à 10:45
13 déc. 2017 à 10:45
Que donnes ceci :
côté PHP :
Et puis.. tu pourrais nous montrer ton code JS (corrigé suite à ma réponse du : https://forums.commentcamarche.net/forum/affich-34951536-liste-liees-ajax-php#47
côté PHP :
<?php //Activation des erreurs PHP error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); require_once 'includes\db.php'; //récupération PROPRE des variables AVANT de les utiliser: $categorie_id = !empty($_POST['categorie_id']) ? $_POST['categorie_id'] : NULL; $sous_categorie_id = !empty($_POST['sous_categorie_id']) ? $_POST['sous_categorie_id'] : NULL; $results = array(); $results['DEBUG'] = array('POST'=>$_POST,'GET'=>$_GET); if($categorie_id ){ $fieldQuery = 'id_categorie'; $spec = $categorie_id; }elseif($sous_categorie_id){ $fieldQuery = 'designation_sous_categorie'; $spec = $sous_categorie_id; }else{ $results['error'] = "Aucune catégorie ou sous-catégorie envoyée..."; $results['post'] = $_POST; $spec = NULL; } if($spec){ $sql = "SELECT * FROM `sous_categorie` WHERE ".$fieldQuery."='".$spec."'"; $resultat_query = mysqli_query($conn,$sql); $results['query'] = $sql; while($data =mysqli_fetch_assoc($resultat_query)) { $results['datas'] = $data; } } // Encoder a l'aide de json avant de renvoyer echo json_encode($results); exit(); ?>
Et puis.. tu pourrais nous montrer ton code JS (corrigé suite à ma réponse du : https://forums.commentcamarche.net/forum/affich-34951536-liste-liees-ajax-php#47
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
13 déc. 2017 à 10:51
13 déc. 2017 à 10:51
pour liste.php le même affichage , un tableau vide
le code de liste.js
le code de liste.js
$(document).ready(function() { console.log('document ready !'); $("#form-categorie").change(function() { var spec = $(this).val(); console.log('form-categorie CHANGE : ' + spec); $.ajax({ type : "POST", url: "liste.php", data : {categorie_id:spec}, dataType: 'json' }).done(function(reponse) { console.log(reponse); }); }); /*** sous catégorie****/ $("#form_sous_categorie").change(function() { var spec = $(this).val(); console.log('form_sous_categorie CHANGE : ' + spec); $.ajax({ url: "liste.php?sous_categorie_id=" + spec, cache: false }).done(function(html) { console.log(html); var data = $.parseJSON(html); $("#form_element").html(""); data.forEach(function(ent) { $("#form_element").prepend("<option value=\""+ent.code_element+"\">"+ent.Designation_element+"</option>"); }); }).fail(function (jqXHR, textStatus) { console.log('ERREUR AJAX !'); console.log(textStatus); }); }); });
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
13 déc. 2017 à 11:12
13 déc. 2017 à 11:12
Quand tu dis : "pour liste.php le même affichage , un tableau vide " ... dis voir .. tu le regarde comment ???
Tu n'essayes pas de l'ouvrir directement hein ??
Tu passes par le code javascript on est bien d'accord ????
Et c'est UNIQUEMENT dans la console du navigateur que tu devrais en voir le résultat !
Sachant que ton JS .. tu n'as corrigé qu'une seule fonction sur les deux....
Faut également corriger au niveau de ton autre fonction
Tu n'essayes pas de l'ouvrir directement hein ??
Tu passes par le code javascript on est bien d'accord ????
Et c'est UNIQUEMENT dans la console du navigateur que tu devrais en voir le résultat !
Sachant que ton JS .. tu n'as corrigé qu'une seule fonction sur les deux....
Faut également corriger au niveau de ton autre fonction
$("#form_sous_categorie").change(function() {
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
Modifié le 13 déc. 2017 à 14:26
Modifié le 13 déc. 2017 à 14:26
voici le code j'ai mis le code de la 3eme liste en commentaire , car j'ai rencontré des erreurs concernant ata.forEach(function(ent) {
voici le code de liste.js
liste.js
pour l'affichage oui j'ai passé par la page matériel.php puis j'ai constaté que ya pas une erreur dans le code liste.js
voici la capture d'écran
voici le code de liste.js
liste.js
$(document).ready(function() { console.log('document ready !'); $("#form-categorie").change(function() { var spec = $(this).val(); console.log('form-categorie CHANGE : ' + spec); $.ajax({ type : "POST", url: "liste.php", data : {categorie_id:spec}, dataType: 'json' }).done(function(reponse) { console.log(reponse); }); }); /*** sous catégorie****/ $("#form_sous_categorie").change(function() { var spec = $(this).val(); console.log('form_sous_categorie CHANGE : ' + spec); $.ajax({ type : "POST", url: "liste.php?sous_categorie_id=" + spec, dataType: 'json' }).done(function(reponse) { console.log(reponse); var data = $.parseJSON(reponse); }); }); /**** element ***/ /* $("#form_element").html(""); data.forEach(function(ent) { $("#form_element").prepend("<option value=\""+ent.code_element+"\">"+ent.Designation_element+"</option>"); }); */ });
pour l'affichage oui j'ai passé par la page matériel.php puis j'ai constaté que ya pas une erreur dans le code liste.js
voici la capture d'écran
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
13 déc. 2017 à 14:45
13 déc. 2017 à 14:45
Et quand tu fais des choix dans tes listes ... il se passe quoi ?
Car visiblement tu n'as pas essayé ... sinon y'aurait des choses écrites dans la console....
Et côté JS .. pense aussi à mettre le .fail
comme par exemple :
Car visiblement tu n'as pas essayé ... sinon y'aurait des choses écrites dans la console....
Et côté JS .. pense aussi à mettre le .fail
comme par exemple :
$.ajax({ type : "POST", url: "liste.php", data : {categorie_id:spec}, dataType: 'json' }).done(function(reponse) { console.log(reponse); }).fail(function (jqXHR, textStatus) { console.log('ERREUR AJAX ' + textStatus); });
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
13 déc. 2017 à 14:53
13 déc. 2017 à 14:53
ya pas d'affichage !! c a d il n' ya pas la récupération de la liste catégorie pour pouvoir faire le choix
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
13 déc. 2017 à 15:48
13 déc. 2017 à 15:48
Ben... ta liste form-categorie ... tu l'alimentes comment au départ ????
Car ce n'est pas le code actuellement en place qui doit le faire....
Car ce n'est pas le code actuellement en place qui doit le faire....
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
Modifié le 14 déc. 2017 à 11:42
Modifié le 14 déc. 2017 à 11:42
dans la page matériel.php
Voici un aperçu de code
Voici un aperçu de code
<label> les catégories *:</label> <div class="input-group"> <span class="input-group-addon"><i class="glyphicon glyphicon-th-list"></i></span> <select class="form-control" name="categorie" id="form-categorie"> <option value="">Séléctionner une catégorie</option>'; <?php $requete_liste= "SELECT * FROM `categorie` order by `designation_categorie` asc"; $resultat_liste = $conn->query($requete_liste) or die ('Erreur '.$requete_liste.' '.$conn->error); while($co = mysql_fetch_array($resultat_liste)){ $id_categorie=$co['id_categorie']; $designation_categorie=$co['designation_categorie'];?> <option value="<?php echo $id_categorie;?>"><?php echo $designation_categorie;?></option> <?php }?> </select> </div> <label> les sous catégories *:</label> <div class="input-group"> <span class="input-group-addon"><i class="glyphicon glyphicon-th-list"></i></span> <select class="form-control" id="form_sous_categorie" name="sous_categorie"> <option value="">Séléctionner une sous catégorie</option>'; </select> </div> <!--Element--> <label> les elements *:</label> <br> <div class="input-group"> <span class="input-group-addon"><i class="glyphicon glyphicon-th-list"></i></span> <select class="form-control" name="element" id="form_element"> <option value="">Séléctionner un élement</option> </select> </div>
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
>
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
14 déc. 2017 à 13:51
14 déc. 2017 à 13:51
c a d il n' ya pas la récupération de la liste catégorie pour pouvoir faire le choix
Pourtant, c'est le code suivant qui est sensé l'alimenté cette liste :
<select class="form-control" name="categorie" id="form-categorie"> <option value="">Séléctionner une catégorie</option>'; <?php $requete_liste= "SELECT * FROM `categorie` order by `designation_categorie` asc"; $resultat_liste = $conn->query($requete_liste) or die ('Erreur '.$requete_liste.' '.$conn->error); while($co = mysql_fetch_array($resultat_liste)){ $id_categorie=$co['id_categorie']; $designation_categorie=$co['designation_categorie'];?> <option value="<?php echo $id_categorie;?>"><?php echo $designation_categorie;?></option> <?php }?>
As tu vu qu'encore une fois... tu as mélangé du mysqli avec du vieux mysql ???
Si tu n'es pas capable de te relire.... va falloir aller prendre des cours de lecture....
Une fois par oubli ça peut arriver ... mais 50 fois de suite... c'est franchement grave.....
Donc.... remet au propre TOUT ton code avant de poursuivre.
Sinon on ne s'en sortira jamais....
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
14 déc. 2017 à 16:17
14 déc. 2017 à 16:17
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
14 déc. 2017 à 16:26
14 déc. 2017 à 16:26
Tu pourrais déplier le DEBUG (en cliquant sur la petite fleche devant ) et nous en montrer le contenu ?
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
14 déc. 2017 à 16:28
14 déc. 2017 à 16:28
Affiche également le code source "généré" de ta page web (depuis ton navigateur lorsque la page est affichée, CTRL + U ) et donne nous la partie qui correspond à la liste déroulante catégories.
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
Modifié le 17 déc. 2017 à 09:55
Modifié le 17 déc. 2017 à 09:55
le code source généré
<!-- catégorie--> <label> les catégories *:</label> <div class="input-group"> <span class="input-group-addon"><i class="glyphicon glyphicon-th-list"></i></span> <select class="form-control" name="categorie" id="form-categorie"> <option value="">Séléctionner une catégorie</option>'; <br /> <b>Notice</b>: Undefined index: id_categorie in <b></b> on line <b>190</b><br /> <option value="">Accessoire cuisine</option> <br /> <b>Notice</b>: Undefined index: id_categorie in <b></b> on line <b>190</b><br /> <option value="">Fourniture de bureau</option> <br /> <b>Notice</b>: Undefined index: id_categorie in <b></b> on line <b>190</b><br /> <option value="">Informatique et High-Tech</option> <br /> <b>Notice</b>: Undefined index: id_categorie in <b></b> on line <b>190</b><br /> <option value="">Ouvrage</option> <br /> <b>Notice</b>: Undefined index: id_categorie in <b></b> on line <b>190</b><br /> <option value="">Service bureau</option> <br /> <b>Notice</b>: Undefined index: id_categorie in <b></b> on line <b>190</b><br /> <option value="">Siège et mobilier de bureau</option> </select> </div> <label> les sous catégories *:</label> <div class="input-group"> <span class="input-group-addon"><i class="glyphicon glyphicon-th-list"></i></span> <select class="form-control" id="form_sous_categorie" name="sous_categorie"> <option value="">Séléctionner une sous catégorie</option>'; </select> </div> <!--Element--> <label> les elements *:</label> <br> <div class="input-group"> <span class="input-group-addon"><i class="glyphicon glyphicon-th-list"></i></span> <select class="form-control" name="element" id="form_element"> <option value="">Séléctionner un élement</option> </select> </div>
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
17 déc. 2017 à 11:21
17 déc. 2017 à 11:21
Tu as lu ce que tu viens dee coller ?
N'as tu pas vu ceci :
Notice</b>: Undefined index: id_categorie in <b></b> on line <b>190</b><br />
N'as tu pas vu ceci :
Notice</b>: Undefined index: id_categorie in <b></b> on line <b>190</b><br />
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
17 déc. 2017 à 12:06
17 déc. 2017 à 12:06
Sachant que, dans ton premier message tu nous as mis la structure de ta table... et que ton champ c'est :
`Id_categorie` (avec un I majuscule )
Donc ton code devrait être
C'est pour ça que pour éviter ce genre d'erreur... dans une BDD il est préférable de ne mettre que des minulscules dans le nom des champs... A savoir pour l'avenir...
`Id_categorie` (avec un I majuscule )
Donc ton code devrait être
$id_categorie=$co['Id_categorie'];
C'est pour ça que pour éviter ce genre d'erreur... dans une BDD il est préférable de ne mettre que des minulscules dans le nom des champs... A savoir pour l'avenir...
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
17 déc. 2017 à 16:18
17 déc. 2017 à 16:18
la catégorie est le code catégorie a été récupéré
voici une capture d''écran
quand je clique dans la 2éme liste sous catégorie
voici le code liste.php
voici une capture d''écran
quand je clique dans la 2éme liste sous catégorie
voici le code liste.php
<?php //Activation des erreurs PHP error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); require_once 'includes\db.php'; //récupération PROPRE des variables AVANT de les utiliser: $categorie_id = !empty($_POST['Id_categorie']) ? $_POST['Id_categorie'] : NULL; $sous_categorie_id = !empty($_POST['sous_categorie_id']) ? $_POST['sous_categorie_id'] : NULL; $results = array(); $results['DEBUG'] = array('POST'=>$_POST,'GET'=>$_GET); if($categorie_id ){ $fieldQuery = 'id_categorie'; $spec = $categorie_id; }elseif($sous_categorie_id){ $fieldQuery = 'designation_sous_categorie'; $spec = $sous_categorie_id; }else{ $results['error'] = "Aucune catégorie ou sous-catégorie envoyée..."; $results['post'] = $_POST; $spec = NULL; } if($spec){ $sql = "SELECT * FROM `sous_categorie` WHERE ".$fieldQuery."='".$spec."'"; $resultat_query = mysqli_query($conn,$sql); $results['query'] = $sql; while($data =mysqli_fetch_assoc($resultat_query)) { $results['datas'] = $data; } } // Encoder a l'aide de json avant de renvoyer echo json_encode($results); exit(); ?>
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
17 déc. 2017 à 16:28
17 déc. 2017 à 16:28
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
18 déc. 2017 à 14:19
18 déc. 2017 à 14:19
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
18 déc. 2017 à 16:06
18 déc. 2017 à 16:06
Tu te mélanges un peu ....
Côté JAVASCRIPT tu envois une variable qui a pour nom : categorie_id (tout en minuscule) (on peut le voir dans le DEBUG, à la ligne : "post:" )
Côté PHP (dans le fichier AJAX ) tu récupère la variable POST de la façon suivante :
Ne vois tu pas le problème ?
Côté JAVASCRIPT tu envois une variable qui a pour nom : categorie_id (tout en minuscule) (on peut le voir dans le DEBUG, à la ligne : "post:" )
Côté PHP (dans le fichier AJAX ) tu récupère la variable POST de la façon suivante :
$categorie_id = !empty($_POST['Id_categorie']) ? $_POST['Id_categorie'] : NULL;
Ne vois tu pas le problème ?
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
Modifié le 19 déc. 2017 à 10:35
Modifié le 19 déc. 2017 à 10:35
$categorie_id = !empty($_POST['id_categorie']) ? $_POST['id_categorie'] : NULL;
NB: rien n'a été change méme erreur
{DEBUG: {…}, error: "Aucune catégorie ou sous-catégorie envoyée...", post: {…}}
DEBUG
:
{POST: {…}, GET: Array(0)}
error
:
"Aucune catégorie ou sous-catégorie envoyée..."
post
:
{categorie_id: "3"}
__proto__
:
Object
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
>
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
19 déc. 2017 à 12:05
19 déc. 2017 à 12:05
Je recommence ....
Dans le code PHP ... tu as :
Dans ton code JS (tu le vois dans le debug ...) tu envois :
NE VOIS TU PAS UN SOUCI ???
indice ..... LE NOM DES VARIABLES N'EST PAS LE MEME....
Dans le code PHP ... tu as :
$categorie_id = !empty($_POST['id_categorie']) ? $_POST['id_categorie'] : NULL;
Dans ton code JS (tu le vois dans le debug ...) tu envois :
{categorie_id: "3"}
NE VOIS TU PAS UN SOUCI ???
indice ..... LE NOM DES VARIABLES N'EST PAS LE MEME....
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
19 déc. 2017 à 15:50
19 déc. 2017 à 15:50
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
19 déc. 2017 à 17:49
19 déc. 2017 à 17:49
Il faut que je vois le contenu COMPLET de DEBUG
Il faut que je sache ce que contient {POST: {…}
Il faut que je sache ce que contient {POST: {…}
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
19 déc. 2017 à 17:50
19 déc. 2017 à 17:50
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
20 déc. 2017 à 11:10
20 déc. 2017 à 11:10
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
20 déc. 2017 à 12:32
20 déc. 2017 à 12:32
Tu ne m'as toujours pas déplié la ligne où est marqué DEBUG .. c'est pourtant ça que je te demande depuis le début...
A la limite on va faire autrement.... mais pour ça j'ai besoin de ton code javascript corrigé que je puisse y ajouter des choses.
Merci de le coller sur le forum ( mais pas en image.... )
A la limite on va faire autrement.... mais pour ça j'ai besoin de ton code javascript corrigé que je puisse y ajouter des choses.
Merci de le coller sur le forum ( mais pas en image.... )
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
20 déc. 2017 à 14:22
20 déc. 2017 à 14:22
débug
Object
DEBUG
:
GET
:
Array(0)
length
:
0
__proto__
:
Array(0)
POST
:
id_categorie
:
"2"
__proto__
:
Object
__proto__
:
Object
datas
:
designation_sous_categorie
:
"Calculatrice"
id_categorie
:
"2"
__proto__
:
Object
query
:
"SELECT *
↵ FROM `sous_categorie`
↵ WHERE id_categorie='2'"
__proto__
:
constructor
:
ƒ Object()
hasOwnProperty
:
ƒ hasOwnProperty()
isPrototypeOf
:
ƒ isPrototypeOf()
propertyIsEnumerable
:
ƒ propertyIsEnumerable()
toLocaleString
:
ƒ toLocaleString()
toString
:
ƒ toString()
valueOf
:
ƒ valueOf()
__defineGetter__
:
ƒ __defineGetter__()
__defineSetter__
:
ƒ __defineSetter__()
__lookupGetter__
:
ƒ __lookupGetter__()
__lookupSetter__
:
ƒ __lookupSetter__()
get __proto__
:
ƒ __proto__()
set __proto__
:
ƒ __proto__()
liste.js
Object
DEBUG
:
GET
:
Array(0)
length
:
0
__proto__
:
Array(0)
POST
:
id_categorie
:
"2"
__proto__
:
Object
__proto__
:
Object
datas
:
designation_sous_categorie
:
"Calculatrice"
id_categorie
:
"2"
__proto__
:
Object
query
:
"SELECT *
↵ FROM `sous_categorie`
↵ WHERE id_categorie='2'"
__proto__
:
constructor
:
ƒ Object()
hasOwnProperty
:
ƒ hasOwnProperty()
isPrototypeOf
:
ƒ isPrototypeOf()
propertyIsEnumerable
:
ƒ propertyIsEnumerable()
toLocaleString
:
ƒ toLocaleString()
toString
:
ƒ toString()
valueOf
:
ƒ valueOf()
__defineGetter__
:
ƒ __defineGetter__()
__defineSetter__
:
ƒ __defineSetter__()
__lookupGetter__
:
ƒ __lookupGetter__()
__lookupSetter__
:
ƒ __lookupSetter__()
get __proto__
:
ƒ __proto__()
set __proto__
:
ƒ __proto__()
liste.js
$(document).ready(function() { console.log('document ready !'); $("#form-categorie").change(function() { var spec = $(this).val(); console.log('form-categorie CHANGE : ' + spec); $.ajax({ type : "POST", url: "liste.php", data : {id_categorie:spec}, dataType: 'json' }).done(function(reponse) { console.log(reponse); }).fail(function (jqXHR, textStatus) { console.log('ERREUR AJAX ' + textStatus); }); }); /*** sous catégorie****/ $("#form_sous_categorie").change(function() { var spec = $(this).val(); console.log('form_sous_categorie CHANGE : ' + spec); $.ajax({ type : "POST", url: "liste.php?sous_categorie_id=" + spec, dataType: 'json' }).done(function(reponse) { console.log(reponse); var data = $.parseJSON(reponse); }).fail(function (jqXHR, textStatus) { console.log('ERREUR AJAX ' + textStatus); }); }); /**** element ***/ $("#form_element").html(""); data.forEach(function(ent) { $("#form_element").prepend("<option value=\""+ent.code_element+"\">"+ent.Designation_element+"</option>"); }); });
deep_sea
Messages postés
201
Date d'inscription
mardi 10 mai 2016
Statut
Membre
Dernière intervention
10 décembre 2022
1
20 déc. 2017 à 14:23
20 déc. 2017 à 14:23
DEBUG
:
GET
:
Array(0)
length
:
0
__proto__
:
Array(0)
POST
:
id_categorie
:
"2"
__proto__
:
Object
__proto__
:
Object
:
GET
:
Array(0)
length
:
0
__proto__
:
Array(0)
POST
:
id_categorie
:
"2"
__proto__
:
Object
__proto__
:
Object
25 oct. 2017 à 11:59
le page liste .php
25 oct. 2017 à 12:22
ps: rien n'a été affcihé!!
25 oct. 2017 à 12:53
puis repostes nous le code ainsi modifié.
26 oct. 2017 à 12:09
page liste.php
page materiel.php
5 nov. 2017 à 16:10