kohntark
Messages postés3706Date d'inscriptionlundi 5 juillet 2004StatutMembreDernière intervention27 avril 201230 1 févr. 2009 à 12:26
Salut,
Suffit peut être de ne pas le mettre tout simplement
$lecturetable "SELECT DISTINCT $critererecherche FROM $nomtable WHERE $critererecherche $paramrecherche "; =>$lecturetable "SELECT DISTINCT $critererecherche FROM $nomtable WHERE $critererecherche '$paramrecherche'";
Mais surtout :
Ta requête n'a pas de sens , en gros tu fais une recherche d'éléments distincts alors qu'ils ne peuvent pas l'être puisque tu le précises dans la clause WHERE.
vol68
Messages postés33Date d'inscriptionsamedi 28 février 2004StatutMembreDernière intervention 8 mai 2016 1 févr. 2009 à 18:21
voici les lignes de code:
en fonction des checkbox et des listes de choix selectionnées plus haut je cherche à trier une base de données et à en selectionner une ligne
<select name="resultats recherche" >
<!--option value = "pas_de_resultat">Pas des résultat pour ces parametres de recherche</option-->
<?php
//formulation de la requete*************************************************************
if ($critererecherche <> "*") { $where "WHERE $critererecherche ".$paramrecherche." ";
} else {
$where = " ";
}
$lecturetable = "SELECT DISTINCT $critererecherche FROM $nomtable $where ";
//execution de la requete***************************************************************
$resultatlecture = mysql_query($lecturetable, $link);
//verification de la requete***********************************************************
if (!$resultatlecture) {
echo "Requête invalide : ";
}
//utilisation des resultats*************************************************************
//for ($i=1;$i<($nombreenregistrement+1);$i++){
while ($enregistrements = mysql_fetch_assoc($resultatlecture)){
//$enregistrements = mysql_fetch_assoc($resultatlecture);
$choix = $enregistrements['Numero_enregistrement'].".-.".
$enregistrements['Denom'].".-.".
$enregistrements['Numero']."...".
$enregistrements['Adresse']."...".
$enregistrements['Ville']."...".
$enregistrements['Code_Postal']."..-..".
"Tel Fixe : 0".$enregistrements['Tel']."..-..".
"Mobile : 0".$enregistrements['Mobile']."..-..".
"Site : ".$enregistrements['Site'];
echo "<option value=$choix>$choix</option>";
}
?>
</select>
ceci fonctionne maintenant grace à vos reponses il suffisait de mettre '$paramrecherche' mais je ne parviens pas à afficher les resultats correctementen effet lorsque $critererecherche "*" alors j'affiche la totalité de la base mais lorsque $critererecherche"Region" (le champ Region dans la base) et que $paramerecherche = "Bretagne" par exemple je n'affiche rien, comment afficher toutes les lignes de la base concernanées par le champ "Region" = "Bretagne".
vol68
Messages postés33Date d'inscriptionsamedi 28 février 2004StatutMembreDernière intervention 8 mai 2016 1 févr. 2009 à 19:57
en fait $critererecherche et $paramrecherche sont extrait de plusieurs liste de choix activé ou non par une checkbox
je mexplique : lorsque la checkbox critere est coché elle active automatiquement une liste de choix qui permet de selectionner $paramrecherche
sachant qu'il y a plusieurs checkbox et donc plusieurs listes de choix, une fois $critererecherche et $paramrecherche renseigné je les utilises pour faire la recherche recherche suivante select distinct $critererecherche from ma_table where $critererecherche = $paramrecherche je cherche donc à faire apparaitre uniquement les lignes de la base pour lequelles le champ s'appel Region ($critererecherche) et la valeur Bretagne ($paramrecherche).
en fait à la place de $critererecherche et $paramrecherche je ne veux pas mettre de valeur j'aimerais que ce soit des variables
vol68
Messages postés33Date d'inscriptionsamedi 28 février 2004StatutMembreDernière intervention 8 mai 2016 1 févr. 2009 à 20:19
effectivement en utilisant cette methode je parviens à afficher quelque chose single quote double quote ..........double quote single quote double quote
mais je n'obtiens q'une seule ligne et elle ne correspont pas à la requete $lecturetable SELECT DISTINCT Region FROM ma_table WHERE Region 'Bretagne' et bretagne entre quote ne me permets pas d'afficher les lignes "Bretagne" de la base
alors que sans le WHERE ca m'affiche la totalité de la base, j'ai donc un souci avec la syntaxe de WHERE