IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Utilisation d'un like [PDO]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 51
    Par défaut Utilisation d'un like
    Bonjour,
    Comment pourrais-je utiliser les % dans le like, car je recupère plusieurs ID dans une combobox, et je voudrais Selectionner les id qui contiennent un chiffre. Or les Idtype peuvent etre "1 2 3 4" , donc je voudrait par exemple selectionner cette colonne, car il y a le 2.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $req = $pdo->prepare("SELECT partie.*
                                        FROM partie, categorie,type_projet,type_categorie,site
                                        WHERE site.id=$siteid
                                        AND site.type LIKE '%'.type_categorie.idtype.'%'
                                        AND type_categorie.idcategorie=categorie.id
                                        AND categorie.idpartie=partie.id 
                                        GROUP BY partie.id ");
                $req->execute();
    merci

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Mettre plusieurs valeurs dans une colonne est une mauvaise idée.
    Pour trouver "1" par exemple il faudrait chercher "1 %" ou "% 1 %" ou "1 %"
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 51
    Par défaut
    J'ai résolu en trouvant ceci :
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
     AND site.type LIKE '%'||type_categorie.idtype||'%'

    Est-ce une bonne idée?

  4. #4
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 51
    Par défaut
    Enfait non cela ne marche pas, car il me ressort tout les idtypes .. Donc ça ne va pas ...

  5. #5
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    avec une liste du genre "1,2,3,4,58,9531" :

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $query = "SELECT * ".
    		" FROM TAB_TEST ".
    		" WHERE liste_ids LIKE '".$valeur_cherchee.",%' ". // au début
    		" OR liste_ids LIKE '%,".$valeur_cherchee.",%' ". // au milieu
    		" OR liste_ids LIKE '%,".$valeur_cherchee."' ". // à la fin
    		" OR liste_ids = '".$valeur_cherchee."' ". // seul
    		" ;";
    Ou encore :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $sep = ',';
    $query = "SELECT * ".
    		" FROM TAB_TEST ".
    		" WHERE liste_ids LIKE '".$valeur_cherchee.$sep"%' ". // au début
    		" OR liste_ids LIKE '%"$sep.$valeur_cherchee.$sep"%' ". // au milieu
    		" OR liste_ids LIKE '%"$sep.$valeur_cherchee."' ". // à la fin
    		" OR liste_ids = '".$valeur_cherchee."' ". // seul
    		" ;";


    N.B. Mais ça n'en est pas moins une mauvaise idée...

  6. #6
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 51
    Par défaut
    Le probleme c'est que ce n'est pas une valeurs, donc pas un $valeur, c'est une valeur qui se trouve dans une requete, donc la valeur change ..

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Utilisation spéciale de LIKE
    Par tonyskn dans le forum Langage SQL
    Réponses: 5
    Dernier message: 19/07/2024, 10h36
  2. VBA - utilisation de 'not like'
    Par tiber33 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 03/01/2014, 13h25
  3. Utilisation du mot LIKE dans une requete
    Par Astro8899 dans le forum VB.NET
    Réponses: 6
    Dernier message: 27/05/2009, 10h20
  4. [MySQL] Utilisation de SQL LIKE
    Par Interface dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 19/05/2009, 13h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo