Être Bonjour. Merci beaucoup pour ces explications mais ça ne fonctionne pas. Concrètement j’utilise des requêtes préparées avec des marqueurs et non des variables ; Ma requête de base est 'select id, pseudo from membre where pseudo =:pseudo'; Si je la modifie avec like % j’ai essayé 'select id, pseudo from membre where pseudo like "%:pseudo%"'; Quand je dis ça marche pas je veux dire précisément que la recherche ne donne aucun résultat même en mettant le pseudo complet dans la recherche. Merci
> Le 27 juil. 2017 à 08:25, Abdel <[email protected]> a écrit : > > Coucou Christophe, > > Je corrige tout d'abord le sujet de la discussion car il est un peu confus > avec ces caractères illisibles. > > Lorsque tu soumets ton formulaire en utilisant la méthode "post", à un > fichier script de traitement PHP, tu dois savoir que les champs de ton > formulaire soumis se transforment automatiquement en variables PHP de type > tableau associatif. > > Ainsi, un champ "pseudo" dans le formulaire original verra sa valeur stockée > dans une variable $_POST['pseudo'] une fois dans le script de traitement PHP. > > Puisque ta version de PHP t'autorise encore à utiliser mysql, voici comment > tu devras orienter ta requête. > > // On stocke le champ pseudo dans une variable $pseudo. > $pseudo = $_POST['pseudo']; > // Voici maintenant la requête de recherche des occurrences saisies dans le > formulaire. > $requete = mysql_query ("select id, pseudo from membre where pseudo like > '%$pseudo%'"); > > Si ta bdd comporte des données personnelles, il est préférable d'échapper les > occurrences saisies avec la fonction mysql_real_escape_string, afin de > protéger tes données contre les injections SQL. > > // On stocke le champ pseudo dans une variable $pseudo en échappant les > caractères spéciaux. > $pseudo = mysql_real_escape_string($_POST['pseudo']); > // Voici maintenant la requête de recherche des occurrences saisies dans le > formulaire. > $requete = mysql_query ("select id, pseudo from membre where pseudo like > '%$pseudo%'"); > > En fait, on peut considérer que notre ami Yannick a répondu à 90% de ta > demande, je me suis chargé des 10% restants en répondant à ta seconde > question. > > Voili voilou, teste et dis-nous si ça marche. > > Bien amicalement, > Abdel. > > -----Message d'origine----- From: Christophe Garnier > Sent: Tuesday, July 25, 2017 2:24 PM > To: Proglist > Subject: [progliste] > �tf-8?B?UmU6IFtwcm9nbGlzdGVdIO+/vXRmLTg/UT9SZWNoZXJjaGVfZGVf?�tf-8?B?Y2FyYWN0w6hyZXNfZXRfYmFzZV9kZV9kb25uw6llc18/TWVzc2FnZS1JZDog?�tf-8?B?PDFGNkM3RSAyQS1DQzVGLTQ4NTctQUI3RS1ENUVDNDY1RDI4RDNAZ21haWwu?�tf-8?B?Y29tPg�Date: > Tue, 25 Jul 2017 15:24:17 +0200 > > bonjour. Merci c’est très claire. Mais dans l’administration du site je veux > par exemple dans un champ de formulaire, rechercher un utilisateur qui > s’appelle christophe. Mais admettons que je ne sache pas exactement comment > ça s’écrit. Je veux rentrer par exemple tophe dans mon champ de formulaire. > ensuite je veux qu’en validant la recherche, qu’elle trouve tous les > éléments qui contiennent tophe. Je traite ça en php et mysql via des requêtes > préparées. Pour l’instant voici la requête que j’avais effectué avant de > poser la question sur le forum. > > > 'select id, pseudo from membre where pseudo =:pseudo'; > Merci > > >> Le 25 juil. 2017 à 13:45, Yannick Youalé <[email protected]> a écrit : >> >> Salut Christophe, >> >> >> Pour résoudre ton problème tu dois apprendre à placer le caractère % dans >> tes requêtes mysql et utiliser le mot clé de comparaison "LIKE". >> >> >> Exemple pour trouver un nom qui commence par "yan" voici une requête: >> >> >> SELECT nom FROM membres WHERE nom LIKE 'yan%' >> >> >> Si tu veux trouver les noms qui ont la chaîne "yan" à l'intérieur, tu peux >> employer une requête de ce genre: >> >> SELECT nom WHERE nom LIKE '%yan%' >> >> >> Et là, quelle que soit la position de la chaîne "yan" dans le nom, il sera >> retenu. >> >> >> J'espère que tu as compris le truc. >> >> >> Yannick Daniel Youalé >> La programmation est une religion. Aimez-la, ou quittez-la. >> www.visuweb.net >> >> >> Le 25/07/2017 à 09:30, Christophe Garnier a écrit : >>> Salut à tous. >>> Je crée une interface d’administration de mon site pour par exemple avoir >>> la liste des membres, supprimer un ou tous les membres… >>> J’utilise mysql pour la bdd. >>> Si je cherche un membre par son pseudo complet ça fonctionne bien. Par >>> contre si je frappe par exemple les 4 premières lettres du pseudo, il n’est >>> pas trouvé. Quelle est la solution pour que ça fonctionne ? >>> Merci >>> >>> Progliste : >>> Pour se d�sinscrire de la liste : >>> mailto:[email protected]?subject=unsubscribe >>> >>> Pour voir les archives de la liste : >>> http://www.mail-archive.com/[email protected]/ >>> >>> Je vous rappelle que les pi�ces jointe sont activ�s leur taille est limit� >>> � 2 MO >>> >>> Pour acc�der aux fichiers de la liste >>> http://outils.archive-host.com/partage.php?id=2Qar9Hy6ftzr >>> Ou en utilisant la nouvelle page de partage : >>> http://outils-n.archive-host.com/partage-fm0m7b947vglikp9Efpso94gt >>> Pour y ajouter des fichiers demandez-moi le ou sur la liste ou en priv�, je >>> vous r�pondrez en priv�. >>> >>> >>> >>> --- >>> Cet email a fait l'objet d'une analyse antivirus par AVG. >>> http://www.avg.com >>> >> >> >> Progliste : >> Pour se d�sinscrire de la liste : >> mailto:[email protected]?subject=unsubscribe >> >> Pour voir les archives de la liste : >> http://www.mail-archive.com/[email protected]/ >> >> Je vous rappelle que les pi�ces jointe sont activ�s leur taille est limit� � >> 2 MO >> Pour acc�der aux fichiers de la liste >> http://outils.archive-host.com/partage.php?id=2Qar9Hy6ftzr >> Ou en utilisant la nouvelle page de partage : >> http://outils-n.archive-host.com/partage-fm0m7b947vglikp9Efpso94gt >> Pour y ajouter des fichiers demandez-moi le ou sur la liste ou en priv�, je >> vous r�pondrez en priv�. >> >> > > Progliste : > Pour se d�sinscrire de la liste : > mailto:[email protected]?subject=unsubscribe > > Pour voir les archives de la liste : > http://www.mail-archive.com/[email protected]/ > > Je vous rappelle que les pi�ces jointe sont activ�s leur taille est limit� � > 2 MO > > Pour acc�der aux fichiers de la liste > http://outils.archive-host.com/partage.php?id=2Qar9Hy6ftzr > Ou en utilisant la nouvelle page de partage : > http://outils-n.archive-host.com/partage-fm0m7b947vglikp9Efpso94gt > Pour y ajouter des fichiers demandez-moi le ou sur la liste ou en priv�, je > vous r�pondrez en priv�. > > Progliste : > Pour se d�sinscrire de la liste : > mailto:[email protected]?subject=unsubscribe > > Pour voir les archives de la liste : > http://www.mail-archive.com/[email protected]/ > > Je vous rappelle que les pi�ces jointe sont activ�s leur taille est limit� � > 2 MO > Pour acc�der aux fichiers de la liste > http://outils.archive-host.com/partage.php?id=2Qar9Hy6ftzr > Ou en utilisant la nouvelle page de partage : > http://outils-n.archive-host.com/partage-fm0m7b947vglikp9Efpso94gt > Pour y ajouter des fichiers demandez-moi le ou sur la liste ou en priv�, je > vous r�pondrez en priv�. > > Progliste : Pour se d�sinscrire de la liste : mailto:[email protected]?subject=unsubscribe Pour voir les archives de la liste : http://www.mail-archive.com/[email protected]/ Je vous rappelle que les pi�ces jointe sont activ�s leur taille est limit� � 2 MO Pour acc�der aux fichiers de la liste http://outils.archive-host.com/partage.php?id=2Qar9Hy6ftzr Ou en utilisant la nouvelle page de partage : http://outils-n.archive-host.com/partage-fm0m7b947vglikp9Efpso94gt Pour y ajouter des fichiers demandez-moi le ou sur la liste ou en priv�, je vous r�pondrez en priv�.
