MySql: "LIKE"

Résolu
pfdp0 Messages postés 191 Statut Membre -  
pfdp0 Messages postés 191 Statut Membre -
Bonjour,
j'aimerais savoir où est l'erreur là dedans et comment rendre ce code correcte (quand je teste, je n'ai aucun résultat:
    $reponse = $bdd->query('SELECT * FROM jeu WHERE type = "'.$_POST['type'].'" AND texte LIKE "'.$_POST['choix'].'" ');

1 réponse

  1. AnyProblemHaveSolution Messages postés 24 Statut Membre 13
     
    Alors:

    Premièrement print t'as requête pour voir si tu n'as pas d'erreurs:

    $req = 'SELECT * FROM jeu WHERE type = "'.$_POST['type'].'" AND texte LIKE "'.$_POST['choix'].'" ';
    
    echo $req;


    Sinon pour le LIKE en SQL normalement il faut utiliser des % qui compte comme wildcard (*) soit au début soit a la fin soit dans les 2 cas:

    Commence par n'importe:
    'SELECT * FROM jeu WHERE type = "'.$_POST['type'].'" AND texte LIKE "%'.$_POST['choix'].'" ';


    Fini par n'importe:
    'SELECT * FROM jeu WHERE type = "'.$_POST['type'].'" AND texte LIKE "'.$_POST['choix'].'%" ';


    Commence et fini par n'importe:
    'SELECT * FROM jeu WHERE type = "'.$_POST['type'].'" AND texte LIKE "%'.$_POST['choix'].'%" ';
    4
    1. pfdp0 Messages postés 191 Statut Membre 12
       
      c'est bon j'ai résolu,
      "%'.$_POST['choix'].'%"

      j'avais un peu tout testé dont enlever les % mais avais oublié de les remettre, merci beaucoup!
      0