expression regulière dans une requete?

BFH
Eléphant du PHP | 214 Messages

27 avr. 2005, 09:22

Bonjour,
j'ai une selection dans ma base de données avec la requete qui suit :
$N =$row["Lieu"];
$query2="SELECT * FROM report WHERE
RHost=\"$N\" ";
$result2=mysql_query($query2)or die (mysql_error());
$row2=mysql_fetch_assoc($result2)
Cependant $N retourne des valeures de ville telles que Nevers et RHost fait lui reference à des valeures de villes telles que Nevers1

Comment faire pour que la selection se fasse correctement?
Je sais que en php "^debut" renvoi à une chaine qui commence par début mais RHost=\"^$N\" ne fonctionne pas...

D'avance merci.
Perdu dans la matrice avec un guide michelin ](*,) #-o
Adorateur de Cyrano
Parti puis revenu...

Mammouth du PHP | 568 Messages

27 avr. 2005, 09:49

RHost=\"$N%\"

Donnera toute ce qui commence par $N...

Mais sinon, cf. la doc...
Heddi s'est remis à développer pour lui même !
Martina Hingis - Étoile du Tennis
Heddi v. 2007

BFH
Eléphant du PHP | 214 Messages

27 avr. 2005, 10:29

:( Désolé mais ça marche pas :(

Ton exemple fonctionne surement lorsque l'on a du texte devant le % sauf que là dans mon cas j'ai une variable.

Merci quand même!

En fait c'était pas tout a fait faux!
La bonne réponse est :
$N=$row["Lieu"];
$query2="SELECT * FROM report WHERE
RHost=\"$N\"+\"%\" ";
Modifié en dernier par BFH le 27 avr. 2005, 10:34, modifié 1 fois.
Perdu dans la matrice avec un guide michelin ](*,) #-o
Adorateur de Cyrano
Parti puis revenu...

Mammouth du PHP | 568 Messages

27 avr. 2005, 10:32

Non tu n'as pas une variable... Tu as une chaine de caractère dans une variable...
"SELECT * FROM report WHERE RHost=\"$N%\" ";

ça te retourneras
SELECT * FROM report WHERE RHost="Nevers%"...

D'ailleurs plutôt que WHERE ...=..., essaye WHERE ... LIKE ...
Heddi s'est remis à développer pour lui même !
Martina Hingis - Étoile du Tennis
Heddi v. 2007

BFH
Eléphant du PHP | 214 Messages

27 avr. 2005, 10:34

DSL j'ai edité mon post le temps que tu repondait!
Perdu dans la matrice avec un guide michelin ](*,) #-o
Adorateur de Cyrano
Parti puis revenu...

Mammouth du PHP | 19672 Messages

27 avr. 2005, 11:02

Je vous signale pour information que MySQL supprorte les expressions régulière et que la fonction REGEXP peut accélérer le traitement quelque peu, voir la doc
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Mammouth du PHP | 568 Messages

27 avr. 2005, 11:04

vi je sais, j'avais mis le lien sur la doc de nexen :wink:
Heddi s'est remis à développer pour lui même !
Martina Hingis - Étoile du Tennis
Heddi v. 2007

Mammouth du PHP | 859 Messages

27 avr. 2005, 11:32

Raaaaaaah Cyrano m'a grillé avec sa REGEXP pour MySQL

Tant pis... Image

Invité
Invité n'ayant pas de compte PHPfrance

27 avr. 2005, 11:59

J'ai lu cette doc mais j'y comprends rien (normal je debute) vous pouvez traduire a quoi sert REGEXP :?: