Test d'égalité

Vava
Invité n'ayant pas de compte PHPfrance

05 mars 2006, 14:42

Bonjour,

Voilà je cherche la fonction à insérer lors d' une requête d'égalité permettant de supprimer les espaces stockés dans le champ a tester.

Code : Tout sélectionner

$sql = "SELECT id, titre FROM livre WHERE titre='$nom'";
Si le champ titre contient des espaces j'aimerais pouvoir ignorer ces derniers lors du test d'égalité avec la variable NOM.

Je cherche depuis un moment je trouve pas, je sais qu'on peut insérer je crois des regex dans mysql, mais s'il existe une fonction propre à mysql c'est mieux. J'ai essayé aussi TRIM mais ça n'enlève les espace qu'au début et a la fin du champ. Merci pour votre aide, elle sera la bienvenue.
Ca fait un moement que je galère là dessus.

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

05 mars 2006, 15:26

Salut,
peut être REPLACE pourrai convenir, étant donné que j'ai pas vraiment compri la question.

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Vava
Invité n'ayant pas de compte PHPfrance

05 mars 2006, 16:01

Désolé si je me suis mal exprimé. Pour faire simple je voudrais qu'au moment de la requête, les espaces que pourraient contenir le champ TITRE dans la base de données, soient ignorés.

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

05 mars 2006, 16:26

proposition:
$sql = "SELECT id, titre FROM livre WHERE REPLACE(titre," ","")='".$nom."'";

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Vava
Invité n'ayant pas de compte PHPfrance

06 mars 2006, 00:48

Merci beaucoup, c'est exactement ce que je cherchais. Ca fonctionne très bien.