Where avec argument récupéré [Résolu]

Signaler
Messages postés
27
Date d'inscription
mardi 4 janvier 2005
Statut
Membre
Dernière intervention
7 avril 2006
-
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
-
Bonjour,

Je deviens fou.

Voilà, j'ai une base SQL qui contient des données dont un champs appelé canton. Un de mes enregistrement à la valeur FR

J'ai voulu créer une liste déroulante pour n'afficher que les enregistrement dont le canton correspond au choix de l'utilisateur voici mon code.

je reprend l'argument de ma liste déroulante
<?php


if(isset($_POST['selcan'])) $canton=$_POST['selcan'];
else $canton="";


?>


texte divers

ma liste déroulante (J'utilise ma même page comme cible)
Sélectionnez un canton

<form method="POST" action="indexfr.php?rubrique=soirfr">
<SELECT name="selcan" size="1">
<OPTION>FR
<OPTION>VD
<OPTION>france
<OPTION>
</SELECT>

</FORM>


<?php



connexion base de données SQL puis

$sql = 'SELECT date, canton, lieu, organisateur, nom_soir, texte, URL, image, mail FROM soirees WHERE date>=now() and canton="<?php echo $selcan; ?>" ORDER BY date';



$req = mysql_query($sql) or die('Erreur SQL !
'.$sql.'
'.mysql_error());


while($data = mysql_fetch_assoc($req))
{
echo '<table border cellspacing="0">


<tr><td width="15%" bgcolor="#CCCCFF">'.$data['date'].'</td>


<td width="10%" bgcolor="#CCCCFF"> </td>


<td width="20%" bgcolor="#CCCCFF"> '.$data['nom_soir'].'</td>

etc...

Si je ne mets pas de liste déroulante et de sélection du canton, tout s'affiche normalement.

J'ai fait un <?php echo $selcan;?> pour vérifier la valeur du champs sélectionné et il affiche bien FR ce qui correspond au champs de ma base de données SQL FR.

Le problème c'est que lorsque j'utilise le code cité plus haut, plus aucune donnée ne s'affiche.

(j'espère que c'est assez clair)

4 réponses

Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
22
Hello,



ton html est pourri, mais bon...



and canton="'.$_POST['selcan'].'"
Messages postés
27
Date d'inscription
mardi 4 janvier 2005
Statut
Membre
Dernière intervention
7 avril 2006

rectif mon code c'est

if(isset($_POST['selcan'])) $selcan=$_POST['selcan'];
else $selcan="";
Messages postés
27
Date d'inscription
mardi 4 janvier 2005
Statut
Membre
Dernière intervention
7 avril 2006

Merci bcp

Il a quoi de si pourri que ça mon html?
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
8
Salut,



les majuscules dans les balises, les attributs dépréciés... tu peux passer au XHTML ;-)

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>