Bonjour,
actuellement je cherche à réaliser un programme qui permette de supprimer des données de ma base de données en fonction d'un choix réalisé par un utilisateur dans une liste déroulante.
L'utilisateur a accès à une liste déroulante avec le listage d'un (ou plusieurs) champ(s) de ma base de données grâce à cette page :
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41 <body> <?php include 'connectionbdd.php'; // permet la connection à la base de données grâce au fichier connectionbdd.php ?> <h1> Supprimer une association </h1> <form action="traitementsupprimassociation.php" method="post"> <label for="LIBELLE"> Nom de l'association : </label> <select name="LIBELLE" id="LIBELLE"> <?php $reponse = $bdd->query('SELECT LIBELLE FROM association'); while ($donnees = $reponse->fetch()) { ?> <option value="<?php echo $donnees['LIBELLE']; ?>"> <?php echo $donnees['LIBELLE']; ?> </option> <?php } ?> </select> </br> <label for="TAG"> TAG de l'association : </label> <select name="TAG" id="TAG"> <?php $reponse2 = $bdd->query('SELECT TAG FROM association'); while ($donnees2 = $reponse2->fetch()) { ?> <option value="<?php echo $donnees2['TAG']; ?>"> <?php echo $donnees2['TAG']; ?> </option> <?php } ?> </select> </br> <input type= "submit" value= "Supprimer"> </br> </form> </body> </html>
Le but de la page "traitementsupprimassociation.php" est de supprimer de la bdd les données sélectionnées dans la liste par l'utilisateur.
J'ai réalisé la page :
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33 <?php include 'connectionbdd.php'; // permet la connection à la base de données grâce au fichier connectionbdd.php if (isset($_POST['LIBELLE'])) { // on recherche l'id de l'association à supprimer $sql = 'SELECT ID FROM association WHERE LIBELLE = "'.$_POST['LIBELLE'].'"'; // on lance la requête (mysql_query) et on impose un message d'erreur si la requête ne se passe pas bien (or die) $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error()); // on recupere le resultat sous forme d'un tableau $data = mysql_fetch_array($req); // on recupere la valeur qui nous intersse $id_association = $data['ID']; // on libère l'espace mémoire alloué pour cette interrogation de la base mysql_free_result ($req); // lancement de la requête pour effacer notre association $sql ='DELETE from association WHERE LIBELLE="'.$_POST['LIBELLE'].'"'; // on exécute la requête (mysql_query) et on affiche un message au cas où la requête ne se passait pas bien (or die) mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error()); // un petit message afin de voir ce qui s'est passé echo 'Nous venons de supprimer '.$_POST['LIBELLE'].' de la base'; } else { echo 'La variable de notre formulaire n\'est pas initialisée.'; } ?>
Mon problème est que je reçois ce message d'erreur : Deprecated: mysql_query() et je n'arrive pas à trouver de solutions.
PS : J'ai mis deux valeurs à choisir dans la liste lors de la première page mais pour mes tests, je test avec une seule des deux valeurs.
Partager