Bonjour,
J'ai un moteur de recherche qui permet, par l'autocomplétion, d'afficher les villes disponibles dans ma base selon le mot clé tapé de l'internaute.
Seulement voilà, j'ai un problème avec les villes à arrondissement comme Paris.
J'aimerais que lorsqu'on tape "Paris 1", cela m'affiche non seulement tous les "Paris 11, Paris 12, Paris 13", mais aussi "Paris 01". Or, pour l'instant, je n'ai que les "Paris 11, Paris 12, Paris 13...".
Voici ma requête SQL :
La requête voulu serait donc quelque chose comme :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 $query_reg = $query; $sql = "SELECT id,nom,cp,dept FROM blo_search_suggest WHERE `nom` REGEXP'(".$query_reg.")' order by LOCATE('".$query."',`nom`) ASC, nom asc limit $limit";
Sur mon moteur, je tape "Paris 1".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 SELECT id, nom, cp, dept FROM blo_search_suggest WHERE `nom` REGEXP '(paris 01|paris 1)' ORDER BY LOCATE( 'paris 1', `nom` ) ASC , nom ASC
Je ne sais pas quoi faire de $query_reg pour ajouter "paris 01|" dans la requête car pour le moment, $query_reg est seulement égal à "paris 1".
Pouvez-vous m'aider svp ?
Y a-t-il une fonction PHP qui permette d'ajouter un 0 dès qu'un champ numérique est tapé ?
Merci d'avance pour votre aide.
Bonne fin de journée et à bientôt.
Sandy
Partager