Mysql Like

Résolu/Fermé
Utilisateur anonyme - 28 août 2011 à 20:45
 Utilisateur anonyme - 28 août 2011 à 21:19
Bonjour, je souhaite lister se que cherche un visiteur en utilisant la fonction LIKE :

J'utilise PDO pour la connexion :

$reponse = $bdd->query('SELECT * FROM billet WHERE titre LIKE \''.htmlentities($_GET['recherche']).'%\'');


Le problème c'est que cela me renvoi TOUS les billets mais commençant par le mot recherché.

Une personne à t'elle une solution ?

Merci d'avance.


2 réponses

Utilisateur anonyme
28 août 2011 à 20:49
Heu désolé j'ai trouvé moi même... c'était plus loin dans mon script qui demandé d'afficher tous sans s'occupé de ma première requete.

Bref j'ai une autre question :

je voudrai que sa recherche dans plusieurs tables comment faire ?

$reponse = $bdd->query('SELECT * FROM billet WHERE titre LIKE \%''.htmlentities($_GET['recherche']).'%\'');


Pour rechercher dans la table titre mais pour plusieurs tables ?

Merci
0
pitxu Messages postés 689 Date d'inscription vendredi 7 septembre 2007 Statut Membre Dernière intervention 25 mars 2015 94
28 août 2011 à 20:49
Bonjour,

essaie :

$reponse = $bdd->query('SELECT * FROM billet WHERE titre LIKE \'%'.htmlentities($_GET['recherche']).'%\'');

%marecherche% pour trouver une chaine contenue
0
Utilisateur anonyme
28 août 2011 à 21:13
Merci pitxu mais en faite je voudrai que sa recherche sur plusieur table :

$reponse = $bdd->query('SELECT * FROM billet WHERE titre AND head AND corp LIKE \%''.htmlentities($_GET['recherche']).'%\'');

Mais cette solution ne fonctionne pas
0
J'ai trouvé :

$reponse = $bdd->query('SELECT * FROM billet WHERE corp LIKE \'%'.htmlentities($_GET['recherche']).'%\' OR head LIKE \'%'.htmlentities($_GET['recherche']).'%\' OR titre LIKE \'%'.htmlentities($_GET['recherche']).'%\'');
0