Précédent   Forum des professionnels en informatique > PHP > Langage
Langage Forum sur le langage PHP, la POO, les conventions, la sécurité, etc. Avant de poster : FAQ Langage, toutes les FAQ PHP, cours langage et sources PHP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 25/03/2011, 16h49   #1
Candidat au titre de Membre du Club
 
Homme Stéphane
Inscription : mars 2011
Messages : 39
Détails du profil
Informations personnelles :
Nom : Homme Stéphane
Localisation : France

Informations forums :
Inscription : mars 2011
Messages : 39
Points : 13
Points : 13
Par défaut Recherche une valeur dans deux champs

Bonjour,

J'ai créé une page de recherche en PHP permettant de lister des contacts.

On saisie dans un textbox, le nom et prénom.

Cepandant, dans ma table, j'ai deux champs : Nom et Prénom.

J'aimerai que ma requête recherche exactement l'expression qui a été saisie dans mon textbox. Mon problème est que je recherche le contenu d'une variable (ex : Michel Martin) mais dans deux champs.

Il est indispensable que la requête m'affiche l'expression exacte saisie et non tous les martins ou tous les Michel.

Si vous avez un conseil.

Merci par avance.
smotte761 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/03/2011, 16h56   #2
Membre régulier
 
Homme
Chef de projet NTIC
Inscription : juin 2007
Messages : 69
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Chef de projet NTIC
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : juin 2007
Messages : 69
Points : 70
Points : 70
Salut smotte761,

Effectue ta requête SQL non pas sur les champs NOM et PRENOM mais sur une concaténation de ces 2 champs.

Code :
SELECT * FROM MON_SCHEMA.MA_TABLE WHERE CONCAT(NOM, ' ' , PRENOM) = 'MICHEL MARTIN' OR CONCAT(PRENOM, ' ' , NOM) = 'MICHEL MARTIN'
Attention, il me semble que la fonction concat ne fonctionne que sous MySQL pour les autres reportes-toi au manuel.

Pour avoir de meilleurs résultats utilises la fonction UPPER sur le résultat de la fonction CONCAT ainsi que sur le texte recherché pour éviter une trop grande sensibilité à la casse.
Cobalt59 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/03/2011, 17h13   #3
Candidat au titre de Membre du Club
 
Homme Stéphane
Inscription : mars 2011
Messages : 39
Détails du profil
Informations personnelles :
Nom : Homme Stéphane
Localisation : France

Informations forums :
Inscription : mars 2011
Messages : 39
Points : 13
Points : 13
Par défaut OK

Un grand merci. Ca marche !
Je galère depuis 2 jours et en quelques secondes tu m'as trouvé la solution.
Respect !
Bonne soirée.
smotte761 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h01.


 
 
 
 
Partenaires

Hébergement Web