Selection de l'item de la liste déroulante

poulet
Invité n'ayant pas de compte PHPfrance

18 juil. 2005, 11:26

bonjour,

J'ai beau chercher un tuto sur phpdebutant sur les liste déroulante je n'ai rien trouvé donc je voulais savoir si kk avait un bon lien plz, je debute en PHP et j'aimerais que l'actiond e mon boutton (genre supprimer) agisse sur l'élément choisit dans ma liste déroulante.

Merci d'avance :)

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

18 juil. 2005, 11:29

tu peux préciser ce que tu entends par "agisse" ?

Eléphant du PHP | 406 Messages

18 juil. 2005, 11:29

ta liste deroulante est alimenté à partir d'une base de donnée ?

Invité
Invité n'ayant pas de compte PHPfrance

18 juil. 2005, 12:52

oui alimenter par une base de données, je vous joins le code de ma liste_deroulante:

function liste_vide($nomchp,$table){
include("../../include/conf.php");
$cn=mysql_connect($host,$user,$mdp) or die("Impossible de se connecter à la base mysql");
$ch=mysql_select_db("annuaire") or die("Impossible de sélectionner la base Annuaire");

$req=mysql_query("SELECT DISTINCT $nomchp FROM $table ORDER BY $nomchp");

echo "<select name=\"$nomchp\" size=\"1\">\n";

while ($liste=mysql_fetch_row($req)){
$val_courante=$liste[0];
echo "\t<option value=\"$val_courante\" ";
echo ">$val_courante </option>\n";
}
echo "</select>\n";
mysql_free_result($req);
mysql_close($cn);
}
?>


et ensuite plus loins dans la page j'apelle

liste_vide("activite","fonctions");


mon formulaire est décrit comme ceci :
<FORM name="sup_activite" action="<? $table="fonctions"; $action="sup";echo "action.php?type=$table&action=$action"; ?>" method="post">


Donc mon souci est qu'il me renvoie une erreur sql puisqu'il essaie de supprimer l'emplacement vide alors que je sélectionne une valeur dans la liste déroulante.

Eléphant du PHP | 406 Messages

18 juil. 2005, 13:36

j ai pas trop compris ce que tu faisais dans ton action
mais moi si j avais à supprimer un element d un eliste deroulante alimenter à partir d une base de donnée je ferais un truc dans ce genre
 <html>
 <head>
 </head>
 <body>
 <FORM name="sup_activite"  action="<?php echo($_SERVER['PHP_SELF']); ?>" method="post"> 

include("../../include/conf.php"); 
$cn=mysql_connect($host,$user,$mdp) or die("Impossible de se connecter à la base mysql"); 
$ch=mysql_select_db("annuaire") or die("Impossible de sélectionner la base Annuaire"); 

$req=mysql_query("SELECT DISTINCT $nomchp FROM $table ORDER BY $nomchp"); 

?>
<select name="Nomdemaliste" size="1">

<?

while ($liste=mysql_fetch_array($req)){ 
?>
<option value="<? echo $liste['LenomduChamp']; ?>"><? echo $liste['LenomduChamp']; ?><option> 
<?
}
?>
</select>
<input type="submit" name="supprimer">
</form>
</body>
</html>
<?
if(isset($_POST['supprimer']))
{
$req=mysql_query("delete from matable where LenomduChamp='".$_POST['Nomdemaliste']."'"); 	
	
}


?>