Editer un formulaire
Résolu/Fermé
labourette
Messages postés
657
Date d'inscription
dimanche 24 août 2008
Statut
Membre
Dernière intervention
24 juillet 2016
-
Modifié par labourette le 21/03/2014 à 00:46
labourette Messages postés 657 Date d'inscription dimanche 24 août 2008 Statut Membre Dernière intervention 24 juillet 2016 - 16 avril 2014 à 10:21
labourette Messages postés 657 Date d'inscription dimanche 24 août 2008 Statut Membre Dernière intervention 24 juillet 2016 - 16 avril 2014 à 10:21
A voir également:
- Editer un formulaire
- Formulaire de réclamation facebook - Guide
- Comment editer un pdf - Guide
- Formulaire instagram compte suspendu - Guide
- Confirmer le nouvel envoi du formulaire err_cache_miss - Forum Google Chrome
- Confirmation de l'envoi d'un formulaire html ✓ - Forum HTML
17 réponses
Azraka
Messages postés
252
Date d'inscription
mercredi 11 juin 2008
Statut
Membre
Dernière intervention
5 juin 2014
13
21 mars 2014 à 09:49
21 mars 2014 à 09:49
Bonjour,
Le var_dump($nb) se trouve avant l'affectation de $nb, qu'est-ce que ça donne en le plaçant après ?
Le var_dump($nb) se trouve avant l'affectation de $nb, qu'est-ce que ça donne en le plaçant après ?
labourette
Messages postés
657
Date d'inscription
dimanche 24 août 2008
Statut
Membre
Dernière intervention
24 juillet 2016
6
Modifié par labourette le 22/03/2014 à 22:43
Modifié par labourette le 22/03/2014 à 22:43
Bonjour,
Voilà mes 3 requètes, si je met juste la première requète qui correspond à la table "tb_gestion_adherent" tout fonctionne
Sinon cela me retourne "boolean true" en ayant changé de place le var_dum et j'ai fait des requète préparée. Mes données ne se réaffiche pas dans le formulaire par contre dans ma BDD les données on été rajouté.
Si vous pouvez essayé de m'aider en vous remerciant par avance
Voilà mes 3 requètes, si je met juste la première requète qui correspond à la table "tb_gestion_adherent" tout fonctionne
Sinon cela me retourne "boolean true" en ayant changé de place le var_dum et j'ai fait des requète préparée. Mes données ne se réaffiche pas dans le formulaire par contre dans ma BDD les données on été rajouté.
Si vous pouvez essayé de m'aider en vous remerciant par avance
case 'edit': $sql = "SELECT * FROM tb_gestion_adherent WHERE id_adherent='" . $PARAM['ID_ADHERENT'] . "' ORDER BY nom ASC"; $requete = $bdd->prepare($sql); $requete->execute(); $nb = $requete->setFetchMode(PDO::FETCH_OBJ); $donnees = $requete->fetch(); if(preg_match('#(\d{4})-(\d{1,2})-(\d{1,2})#is', $donnees->date_naissance, $match)) $date = array(1=>$match[3],2=>$match[2],3=>$match[1]); $sql = "SELECT * FROM tb_gestion_admin WHERE id_gestion_admin='" . $PARAM['ID_GESTION_ADMIN'] . "' "; $resultats = $bdd->prepare($sql); $resultats->execute(); $nb = $resultats->setFetchMode(PDO::FETCH_OBJ); var_dump($nb); $donnees = $resultats->fetch(); $sql = "SELECT * FROM tb_gestion_membre WHERE id_membre='" . $PARAM['ID_MEMBRE'] . "' "; $resultats = $bdd->prepare($sql); $resultats->execute(); $nb = $resultats->setFetchMode(PDO::FETCH_OBJ); $donnees = $resultats->fetch(); break;
labourette
Messages postés
657
Date d'inscription
dimanche 24 août 2008
Statut
Membre
Dernière intervention
24 juillet 2016
6
28 mars 2014 à 15:25
28 mars 2014 à 15:25
Bonjour
Encore besoin de vous je ne sais pas si mes explications sont explicites mais si quelqu'un d'entre vous pourrais essayer de m'aider cela me rendrais super content.
Je vous remercie de votre aide
Encore besoin de vous je ne sais pas si mes explications sont explicites mais si quelqu'un d'entre vous pourrais essayer de m'aider cela me rendrais super content.
Je vous remercie de votre aide
Pitet
Messages postés
2826
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
21 juillet 2022
525
Modifié par Pitet le 28/03/2014 à 15:44
Modifié par Pitet le 28/03/2014 à 15:44
Salut,
$nb correspond au retour de la méthode setFetchMode() qui indique que le mode de récupération a bien été changé, ce n'est pas vraiment ce qui nous intéresse.
Fait plutôt un var_dump de tes variables $sql pour voir exactement quelles requêtes tu exécutes et test les directement dans PhpMyAdmin ou un autre client Mysql pour vérifier leurs résultats.
Enfin, les requêtes préparées ne sont pas vraiment utile dans ton code puisque tu écris les paramètres directement dans la requête, mais ce n'est pas la cause de ton problème puisque le résultat est le même.
Bonne journée
$nb correspond au retour de la méthode setFetchMode() qui indique que le mode de récupération a bien été changé, ce n'est pas vraiment ce qui nous intéresse.
Fait plutôt un var_dump de tes variables $sql pour voir exactement quelles requêtes tu exécutes et test les directement dans PhpMyAdmin ou un autre client Mysql pour vérifier leurs résultats.
Enfin, les requêtes préparées ne sont pas vraiment utile dans ton code puisque tu écris les paramètres directement dans la requête, mais ce n'est pas la cause de ton problème puisque le résultat est le même.
Bonne journée
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
labourette
Messages postés
657
Date d'inscription
dimanche 24 août 2008
Statut
Membre
Dernière intervention
24 juillet 2016
6
28 mars 2014 à 22:35
28 mars 2014 à 22:35
Bonjour
Merci de ta réponse.
En fait ma réquète ci-dessous fonctionne
mais le problème ça n'affiche pas les données des autres tables
Voici les requète INSERT que j'ai si tu peux me donner des conseils
Merci
Merci de ta réponse.
En fait ma réquète ci-dessous fonctionne
case 'edit': $sql = "SELECT * FROM tb_adherent WHERE id_adherent='" . $PARAM['ID_ADHERENT'] . "' ORDER BY nom ASC"; $requete = $bdd->prepare($sql); $requete->execute(); $nb = $requete->setFetchMode(PDO::FETCH_OBJ); $donnees = $requete->fetch(); break;
mais le problème ça n'affiche pas les données des autres tables
Voici les requète INSERT que j'ai si tu peux me donner des conseils
Merci
case 'ajouter': $sql = "INSERT INTO tb_adherent (civilite, nom, prenom, adresse_mail, date_naissance, telephone_fixe, telephone_mobile, adresse, lieu_dit, code_postal, ville, login, pass) VALUES (:civilite, :nom, :prenom, :adresse_mail, :date_naissance, :telephone_fixe, :telephone_mobile, :adresse, :lieu_dit, :code_postal, :ville, :login, :pass)"; $requete = $bdd->prepare($sql); $requete->bindParam(':civilite', $PARAM['CIVILITE']); $requete->bindParam(':nom', $PARAM['NOM']); $requete->bindParam(':prenom', $PARAM['PRENOM']); $requete->bindParam(':adresse_mail', $PARAM['ADRESSE_MAIL']); $requete->bindParam(':date_naissance', $PARAM['DATE_NAISSANCE']); $requete->bindParam(':telephone_fixe', $PARAM['TELEPHONE_FIXE']); $requete->bindParam(':telephone_mobile', $PARAM['TELEPHONE_MOBILE']); $requete->bindParam(':adresse', $PARAM['ADRESSE']); $requete->bindParam(':lieu_dit', $PARAM['LIEU_DIT']); $requete->bindParam(':code_postal', $PARAM['CODE_POSTAL']); $requete->bindParam(':ville', $PARAM['VILLE']); $requete->bindParam(':login', $PARAM['LOGIN']); $requete->bindParam(':pass', $PARAM['PASS']); $requete->execute(); $adherent_insert = $bdd->lastInsertId(); if (isset($_POST['categorie_statut'])){ foreach($PARAM['CATEGORIE_STATUT'] as $categorie_statut){ $sql = 'INSERT INTO tb_gestion_admin (rid_adherent, rid_categorie_statut) VALUES ("'.$adherent_insert.'", "'.$categorie_statut.'")'; $requete = $bdd->prepare($sql); $requete->bindParam(':rid_adherent', $adherent_insert); $requete->bindParam(':rid_categorie_statut', $categorie_statut); $requete->execute(); } $sql = "INSERT INTO tb_gestion_membre(rid_adherent, categorie_actif, categorie_non_actif, sortant, annee_admission, annee_demission) VALUES (:rid_adherent, :categorie_actif, :categorie_non_actif, :sortant, :annee_admission, :annee_demission)"; $requete = $bdd->prepare($sql); $requete->bindParam(':rid_adherent', $adherent_insert); $requete->bindParam(':categorie_actif', $PARAM['CATEGORIE_ACTIF']); $requete->bindParam(':categorie_non_actif', $PARAM['CATEGORIE_NON_ACTIF']); $requete->bindParam(':sortant', $PARAM['SORTANT']); $requete->bindParam(':annee_admission', $PARAM['ANNEE_ADMISSION']); $requete->bindParam(':annee_demission', $PARAM['ANNEE_DEMISSION']); $requete->execute(); } break;
labourette
Messages postés
657
Date d'inscription
dimanche 24 août 2008
Statut
Membre
Dernière intervention
24 juillet 2016
6
29 mars 2014 à 23:08
29 mars 2014 à 23:08
Bonjour
Pouvez vous regarder mon problème afin de pouvoir récuperer les valeurs de mon formulaire pour pouvoir les modifier.
Comme je le dit plus haut je peux récupérer les données de la table "tb_adherent" mais pour les autres tables je ne sais pas comment je peux faire.
Je vous remercie beaucoup.
Pouvez vous regarder mon problème afin de pouvoir récuperer les valeurs de mon formulaire pour pouvoir les modifier.
Comme je le dit plus haut je peux récupérer les données de la table "tb_adherent" mais pour les autres tables je ne sais pas comment je peux faire.
Je vous remercie beaucoup.
labourette
Messages postés
657
Date d'inscription
dimanche 24 août 2008
Statut
Membre
Dernière intervention
24 juillet 2016
6
Modifié par labourette le 7/04/2014 à 13:59
Modifié par labourette le 7/04/2014 à 13:59
Bonjour
Plusieurs jours sans trouver la solution à mon problème, je commence vraiment à désespérer et souhaite vraiment de l'aide de votre part en vous remerciant sincérement.
Je vous réexplique mon soucis plus clairement.
Voici mes 4 tables concernées
J'ai un seul et unique formulaire pour insérer les données.
Voici les liens avec lesquels je modifie et supprime les données
Mon problème est le suivant les données concernant la table tb_adherent tout se passe très bien editer, modifier et supprimer mais pour les autres tables rien ne s'affiche dans le formulaire lors de l'insertion de données par contre dans ma BDD les INSERT se font bien
Voici ma case edit
Et pour finir voici mes checkbox et ma liste déroulante.
J'espère avoir été le plus clair possible afin que vous puissiez m'aider merci infiniment.
Plusieurs jours sans trouver la solution à mon problème, je commence vraiment à désespérer et souhaite vraiment de l'aide de votre part en vous remerciant sincérement.
Je vous réexplique mon soucis plus clairement.
Voici mes 4 tables concernées
CREATE TABLE IF NOT EXISTS 'ma_base'.'tb_adherent' ( 'id_adherent' INT NOT NULL AUTO_INCREMENT, 'civilite' VARCHAR(45) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' NULL, 'nom' VARCHAR(45) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' NULL, 'prenom' VARCHAR(45) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' NULL, 'adresse_mail' VARCHAR(45) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' NULL, 'date_naissance' DATE NULL, 'telephone_fixe' VARCHAR(45) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' NULL, 'telephone_mobile' VARCHAR(45) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' NULL, 'adresse' VARCHAR(45) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' NULL, 'lieu_dit' VARCHAR(45) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' NULL, 'code_postal' VARCHAR(5) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' NULL, 'ville' VARCHAR(45) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' NULL, 'login' VARCHAR(45) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' NULL, 'pass' VARCHAR(45) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' NULL, PRIMARY KEY ('id_adherent')) ENGINE = InnoDB;
CREATE TABLE IF NOT EXISTS 'ma_base'.'tb_categorie_actif' ( 'id_categorie_actif' INT NOT NULL AUTO_INCREMENT, 'categorie_actif' VARCHAR(45) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' NOT NULL, PRIMARY KEY ('id_categorie_actif')) ENGINE = InnoDB;
CREATE TABLE IF NOT EXISTS 'ma_base'.'tb_categorie_statut' ( 'id_categorie_statut' INT NOT NULL AUTO_INCREMENT, 'categorie_statut' VARCHAR(45) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' NOT NULL, PRIMARY KEY ('id_categorie_statut')) ENGINE = InnoDB;
CREATE TABLE IF NOT EXISTS 'ma_base'.'tb_gestion_membre' ( 'id_gestion_membre' INT NOT NULL AUTO_INCREMENT, 'rid_adherent' INT NOT NULL, 'categorie_actif' VARCHAR(50) NULL, 'sortant' BIT NULL, 'annee_admission' VARCHAR(4) NULL, 'annee_demission' VARCHAR(4) NULL, PRIMARY KEY ('id_gestion_membre', 'rid_adherent'), INDEX 'rid_adherent' ('rid_adherent' ASC), CONSTRAINT 'fk_tb_adherent' FOREIGN KEY ('rid_adherent') REFERENCES 'ma_base'.'tb_adherent' ('id_adherent') ON DELETE CASCADE ON UPDATE CASCADE) ENGINE = InnoDB;
J'ai un seul et unique formulaire pour insérer les données.
Voici les liens avec lesquels je modifie et supprime les données
<td> <a href="./index.php?body=gestion_membre&type=compte&action=edit&id_adherent=<?php echo $donnees->id_adherent;?>&voir=fiche" onclick="ad_user()"> <img src="image/voir.png" width="22px" height="22px" alt="Fiche détaillée du membre" title="Fiche détaillé du membre" style="margin:0px 15px 0px 0px; border:none" /></a> <a href="./index.php?body=gestion_membre&type=compte&action=edit&id_adherent=<?php echo $donnees->id_adherent;?>" onclick="ad_user()"> <img src="image/modifier.png" width="22px" height="22px" align="top" alt="Modifier le membre" title="Modifier le membre" style="margin:0px 15px 0px 0px; border:none" /></a> <a href="./index.php?body=gestion_membre&type=compte&action=supprimer&id_adherent=<?php echo $donnees->id_adherent;?>"> <img src="image/supprimer.png" width="22px" height="22px" alt="Supprimer le membre" title="Supprimer le membre" style="margin:0px 15px 0px 0px; border:none" /></a> </td>
Mon problème est le suivant les données concernant la table tb_adherent tout se passe très bien editer, modifier et supprimer mais pour les autres tables rien ne s'affiche dans le formulaire lors de l'insertion de données par contre dans ma BDD les INSERT se font bien
Voici ma case edit
case 'edit': $sql = ("SELECT * FROM tb_adherent WHERE id_adherent='" . $PARAM['ID_ADHERENT'] . "' ORDER BY nom ASC"); $requete = $bdd->prepare($sql); $requete->execute(); $reponse = $requete->setFetchMode(PDO::FETCH_ASSOC); $donnees = $requete->fetch(); break;
Et pour finir voici mes checkbox et ma liste déroulante.
$sql = "SELECT * FROM tb_categorie_statut"; $requete1 = $bdd->prepare($sql); $requete1->execute(); while ($donnees = $requete1->fetch(PDO::FETCH_ASSOC)) { echo"<tr>"; // Affichage d'un des champs echo"<td width='25%'>".$donnees['categorie_statut']."</td>"; echo"<td width='25%'><input type='checkbox' name='categorie_statut[]' value='".$donnees['id_categorie_statut']."'></td>"; } $requete1->closeCursor(); ####################################################################################################################################### echo"<td width='25%'>"; echo'<select style="width: auto" name="categorie_actif" class="content_input" disabled="">'; echo"<option value=''>- - - Membre Actif - - -</option>"; $sql = "SELECT * FROM tb_categorie_actif"; $resultat2 = $bdd->prepare($sql); $resultat2->execute(); while ($donnees = $resultat2->fetch(PDO::FETCH_ASSOC)) { echo"<option value=".$donnees["categorie_actif"].">".$donnees["categorie_actif"]."</option>\n"; } echo"</select>"; echo"</td>"; $resultat2->closeCursor();
J'espère avoir été le plus clair possible afin que vous puissiez m'aider merci infiniment.
labourette
Messages postés
657
Date d'inscription
dimanche 24 août 2008
Statut
Membre
Dernière intervention
24 juillet 2016
6
9 avril 2014 à 07:03
9 avril 2014 à 07:03
Bonjour
Pour être plus simple je voudrais pouvoir garder les valeurs sélectionner dans une liste déroulante et pour les checkbox également.
J'espère de tout coeur que vous pourrez m'aider je ne peux plus avancé sur mon projet.
Un grand merci.
Pour être plus simple je voudrais pouvoir garder les valeurs sélectionner dans une liste déroulante et pour les checkbox également.
J'espère de tout coeur que vous pourrez m'aider je ne peux plus avancé sur mon projet.
Un grand merci.
labourette
Messages postés
657
Date d'inscription
dimanche 24 août 2008
Statut
Membre
Dernière intervention
24 juillet 2016
6
Modifié par labourette le 10/04/2014 à 14:17
Modifié par labourette le 10/04/2014 à 14:17
Bonjour
J'ai essayé de faire cela mais bien sur ça ne fonctionne pas.
Pouvez vous essayer de me donner un coup de main s'il vous plait
Je vous remercie
J'ai essayé de faire cela mais bien sur ça ne fonctionne pas.
Pouvez vous essayer de me donner un coup de main s'il vous plait
Je vous remercie
<option value=" <?php echo $donnees['nom_instrument']; ?>" <?php if (!empty($_POST['categorie_instrument'])) {if ($donnees['nom_instrument']==$donnees['categorie_instrument'])($donnees['nom_instrument']==$donnees['categorie_instrument']) echo ('selected="selected"');} ?>> <?php echo $donnees['nom_instrument'];?> </option>
Pitet
Messages postés
2826
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
21 juillet 2022
525
10 avril 2014 à 14:53
10 avril 2014 à 14:53
Salut,
Pour garder la valeurs déjà sélectionnée dans la liste, il te faut obligatoirement deux informations :
- les éléments de la liste
- l'élément déjà sélectionnée
Une fois ces deux infos récupérées, tu peux construire ta liste comme ceci par exemple :
Bonne journée
Pour garder la valeurs déjà sélectionnée dans la liste, il te faut obligatoirement deux informations :
- les éléments de la liste
- l'élément déjà sélectionnée
Une fois ces deux infos récupérées, tu peux construire ta liste comme ceci par exemple :
// les données de la liste $donnees = array('data1', 'data2', 'data3', 'data4', 'data5'); // la donnée déjà selectionnée $donneeSelected = 'data3'; // EXEMPLE 1 // construction de la balise select echo '<select>'; echo '<option value="">Défaut</option>'; foreach ($donnees as $donnee) { // on initialise l'attribut selected à vide $attributSelected = ''; // si la donnée qu'on affiche correspond à la donnée selectionnée, on défini l'attribut selected if ($donnee == $donneeSelected) { $attributSelected = ' selected'; } // on affiche la balise option echo '<option value="' . $donnee . '"' . $attributSelected . '>' . $donnee . '</option>'; } echo '</select>'; // EXEMPLE 2 : identique mais plus compacte // construction de la balise select echo '<select>'; echo '<option value="">Défaut</option>'; foreach ($donnees as $donnee) { echo '<option value="' . $donnee . '"' . ($donnee == $donneeSelected ? ' selected' : '') . '>' . $donnee . '</option>'; } echo '</select>';
Bonne journée
labourette
Messages postés
657
Date d'inscription
dimanche 24 août 2008
Statut
Membre
Dernière intervention
24 juillet 2016
6
10 avril 2014 à 15:31
10 avril 2014 à 15:31
Bonjour
Merci pour toutes ses infos, avec sa ça devrai le faire encore merci.
Cordialement.
Merci pour toutes ses infos, avec sa ça devrai le faire encore merci.
Cordialement.
labourette
Messages postés
657
Date d'inscription
dimanche 24 août 2008
Statut
Membre
Dernière intervention
24 juillet 2016
6
11 avril 2014 à 22:48
11 avril 2014 à 22:48
Bonjour
S'il te plait tu peux me corriger ça ne fonctionne pas. Je t'envoi mon tableau et le script.
Merci
Je regarde encore si jamais j'arrive à trouver la bonne syntaxe.
Merci beaucoup
S'il te plait tu peux me corriger ça ne fonctionne pas. Je t'envoi mon tableau et le script.
Merci
$PARAM = array ( 'ID_GESTION_REPERTOIRE' => isset($_REQUEST['id_gestion_repertoire']) ? $_REQUEST['id_gestion_repertoire'] : '', 'NUMERO_REPERTOIRE' => isset($_POST['numero_repertoire']) ? trim($_POST['numero_repertoire']) : '', 'TITRE_REPERTOIRE' => isset($_POST['titre_repertoire']) ? stripslashes(htmlspecialchars(ucfirst(trim($_POST['titre_repertoire'])))) : '', 'CATEGORIE_INSTRUMENT' => isset($_POST['categorie_instrument']) ? $_POST['categorie_instrument'] : '', 'ID_CATEGORIE_INSTRUMENT' => isset($_REQUEST['id_categorie_instrument']) ? $_REQUEST['id_categorie_instrument'] : '', 'NOM_INSTRUMENT' => isset($_POST['nom_instrument']) ? $_POST['nom_instrument'] : '' );
$sql = ("SELECT * FROM tb_categorie_instrument") or die(print_r($bdd->errorInfo())); $requete2 = $bdd->prepare($sql); $requete2->execute(); echo'<td width="30%">'; echo'<select style="width: auto" name="nom_instrument" id="nom_instrument "class="content_input" disabled="">'; echo'<option value="">- - - Nom Instrument - - -</option>'; foreach($PARAM['NOM_INSTRUMENT'] as $nom_instrument){ // on initialise l'attribut selected à vide $attributSelected = ''; // si la donnée qu'on affiche correspond à la donnée selectionnée, on défini l'attribut selected if ($PARAM['NOM_INSTRUMENT'] == $nom_instrument) { $attributSelected = ' selected'; } // on affiche la balise option echo '<option value="' . $donnees['nom_instrument'] . '"' . $attributSelected . '>' . $donnees['nom_instrument'] . '</option>'; } echo '</select>'; echo"</td>"; $requete2->closeCursor();
Je regarde encore si jamais j'arrive à trouver la bonne syntaxe.
Merci beaucoup
labourette
Messages postés
657
Date d'inscription
dimanche 24 août 2008
Statut
Membre
Dernière intervention
24 juillet 2016
6
13 avril 2014 à 00:17
13 avril 2014 à 00:17
Bonjour
Très découragé je n'arrive pas à mettre en place ce sript, pouvez-vous me donner un coup de main pour enfin que je puisse bien assimilé les listes déroulantes dynamique.
Je vous ai mis mon tableau ci-dessus.
En vous remerciant.
Très découragé je n'arrive pas à mettre en place ce sript, pouvez-vous me donner un coup de main pour enfin que je puisse bien assimilé les listes déroulantes dynamique.
Je vous ai mis mon tableau ci-dessus.
En vous remerciant.
labourette
Messages postés
657
Date d'inscription
dimanche 24 août 2008
Statut
Membre
Dernière intervention
24 juillet 2016
6
13 avril 2014 à 00:39
13 avril 2014 à 00:39
Bonjour
Merci de votre aide j'ai fini par résoudre mon problème.
Merci de votre aide j'ai fini par résoudre mon problème.
$donneeSelected = $donnees['categorie_instrument']; $sql = ("SELECT * FROM tb_categorie_instrument") or die(print_r($bdd->errorInfo())); $requete2 = $bdd->prepare($sql); $requete2->execute(); echo'<td width="30%">'; echo'<select style="width: auto" name="categorie_instrument" id="categorie_instrument "class="content_input" disabled="">'; echo '<option value="">Défaut</option>'; foreach ($donnees as $donnee) { echo '<option value="' . $donnee . '"' . ($donnee == $donneeSelected ? ' selected' : '') . '>' . $donnee . '</option>'; } echo '</select>'; echo"</td>"; $requete2->closeCursor();
labourette
Messages postés
657
Date d'inscription
dimanche 24 août 2008
Statut
Membre
Dernière intervention
24 juillet 2016
6
13 avril 2014 à 18:43
13 avril 2014 à 18:43
Bonjour
En fait je me suis réjoui trop vite.
Avec le script ci-dessus dans la liste déroulante ça m'affiche pas la liste de ma BDD cela me retourne les champs.
Mais si je rjoute une boucle while ça fonctionne bien à l'exeption que dans la liste ça affiche également le id_categorie_instrument.
Tu peux si tu as un peu de temps me corriger ma requète s'il te plait peut-être il y a plus simple.
Je te remercie
En fait je me suis réjoui trop vite.
Avec le script ci-dessus dans la liste déroulante ça m'affiche pas la liste de ma BDD cela me retourne les champs.
Mais si je rjoute une boucle while ça fonctionne bien à l'exeption que dans la liste ça affiche également le id_categorie_instrument.
Tu peux si tu as un peu de temps me corriger ma requète s'il te plait peut-être il y a plus simple.
Je te remercie
$donneeSelected = $donnees['categorie_instrument']; $sql = ("SELECT * FROM tb_categorie_instrument") or die(print_r($bdd->errorInfo())); $requete2 = $bdd->prepare($sql); $requete2->execute(); echo'<td width="30%">'; echo'<select style="width: auto" name="categorie_instrument" id="categorie_instrument "class="content_input" disabled="">'; echo '<option value="">- - - Instrument - - -</option>'; while ($donnees = $requete2->fetch(PDO::FETCH_ASSOC)) { foreach ($donnees as $categorie_instrument) { echo '<option value="' . $categorie_instrument . '"' . ($categorie_instrument == $donneeSelected ? ' selected' : '') . '>' . $categorie_instrument . '</option>'; } } echo '</select>'; echo"</td>"; $requete2->closeCursor();
Pitet
Messages postés
2826
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
21 juillet 2022
525
15 avril 2014 à 10:38
15 avril 2014 à 10:38
Salut,
Je ne connait pas exactement la structure de ta bdd ni la manière dont tu souhaites afficher ta liste. En général pour les listes, on utilise un identifiant pour l'attrtibut value et un nom pour le contenu de la balise option.
Supposons que tu ais deux champs dans ta table nommé id_categorie et nom_categorie, tu peux essayer quelque chose comme ca :
Dans cet exemple, la variable $donneeSelected doit correspondre à un identifiant de liste. Tu n'es pas obligé de travailler avec des identifiants, tu peux utiliser uniquement les noms s'ils sont uniques.
Bonne journée
Je ne connait pas exactement la structure de ta bdd ni la manière dont tu souhaites afficher ta liste. En général pour les listes, on utilise un identifiant pour l'attrtibut value et un nom pour le contenu de la balise option.
Supposons que tu ais deux champs dans ta table nommé id_categorie et nom_categorie, tu peux essayer quelque chose comme ca :
$donneeSelected = $donnees['categorie_instrument']; $sql = ("SELECT id_categorie, nom_categorie FROM tb_categorie_instrument") or die(print_r($bdd->errorInfo())); $requete2 = $bdd->prepare($sql); $requete2->execute(); echo'<td width="30%">'; echo'<select style="width: auto" name="categorie_instrument" id="categorie_instrument "class="content_input" disabled="">'; echo '<option value="">- - - Instrument - - -</option>'; while ($donnees = $requete2->fetch(PDO::FETCH_ASSOC)) { echo '<option value="' . $donnees['id_categorie'] . '"' . ($donnees['id_categorie'] == $donneeSelected ? ' selected' : '') . '>' . $donnees['nom_categorie'] . '</option>'; } echo '</select>'; echo"</td>"; $requete2->closeCursor();
Dans cet exemple, la variable $donneeSelected doit correspondre à un identifiant de liste. Tu n'es pas obligé de travailler avec des identifiants, tu peux utiliser uniquement les noms s'ils sont uniques.
Bonne journée
labourette
Messages postés
657
Date d'inscription
dimanche 24 août 2008
Statut
Membre
Dernière intervention
24 juillet 2016
6
16 avril 2014 à 10:21
16 avril 2014 à 10:21
Bonjour
Merci de ton aide vraiment.
En fait comme tu me l'a dit ma liste à des noms unique j'ai tout simplement enlevé de ma BDD l'id et tout fonctionne à merveille.
Merci pour tout.
Cordialement
Merci de ton aide vraiment.
En fait comme tu me l'a dit ma liste à des noms unique j'ai tout simplement enlevé de ma BDD l'id et tout fonctionne à merveille.
Merci pour tout.
Cordialement