Flux rss
Collection CommentCaMarche.net
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Résolu

Variable liste déroulante php

BountyHunter14, le mercredi 6 décembre 2006 à 11:55:55
Bonjour à tous

Voilà je cherche à créer une liste déroulante permettant de supprimer l'élément sélectionné.
La connexion à la base se passe bien, l'affichage du contenu aussi mais quand je sélectionne un élément de la liste ça me supprimer toujours le dernier éléments de la liste, pas celui que j'ai séléctionné... Je pense que c'est un problème au niveau de la récupération de la valeur mais je vois pas ou est cette erreur dans le code

d'avance merci pour votre aide :)




<?php
mysql_connect("localhost","root","") or die ("Connexion au serveur impossible");
mysql_select_db("jeux") or die ("Sélection de la base de données impossible");
$reponse = mysql_query("select nom_joueur FROM joueur ORDER BY nom_joueur")
or die ("Execution de la requète impossible");
?>
<div align = "center">
<?php
echo " <form action='supprimer_joueur.php' method='post'>
<select name='nom_joueur'>\n";?></div>
<?php
while ($ligne = mysql_fetch_array($reponse)){
extract($ligne);
if($nom_joueur<>"")
echo "<option value='nom_joueur'>$nom_joueur</option>\n";
}
echo "</select>\n";
echo "<td><input type='submit'","value=\"Supprimer ce joueur\"></td></form>\n";
?>

<?php
if(isset($_POST['nom_joueur'])){
if ($_POST['nom_joueur'] != NULL)
{
mysql_connect("localhost", "root", "") or die ("Connexion au serveur impossible");
mysql_select_db("Jeux") or die ("Sélection de la base de données impossible");
mysql_query("DELETE FROM joueur where nom_joueur ='$nom_joueur'");
mysql_close();
} }
?>
Répondre à BountyHunter14  Signaler ce message aux modérateurs Aller au dernier message

1


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Reivax962, le mercredi 6 décembre 2006 à 12:34:37
Bonjour,

Le problème est que toutes tes <option> ont la même "value", tu ne peux donc pas savoir lequel a été sélectionné. Par ailleurs, lors de la suppression, tu réutilises $nom_joueur . Regarde bien ta fonction : à ton avis, que vaut cette variable quand on arrive à cet endroit de ton script ? Il n'a pas bougé depuis la fin de ta boucle "while" ! Il vaut donc toujours le nom du dernier joueur.

Autre chose, si tu places le script de suppression après le script de remplissage de la liste déroulante, après la suppression, tu reverras le joueur que tu as supprimé dans la liste, ce qui n'est pas forcément très intuitif pour l'utilisateur.

Essaie ceci, qui devrait corriger tous ces légers défauts :
<?php
mysql_connect("localhost","root","") or die ("Connexion au serveur impossible");
mysql_select_db("jeux") or die ("Sélection de la base de données impossible");
?>
// Suppression du joueur sélectionné
<?php
if(isset($_POST['nom_joueur']))
{
	if ($_POST['nom_joueur'] != NULL)
	{
		mysql_query("DELETE FROM joueur where nom_joueur='".$_POST['nom_joueur']."'");
	}
}
?>

<div align = "center">

<?php
// Affichage de la liste déroulante

$reponse = mysql_query("select nom_joueur FROM joueur ORDER BY nom_joueur")
	or die ("Execution de la requète impossible");
echo " <form action='supprimer_joueur.php' method='post'><select name='nom_joueur'>\n";

while ($ligne = mysql_fetch_array($reponse))
{
	extract($ligne);
	if($nom_joueur<>"")
		echo "<option value='".$nom_joueur."'>$nom_joueur</option>\n";
}
echo "</select>\n";
echo "<td><input type='submit' value='Supprimer ce joueur'></td></form></div>\n";
mysql_close();
?>
Cela te convient-il ?

Xavier
Répondre à Reivax962

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
BountyHunter14, le mercredi 6 décembre 2006 à 12:57:24
Merci beaucoup Xavier ça marche...

(dsl pour la réponse un peu "tardive" mais j'ai pris mon temps pour bien comprendre ou j'avais fait mes erreurs...)

encore merci pour ton aide
Répondre à BountyHunter14

3


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
 manoa, le lundi 30 juin 2008 à 16:47:27
Bonjour,

Je cherche à faire une liste déroulante dont les données pourrait changer en fonction d'1choix fait avec une autre liste déroulante.

Petit exemple, c'est pour un calcul d'heures effectuées, ma première liste déroulante me propose 4 choix (Travail en equipe, Normal...) et je voudrais qu'en fonction de ce choix, ma deuxième liste déroulante me donne trois autres choix qui diffèrent selon la première liste ( ex: si travail en équipe selectionné les choix seront : 33,75 ; 37.5.. et si c'est normal ce seras : 35, 39 ..).

Pour l'instant pour faire ma première liste déroulante j'ai tout simplement utilisé "Données-> validation"

Merci d'avance
Répondre à manoa

Résultats pour variable liste déroulante php

Liste déroulante PHP/MySQL (Résolu) Bonjour, J'ai un problème. J'ai une liste déroulante qui va chercher des noms de planète dans une base de données MySQL. Le but de la page est de modifier un enregistrement. Je choisis la planète que je veux modifier et quand je clique sur... www.commentcamarche.net/forum/affich-8258098-liste-deroulante-php-mysql
Liste déroulante php,bd MySQL,pb codification (Résolu) Bonjour, Je débute en php et j'essaye de faire une petite page Web pour un service de mon entreprise. Je dois faire 4 listes déroulantes dynamiques imbriquées avec possibilité d'ajouter un nouvel élément sans passer par une autre page.... www.commentcamarche.net/forum/affich-8434526-liste-deroulante-php-bd-mysql-pb-codification

Résultats pour variable liste déroulante php

Listes déroulantes simples avec ExcelDans votre tableau, vous souhaitez insérer un texte ou une valeur choisi dans une liste (déroulante). vous créez votre liste, ligne aprés ligne, sur votre feuille en cours ou sur une autre feuille du classeur en cours. vous la nommez : INSERTION... www.commentcamarche.net/faq/sujet-8674-listes-deroulantes-simples-avec-excel

Résultats pour variable liste déroulante php

Liste deroulante / PHP (Résolu)Bonjour, J'ai un formulaire de saisie de plusieurs champs ... environ une vingtaine ! Au bout du dixième, une liste deroulante demande la selection d'un pays ... suivant le pays une autre liste s'affiche en dessous avec les regions de... www.commentcamarche.net/forum/affich-1453285-liste-deroulante-php
Rafraichir liste déroulante php (Résolu)Salut Bon voilà dans une page j'ai une liste déroulante et quand je fais un choix dans cette liste mes données s'affichent dans un formulaire. Pour ça j'utilise du javascript et j'arrive sur http://www.monsite.com/index.php?choix=2... www.commentcamarche.net/forum/affich-1529232-rafraichir-liste-deroulante-php