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

Requêtes MySQL Discussion :

Intégrer un tableau dans une requête mysql


Sujet :

Requêtes MySQL

  1. #1
    Membre régulier Avatar de GarGamel55
    Profil pro
    Inscrit en
    Août 2005
    Messages
    154
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 154
    Points : 106
    Points
    106
    Par défaut Intégrer un tableau dans une requête mysql
    Salut ,

    Comment faire pour intégrér un array dans ma requête Mysql
    J'ai splitté une phrase et les segments doivent me servir à faire une requête.

    Le nombre de segment est aléatoire.

    Exemple :
    $entry[0]=Chenal
    $entry[1]=médaille
    $entry[2]=argent
    .....
    Dans ma requête actuelle je mets les $entry[] manuellement:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql= "SELECT count(id) FROM fiche WHERE MATCH (titre, panier) AGAINST ('+$entry[0] +$entry[1]' IN BOOLEAN MODE)" ;
    Comment mettre automatiquement tout les $entry[] que j'ai généré au préalable dans ma requête ?



    Merci bcp

  2. #2
    Membre éprouvé Avatar de macbook
    Inscrit en
    Février 2006
    Messages
    838
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 838
    Points : 1 009
    Points
    1 009
    Par défaut
    Avec implode !

  3. #3
    Membre régulier Avatar de GarGamel55
    Profil pro
    Inscrit en
    Août 2005
    Messages
    154
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 154
    Points : 106
    Points
    106
    Par défaut
    Citation Envoyé par macbook
    Avec implode !
    Le problème est que j'ai besoin de bien séparé les entry[] car cette requête me sert pour faire une moteur de recherche

    Car si j'implode il considéra 1 seul critère recherche au lieu de 3(ou 4 etc ..)
    du coup ma recherche n'est pas pertinente

  4. #4
    Membre éprouvé Avatar de macbook
    Inscrit en
    Février 2006
    Messages
    838
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 838
    Points : 1 009
    Points
    1 009
    Par défaut
    Le truc est de construire une chaine dynamique que tu implémenteras (abus de language ?) dans ta requête.

    Avec implode et un espace en argument de séparation tu as déjà une chaine exploitable.

    Je ne connais plus la syntaxe exact de ce type de requête, mais en appliquant une fonction utilisateur à chaque membre du tableau (par exemple ajouter un "+" devant chaques valeurs) avant l'implode tu dois pouvoir le faire.

  5. #5
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    Salut

    Je pense qu'implode() est bien la fonction que tu voudrais utiliser. Voici comment cela fonctionne, au cas où il y ait une légère incompréhension : lorsques tu construis une requête, c'est en PHP que tu le fais. Ensuite, tu l'envoies à MySQL. Ce dernier ne verra donc jamais l'appel à implode() mais une requête correctement écrite.

    Essaie :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql= "SELECT count(id) FROM fiche WHERE MATCH (titre, panier) AGAINST ('+".implode('+', $entry)."' IN BOOLEAN MODE)" ;

  6. #6
    Membre régulier Avatar de GarGamel55
    Profil pro
    Inscrit en
    Août 2005
    Messages
    154
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 154
    Points : 106
    Points
    106
    Par défaut
    Merci à vous c'était bien ça

    du coup ça marche niquel, j'ai enfin un moteur de recherche pas trop mal et un minimum intuitif


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

Discussions similaires

  1. Réponses: 14
    Dernier message: 09/10/2010, 00h44
  2. Utilisation d'un tableau dans une requête
    Par stigma dans le forum Access
    Réponses: 2
    Dernier message: 20/12/2007, 10h42
  3. [MySQL] Affichage dans un tableau d'une requête MySQL
    Par Lenalyon dans le forum PHP & Base de données
    Réponses: 19
    Dernier message: 18/12/2007, 13h16
  4. [MySQL] mettre un tableau dans une table mysql
    Par lodan dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 16/11/2006, 23h13
  5. [Tableaux] Passer un tableau dans une requête HTTP ??
    Par haffouff dans le forum Langage
    Réponses: 2
    Dernier message: 09/05/2006, 17h17

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