[PHP] Requête suppression et liste déroulante

nasbe Messages postés 30 Statut Membre -  
 lauraM -
Bonjour,

J'ai créé une liste déroulante qui affiche les soirées agendées d'un établissement, j'aimerai que depuis celle-ci, on puisse sélectionner une soirée et la supprimer. Ma liste déroulante est correcte, elle affiche bien toute les occurences de la table. Simplement c'est ma requête de suppression qui ne joue pas. Lorsque je clique sur le bouton supprimer, rien ne se passe, si quelqu'un aurait-une idée, merci d'avance.

Pour info, lorsque je fais un delete sur la table depuis MySQL, la requete correspond à ceci :

Delete From `soiree`where Convert(`NomSoiree` USING utf8) = 'nom de la soiree'



<?php

// Création de la liste déroulante pour les  soirées
//Connexion à la base de donnée
$bd ='escobar';
$lien = mysql_pconnect ("$hostddb", "$loginddb", "$passddb");
mysql_select_db("$baseddb");
$table = 'soiree';
$ListeSoiree = 0;
	
	// Si l'authentification est incorrecte on affiche un message
	if ($lien == FALSE){
		echo "connexion impossible à la base $bd";
	} else {

		$RequeteSelectionSoiree = mysql_query ("SELECT NomSoiree FROM $table ORDER BY NomSoiree");
		if ($RequeteSelectionSoiree == FALSE){
			echo "erreur de resultat";
			echo mysql_error();
		} else {
			
			//On place dans une variable les attributs de notre liste déroulante ainsi que la valeur par défaut.
			$ListeSoiree = "<SELECT NAME='ListeSoiree'>";
			$ListeSoiree.= "<OPTION VALUE=0>Choisissez</OPTION>";
			
				// On boucle sur la table afin d'obtenir la totalité des valeurs de la base de donnée, on les insère dans la liste déroulante
				while ($TableauSoiree = mysql_fetch_array($RequeteSelectionSoiree)) {
				$NomSoiree = $TableauSoiree["NomSoiree"];
				$ListeSoiree .= "<OPTION VALUE='$NomSoiree'>$NomSoiree</OPTION>";
				}
				$ListeSoiree .= "</SELECT>";
		}
	}		
	
// Fermeture de la base
mysql_close($lien);
?>


Voici maintenant le code de ma requête de suppression

if ( $_POST['Supprimer'] == 'Supprimer une soiree' ) {

	// Connexion à la base de donnée
	$bd ='escobar';
	$lien = mysql_pconnect ("$hostddb", "$loginddb", "$passddb");
	mysql_select_db("$baseddb");
	$table = 'soiree';
	
	// Si le l'authentification est incorrecte on affiche un message
	if ($lien == FALSE){
		echo "connexion impossible à la base $bd";
	} else {
	
	
	// Récupération des données rentrées par l'utilisateur
	$RecuperationSoiree = $_REQUEST['ListeSoiree'];
	
		
	// Sinon on exécute la requête d'insertion
	$RequeteSuppression="delete from `$table` where NomSoiree = $RecuperationSoiree";
	echo $RequeteSuppression."\n";
	mysql_query($RequeteSuppression);
			
	}
	
	// Fermeture de la base
	mysql_close();
} 
?>



et le formulaire




<fieldset>
			<legend>Supprimer une soirée</legend>
			
				<table>
				<tr></tr>
				<tr>
					<td>Nom de la soirée</td>
					<td><?php print $ListeSoiree;?></td>
				</tr>
				<tr>
					<td></td>
					<td><input type ="submit" name = "Supprimer"  value="Supprimer une soirée"></td>
				</tr>
				</table>
		</fieldset>
A voir également:

2 réponses

dindoun Messages postés 1047 Statut Membre 135
 
la réposne est dans la questgion : recopie la requete au lieu d'inventer
0
nasbe Messages postés 30 Statut Membre
 
Ben j'ai essayer la requête suivante mais le problème n'est pas là.


$RequeteSuppression="delete from `$table` where Convert(`NomSoiree` USING utf8) = '".$RecuperationSoiree."'";
0
lauraM
 
Salut,
j'ai le même problème que toi.
En fait ma liste déroulante s'affiche bien avec les valeurs de ma table mais lorsque je veux supprimer une page m'informe que la donnée a bien été supprimer alors que quand je vérifie dans mysql il y est toujours.
Donc je voudrais savoir si ta trouvé la solution ?
L'aide de tout le monde est la bienvenue merci d'avance.
0