pb liste déroulante

Invité
Invité n'ayant pas de compte PHPfrance

27 juil. 2005, 11:37

Bonjour a tous :)

Voila j'ai un souci pour supprimer un élément de ma liste déroulante (en fait quand je valide le formulaire et j'ai une erreur SQL et après qq test je me susi aperçu qu'il essayer de supprimer un chp vide donc j'ai un pb de sélection :p)

Voici le code:

Code : Tout sélectionner

<? include_once("../fonctions.php"); ?> <HTML> <HEAD> <TITLE>------------------------------</TITLE> <LINK rel="stylesheet" type="text/css" href="../formats.css"> </HEAD> <BODY> <CENTER> <TABLE width="40%" border="1" cellpadding="0" cellspacing="0" bordercolor="#000000"> <TR> <TD bordercolor="#000000" bgcolor="CCEBFF"> <TABLE width="96%" border="0" cellspacing="0" cellpadding="4"> <TR> <TD bgcolor="#CCEBFF"><IMG src="arrow.gif" width="10"></TD> <TD width="100%"><STRONG>Suppression d'une activité </STRONG></TD> </TR> </TABLE></TD> </TR> <TR> <FORM name="supp_activite" action="<? $table="fonctions";$action="sup"; echo "action.php?type=$table&action=$action";?>" method="post"> <TD width="100%" colspan="2" align="center" bordercolor="#000000" bgcolor="#FFFFCC"> <TABLE width="95%" border="0" cellspacing="0" cellpadding="2"> <TR align="center"> <TD width="35%">&nbsp;</TD> <TD width="65%" align="left">&nbsp;</TD> </TR> <TR align="left"> <TD>Activit&eacute;</TD> <TD><? liste("activite","fonctions"); ?></TD></TR> <TR align="center"> <TD>&nbsp;</TD> <TD align="center">&nbsp;</TD> </TR> <TR align="center"> <TD colspan="2"><INPUT type="submit" name="Submit" value="Supprimer"></TD> </TR> </TABLE> </TD> </FORM> </TR> </TABLE> </CENTER> </BODY> </HTML> <? include("../footer.php"); ?>
et voici ma fonction "liste"
function liste($rech,$tab){
	//connexion à la bdd
 	$cnx= mysql_connect("localhost", "root", "");
	mysql_select_db("annuaire");
   	// création de la requête
	
	$req="SELECT distinct $rech from $tab ORDER BY $rech";
	$res = mysql_query($req) or mysql_error();
	
	echo "\n<select name=\"$rech\">\n";
	echo "<option value=\"\" selected> </option><br>\n";
	while ($ligne = mysql_fetch_assoc($res)) {
		foreach ($ligne as $col_value) 
			echo "<option value=\"$col_value\"> $col_value</option>\n";
	}
	echo "</select>\n";
	//mysql_free_result($res);
	mysql_close($cnx);
	}
voila merci d'avance :) [/code]

Modérateur PHPfrance
Modérateur PHPfrance | 6037 Messages

27 juil. 2005, 11:52

Le problème est donc où ?
Dans ta requêtE ?
Règle n°2 du webmaster : Toujours commencer par le HTML qu'on veut obtenir....toujours ! :priere:
J'aime apprendre de nouvelles choses.

Invité
Invité n'ayant pas de compte PHPfrance

27 juil. 2005, 13:45

la requete est bonne puisque ma liste déroulante affiche tous les champs voulu, mais quand je veux supprimer patatra "erreur sql"

flix
Invité n'ayant pas de compte PHPfrance

27 juil. 2005, 14:06

<---- invité :)

En fait j'utilise cette fonction dans une autre page pour effectuer une "recherche" et elle donctionne très bien donc a mon avis l'erreur viendrai p-e de mon form mais j'avoue avoir chercher un peu partout etre un peu largué :?

Modérateur PHPfrance
Modérateur PHPfrance | 6037 Messages

27 juil. 2005, 14:08

Peut-être que ta variable passe mal...sur ce form...
Fais donc un echo de ta requete :)

echo "SELECT distinct $rech from $tab ORDER BY $rech";
Règle n°2 du webmaster : Toujours commencer par le HTML qu'on veut obtenir....toujours ! :priere:
J'aime apprendre de nouvelles choses.

Invité
Invité n'ayant pas de compte PHPfrance

27 juil. 2005, 14:19

bon effectivement les variables ne passe meme pas du tout :p

merci je vais fouiller dans ce sens :)

Invité
Invité n'ayant pas de compte PHPfrance

27 juil. 2005, 14:42

bon bon dite moi par hasard personne aurait une bout code avec une liste déroulante généré a partir d'une base Mysql dans laquelle on peut supprimer une valeur? histoire de comparer car la...

merci d'avance :)

Invité
Invité n'ayant pas de compte PHPfrance

27 juil. 2005, 17:03

up :roll:

Modérateur PHPfrance
Modérateur PHPfrance | 6037 Messages

27 juil. 2005, 17:15

<?php 
// alors déjà on concatène mieux que ça, mon ami
echo "SELECT distinct ".$rech." from ".$tab." ORDER BY ".$rech; 
Et ensuite, d'où viennent tes variables ?
Formulaire ? Script précédent ?
Comment sont-elles transmises ?

en GET, en POST, en SESSION ?