requête qui marche et marche pas !!

Eléphanteau du PHP | 16 Messages

12 févr. 2011, 14:27

bonjour à tous

svp je vous écris pour exposer un cas que je trouve un peu particulier

j'ai une requête dynamique donc la clause where depend d''une condition et que je gère très bien avec un if sous php
en tout cas pour la condition général ça marche et pour la condition particulère qui utilise un concat sur deux champs ça marche pas.

j'ai fait un echo de ma requête et quand je la copie sur le phpmyadmin, elle retourne le résultat souhaité mais pas quand je la fais exécuter à partir de mon script php

la requête est :
SELECT * FROM matable WHERE CONCAT(matable.nom,' ',matable.prenom) LIKE 'machin truc%' ORDER BY matable.nom, matable.prenom
avez vous une idée ?

merci

ViPHP
xTG
ViPHP | 7331 Messages

12 févr. 2011, 15:14

Il n'y a pas de raison que cela fonctionne sous PhpMyAdmin et pas sous PHP si la requête que tu lances sur le premier est la même que sur le second.
Peux-tu nous montrer ton code ?

Eléphanteau du PHP | 16 Messages

12 févr. 2011, 20:17

re bonsoir,

j'ai trouvé enfin ma connerie, en fait pour la concaténation des deux variable avant de passer à la requête j'avais mis $nom." ".$prenom
mais entre " " y avait pas un seul espace mais deux,
echo ignore les espaces et n'en garde d'un seul, mais pas dans la requête
ce qui explique que quand je copie ma requête après le echo j'ai un résultat mais pas quand c'est directe.

une petite connerie qui m'a pris une après midi :)

merci xTG

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

14 févr. 2011, 17:00

Merci de passer le sujet en Résolu alors :)