Ignorer les espaces, slash et points
Southstyle
Messages postés
46
Statut
Membre
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
Des utilisateurs remplissent le champ "numéro de téléphone". Certains l'écrivent avec des points, d'autres avec des espaces, certains séparent le préfixe par un slash, et enfin, d'autres l'écrivent sans espaces ni points.
Ma question est la suivante :
Sur mon moteur de recherche (backoffice), comment puis-je faire une requête qui ignore ces caractères lorsque je recherche un numéro de téléphone ?
Je veux pouvoir entrer 0123455667 et retrouver l'utilisateur, peu importe sous quelle forme il a entré son numéro de téléphone :
012/345.56.67
0123455667
012 / 345 56 67
J'espère que ma question était suffisamment claire et qu'une bonne âme saura venir à me rescousse :-)
Merci !
Des utilisateurs remplissent le champ "numéro de téléphone". Certains l'écrivent avec des points, d'autres avec des espaces, certains séparent le préfixe par un slash, et enfin, d'autres l'écrivent sans espaces ni points.
Ma question est la suivante :
Sur mon moteur de recherche (backoffice), comment puis-je faire une requête qui ignore ces caractères lorsque je recherche un numéro de téléphone ?
Je veux pouvoir entrer 0123455667 et retrouver l'utilisateur, peu importe sous quelle forme il a entré son numéro de téléphone :
012/345.56.67
0123455667
012 / 345 56 67
J'espère que ma question était suffisamment claire et qu'une bonne âme saura venir à me rescousse :-)
Merci !
A voir également:
- Ignorer les espaces, slash et points
- Espaces insécables - Guide
- 3d slash - Télécharger - 3D
- Mettre des points sur une carte - Guide
- Slash droit ✓ - Forum Autres distributions Linux
- Le signe " | " dans excel - Forum Excel
2 réponses
Voilà, j'ai trouvé moi-même :
SELECT * FROM users WHERE [CLAUSE 1] AND (REPLACE(userphone,' ','') LIKE '%".$_POST['suserphone']."%' OR REPLACE(userphone,'.','') LIKE '%".$_POST['userphone']."%' OR REPLACE(userphone,'/','') LIKE '%".$_POST['userphone']."%')
Après on peut peut-être faire plus propre, mais au moins ça fonctionne.
SELECT * FROM users WHERE [CLAUSE 1] AND (REPLACE(userphone,' ','') LIKE '%".$_POST['suserphone']."%' OR REPLACE(userphone,'.','') LIKE '%".$_POST['userphone']."%' OR REPLACE(userphone,'/','') LIKE '%".$_POST['userphone']."%')
Après on peut peut-être faire plus propre, mais au moins ça fonctionne.
Si la personne a écrit 012/345.56.67 et que je recherche 0123455667, la requête retournera un résultat nul.
J'ai essayé de les imbriquer, mais ça ne marche pas :
REPLACE(REPLACE(REPLACE(userphone,'/',''),'.',''),' ','') LIKE '%".$_POST['userphone']."%'