Problème de % dans une requete via mysql de easyphp 1.6

Eléphant du PHP | 360 Messages

12 juil. 2005, 20:45

Bonjour,
Je veux afficher toutes les personnes dont '$mot' est compris, ma requete est bien la suivante? :

$query_nom="select nom, prenom from utilisateur where nom='%$mot%';";
$result_nom=mysql_query($query_nom);

Ou en my_sql ce n'est pas le % qu'il faut utiliser?
Car dès que je l'enleve ma requete fonctionne, mais du coup ca ne m'interesse plus...

Mammouth du PHP | 19672 Messages

12 juil. 2005, 21:02

essaye:
$query_nom="SELECT nom, prenom FROM utilisateur WHERE nom LIKE '%".$mot."%';"; 
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 360 Messages

12 juil. 2005, 21:40

essaye:
$query_nom="SELECT nom, prenom FROM utilisateur WHERE nom LIKE '%".$mot."%';"; 

Ca ne fonctionne toujours pas !!!
Voici mon code sans % :
$query_demandeur="select nom, prenom from utilisateur where nom='$demandeur';";
$result_demandeur=mysql_query($query_demandeur);
while($ligne_demandeur=mysql_fetch_object($result_demandeur))
{
	echo "<br> nom : ".$ligne_demandeur->nom." ; prenom : ".$ligne_demandeur->prenom." ;";
}
Quand j'affiche $demandeur j'ai bien une valeur correspondante a celle que je lui ai rentrée.

Mammouth du PHP | 19672 Messages

12 juil. 2005, 21:54

Tu as quoi comme retour : alors que tu sais qu'il y a un résultat dans la base rien ou un message d'erreur et dans ce cas quel message ?

As-tu essayé de faire afficher la requête générée pour la tester ensuite directement dans phpMyAdmin ?
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 360 Messages

12 juil. 2005, 22:04

Oui dans Easyphp il n'aime pas non plus le '%' c'est pour ca que j'avais demandé si c'était bien ca pour mysql.
Désolé j'aurais peut etre du commencé par la :oops: .

En fait il ne retourne aucune erreure, il me dit que la requete c'est executée avec succes et c'est tout si je ne met qu'une partie d'un nom. Par contre si je le met en entier et sans les '%' il m'affiche une ligne... avec les '%' il ne m'affiche rien :cry:

Mammouth du PHP | 19672 Messages

12 juil. 2005, 22:36

Essaye en ne mettant un % que d'un coté puis de l'autre pour voir le résultat : donc ça voudrait dire rechercher une expression commençant par $mot et la suivante une expression finissant par $mot
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 360 Messages

12 juil. 2005, 22:51

Essaye en ne mettant un % que d'un coté puis de l'autre pour voir le résultat : donc ça voudrait dire rechercher une expression commençant par $mot et la suivante une expression finissant par $mot
Toujours rien. :evil:
Au fait je sais pas si ca a a voir ou pas mais je suis sur easy php 1.6.

Mammouth du PHP | 19672 Messages

12 juil. 2005, 22:53

Aucune importance, c'Est MySQL qui traite ça: fais afficher et mets moi ici ce que ça génère comme requête ? (la requête qui sera envoyée, pas la chaine PHP bien sur)
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 360 Messages

12 juil. 2005, 23:25

Aucune importance, c'Est MySQL qui traite ça: fais afficher et mets moi ici ce que ça génère comme requête ? (la requête qui sera envoyée, pas la chaine PHP bien sur)
Voila ce qu'il m'affiche lorsque j'execute ma requete (select nom, prenom from utilisateur where nom='%ell%';) :

Votre requête SQL a été exécutée avec succès

requête SQL :
select nom, prenom from utilisateur where nom='%ell%' LIMIT 0, 30


alors que si je met ca :

requête SQL

requête SQL : [Modifier]
select nom, prenom from utilisateur where nom='pellardy' LIMIT 0, 30




nom prenom
Modifier Effacer PELLARDY DORIAN


ca me l'affiche correctement... :?:

Mammouth du PHP | 19672 Messages

12 juil. 2005, 23:40

Ok, alors tu auraispeut-être bien grand intérêt à explorer les expressions régulières intégrée dans MySQL
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

ViPHP
pjl
ViPHP | 2119 Messages

13 juil. 2005, 08:03

requête SQL :
select nom, prenom from utilisateur where nom='%ell%' LIMIT 0, 30
1er post de Cyrano suite à ta question :
remplacer le = par LIKE puisque tu utilises le jokker %.
:roll: :roll: :roll:

Ensuite, ta version d'EasyPHP est un peu dépassée. On en est quand même à la 1.8.

Eléphant du PHP | 360 Messages

13 juil. 2005, 12:11

requête SQL :
select nom, prenom from utilisateur where nom='%ell%' LIMIT 0, 30
1er post de Cyrano suite à ta question :
remplacer le = par LIKE puisque tu utilises le jokker %.
:roll: :roll: :roll:

Ensuite, ta version d'EasyPHP est un peu dépassée. On en est quand même à la 1.8.
J'avais meme pas vu le 'LIKE' de cyrano, des fois je vous jure ... je suis à la masse.

Je viens de m'en apercevoir avant de venir lire ton post j'allais m'etre ma c******e, mon erreur :lol: , que je venais de comprendre.
Mais merci beaucoup a vous tous