Select d une chaine de caractére se terminant ou debutant par des caractére qui

Résolu
langagec08 Messages postés 72 Date d'inscription mardi 30 mars 2010 Statut Membre Dernière intervention 22 août 2011 - 18 juil. 2010 à 01:55
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 - 19 juil. 2010 à 06:40
bonsoir ts le monde , je veux selectionner à partir de ma base de données tous les noms qui commencent ou se terminent par une chaine de caractaire qu'un utilisateur fait rentré à partir d'un formulaire j'ai essyé la requette suivante mais ça marche pas :


$rech=$_POST['nom_redevable'] ;
mysql_select("select nom_redevable from fich1 where nom_redevable like "%$rech%" ") ;



veullez m'aider pleaaaaaaaase c' é urgent :D

5 réponses

kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
18 juil. 2010 à 10:53
Salut,

2 petites choses :
- ça serait sympa de prêter un peu plus attention à l'orthographe et d'éviter le langage SMS
- si "c' é urgent" tu n'es pas au bon endroit



- tu devrais traiter correctement les données provenant de l'utilisateur ($_POST) au minimum avec mysql_real_escape_string()
- tu devrais sans doute activer l'affichage des erreurs pour le développement, ça t'aiderait

c'est quoi mysql_select ?? une fonction utilisateur ?


"select nom_redevable from fich1 where nom_redevable like "%$rech%" "
=>
"SELECT nom_redevable
FROM fich1
WHERE nom_redevable LIKE '%$rech'
OR
nom_redevable LIKE '$rech%'"

... ça devrait le faire comme ça


Kohntark -
3
langagec08 Messages postés 72 Date d'inscription mardi 30 mars 2010 Statut Membre Dernière intervention 22 août 2011 1
18 juil. 2010 à 13:10
mercii pour ta réponse . J'ai pu résoudre le problème il fallait juste remplacer les guillemet par de simple quotte et voila la bonne réponse :


$rech=$_POST['nom_redevable'] ;
mysql_query("select nom_redevable from fich1 where nom_redevable like '%$rech%' ") ;

c'est un peu comme la réponse que tu m'as donné

et désolé pour le "mysql_select" c'est juste une faute de frappe je voulais écrire mysql_query
3
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
18 juil. 2010 à 14:42
mon message n'est semble t-il pas passé.

et voila la bonne réponse :

Euh, non, ce n'est pas la bonne réponse. Cette requête retournera tous les enregistrements qui contiennent la valeur postée par l'utilisateur, pas "tous les noms qui commencent ou se terminent par une chaine de caractaire qu'un utilisateur fait rentré à partir d'un formulaire"

Dommage que tu ne tiennes pas compte de ce que l'on peut te dire :
- tu devrais traiter correctement les données provenant de l'utilisateur ($_POST) au minimum avec mysql_real_escape_string()

Avec ton code n'importe quel naze pourra pirater ta base de données, ... mais bon, si c'est ce que tu veux ...


Kohntark -
0
langagec08 Messages postés 72 Date d'inscription mardi 30 mars 2010 Statut Membre Dernière intervention 22 août 2011 1
18 juil. 2010 à 17:08
merciii bcp pour tes réponses . En fait avec la requête que j'ai utilisé j'ai obtenu exactement ce que je voulais voici un exemple de l'interet de ce que j'ai fait
exemple
mon utilisateur cherche tous les nom_redevable commencant ou se terminant par "der"
il va insérer dans le formulaire "der" puis il exécute sa recherche donc il va avoir comme résultat : quihfderhjfds
deroqizrfcido
et c'est exactement ce que je cherche

PS : ne vous inquiétez pas j'ai pris on considération dans mon code le mysql_real_escape_string()
merci pour tes réponse
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
19 juil. 2010 à 06:40
Si c'est ce que tu attendais tu as mal formulé ta question :

"mon utilisateur cherche tous les nom_redevable commencant ou se terminant par "der""
correspondrait à :
derrzepiojez(commençant par) ou ezrrzder(se terminant par)

Il aurait fallut dire "mon utilisateur cherche tous les nom_redevable contenant 'der'"

Cordialement,



Kohntark -
0
Rejoignez-nous