j'ai une table ou sont enregistré dans la même case plusieurs prénoms séparés par un espace.
Je cherche à récupérer des donnés en utilisant un ou plusieurs critères, dans le SELECT je peu avoir une ou plusieurs variables.
exemple: je cherche le n° id des lignes ayant mariePierre et regis dans la colonne "titre" sans tenir compte des autres variables, avec mon code je ne récupère rien, auriez vous une réponse à me donner.
J'ai des critères différents dans titre car je n'ai pas trouvé d'autre solution, j'ai essayé de faire une table avec un critère par case 'colonne' mais j'ai le même problème, mon SELECT ne me remonte rien.
> WHERE titre LIKE :mariePierre AND :regis AND :olivier AND :anneSophie
La requête est fausse, ce devrait être :
WHERE titre LIKE :mariePierre
AND titre LIKE :regis
AND titre LIKE :olivier
AND titre LIKE :anneSophie
J'imagine qu'avec la requête de départ, la cast en int de '%...' donne 0 soit FALSE donc la clause WHERE en est fausse et la requête ne peut que rien renvoyer.
PS : je plussoie mon VDD, les conception et "modélisation" sont loin d'être idéales
Je regarde ce soir, je n'ai suivi aucune formation, je cherche sur internet et dans les livres.
encore merci.
Je vous remercie pour votre aide et vos informations, j'ai trouvé une solution qui n'est pas terrible si je suis vos dire. Je ne suis pas un professionnel et j'ai 61 ans quand même.
je vous remercie encore.
$req = $bdd->prepare("SELECT * FROM photosbis WHERE titre LIKE
'%$mariePierre%' AND titre LIKE '%$regis%' AND titre LIKE '%$olivier%' AND titre LIKE '%$anneSophie%'");
$req->execute(array(
'mariePierre' =>$mariePierre,
'regis' =>$regis,
'olivier' =>$olivier,
'anneSophie' =>$anneSophie
));
Bonjour, je reviens vers vous car le système que j'ai essayé, ne fonctionne pas correctement, réponse aléatoire pas stable et maintenant in ne fonctionne plus.
Le but de l'application est de sélectionner une photo comportant une ou plusieurs personnes,
Problème quand le sélectionne Pére et Mére "par exemple" je devrais avoir trois réponses mais je ne reçois rien car les autres variables sont vides,
et quand mon SELECT regarde dans la table il est possible qu'il y ai une valeur.
donc j'ai essayé de détruire les variables vides avant le SELECT mais je n'arrive pas à gérer le SELECT avec ses variables détruites.
Auriez vous un conseil ou une idée pour mon problème.
PS: j'ai utilisé UNSET pour détruire les variables vides mais je suis prêt à essayer tout autre procédure, n'étant pas très fort en php.
merci d'avance.
- Edité par regis62 27 mai 2022 à 12:19:44
SELECT multi critére
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
julp.fr ~ PHP < 8.0.0 : activer les erreurs PDO/SQL ~ PHP < 8.1.0 : activer les erreurs mysqli