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 :

split() et $query_search .= (probleme voir P2) [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Février 2004
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 55
    Par défaut ...
    ou ou personne ???


  2. #2
    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
    Par défaut
    Dans un premier temps, je ne saisis pas bien l'intérêt d'utiliser LIKE alors que tu ne fais pas d'approximation, tu n'as pas de wildcard.
    Ensuite, tu ne nous donnes pas la requête complète qui est envoyée à MySQL (en supposant que ce soit bien MySQL qui crise et non PHP, ce que tu ne précises pas non plus) : comment sommes-nous supposés t'aider ?

  3. #3
    Membre confirmé
    Inscrit en
    Février 2006
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 60
    Par défaut
    moi je l'aurrais ecris comme ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $informations = @$_GET['informations'];
    $tableau = split (",", trim($informations));
    while (list($key, $valinfo) = each($tableau)){
       if ($valinfo != ''){
            $query_search .= " AND ((products.departement LIKE '$valinfo') OR  (products.ville LIKE '$valinfo')  OR (products.codepostal LIKE '$valinfo'))";
       }
    }
    en ajoutant les acolades du while

  4. #4
    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
    Par défaut
    reski : dans le cas qui nous occupe, cela ne fait aucune différence. C'est préférable à plusieurs niveaux mais c'est équivalent.

  5. #5
    Membre averti
    Inscrit en
    Février 2004
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 55
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    $informations = @$_GET['informations']; 
    $tableau = split (",", trim($informations)); 
    while (list($key, $valinfo) = each($tableau)){ 
       if ($valinfo != ''){ 
            $query_search .= " AND ((products.departement LIKE '$valinfo') OR  (products.ville LIKE '$valinfo')  OR (products.codepostal LIKE '$valinfo'))"; 
       } 
    }
    donc en faite avec se code, faire une recherche avec une seul donnée marche tres bien! mais avec plusieur données sa donne aucun résultat.

    sa marche avec plusieur données dans le cas quels soit dans la meme résultat.

  6. #6
    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
    Par défaut
    Bien sûr puisqu'il faut qu'elles soient toutes présentes (cf. ton AND).
    Je t'ai dit de mettre un OR, ce n'était pas innocent :/

  7. #7
    Membre averti
    Inscrit en
    Février 2004
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 55
    Par défaut ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     $query_search .= " OR (products.departement LIKE '$valinfo') OR  (products.ville LIKE '$valinfo')  OR (products.codepostal LIKE '$valinfo')";
    de cette facon, sa réagie comme si l'INPUT était pas renseigné...


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     $query_search .= " OR ((products.departement LIKE '$valinfo') OR  (products.ville LIKE '$valinfo')  OR (products.codepostal LIKE '$valinfo'))";
    de cette facon aussi, idem...



    sa semble simple, mais la je bloc vraiment sur un truc a la con

  8. #8
    Membre averti
    Inscrit en
    Février 2004
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 55
    Par défaut ...
    quelqu'un voit il de quoi je parle ???

  9. #9
    Membre averti
    Inscrit en
    Février 2004
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 55
    Par défaut ...
    bon je me suis démerdé a faire un code un p merdique mais sa marche tres bien

    bon je donne le résultat, si quelqu'un a mieu je suis preneur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    $informations = @$_GET['informations']; 
    $tableau = split (",", trim($informations));
    while (list($info1, $info2, $info3, $info4, $info5, $info6, $info7, $info8, $info9) = each($tableau)){
     
       if ($info1 != '' || $info2 != '' || $info3 != '' || $info4 != '' || $info5 != '' || $info6 != '' || $info7 != '' || $info8 != '' || $info9 != ''){ 
            $query_search .= " AND (products.departement LIKE '$info1') OR (products.departement LIKE '$info2') OR (products.departement LIKE '$info3') OR (products.departement LIKE '$info4') OR (products.departement LIKE '$info5') OR (products.departement LIKE '$info6') OR (products.departement LIKE '$info7') OR (products.departement LIKE '$info8') OR (products.departement LIKE '$info9')"; 
       } 
       if ($info1 != '' || $info2 != '' || $info3 != '' || $info4 != '' || $info5 != '' || $info6 != '' || $info7 != '' || $info8 != '' || $info9 != ''){ 
            $query_search .= " AND (products.ville LIKE '$info1')  OR (products.ville LIKE '$info2')  OR (products.ville LIKE '$info3')  OR (products.ville LIKE '$info4')  OR (products.ville LIKE '$info5')  OR (products.ville LIKE '$info6')  OR (products.ville LIKE '$info7')  OR (products.ville LIKE '$info8')  OR (products.ville LIKE '$info9')"; 
       } 
       if ($info1 != '' || $info2 != '' || $info3 != '' || $info4 != '' || $info5 != '' || $info6 != '' || $info7 != '' || $info8 != '' || $info9 != ''){ 
            $query_search .= " AND (products.codepostal LIKE '$info1') OR (products.codepostal LIKE '$info2') OR (products.codepostal LIKE '$info3') OR (products.codepostal LIKE '$info4') OR (products.codepostal LIKE '$info5') OR (products.codepostal LIKE '$info6') OR (products.codepostal LIKE '$info7') OR (products.codepostal LIKE '$info8') OR (products.codepostal LIKE '$info9')"; 
       } 
     
    }

    avec cela sa prend en compte 9 mots clé dans un input...


    un grand merci pour votre aide qui est pour moi formidable

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. problem voir les doublons
    Par chady dans le forum Langage SQL
    Réponses: 1
    Dernier message: 24/02/2009, 01h29
  2. [//TODO] Comment voir les balises TODO dans les problemes?
    Par romain3395 dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 06/12/2004, 09h53
  3. [DEBUTANT] probleme avec split ?
    Par matN59 dans le forum ASP
    Réponses: 6
    Dernier message: 23/10/2004, 16h47
  4. [String] Probleme incomprehensible avec split
    Par scorpiwolf dans le forum Collection et Stream
    Réponses: 3
    Dernier message: 20/07/2004, 22h21
  5. [langage] Problem avec split
    Par Ludo167 dans le forum Langage
    Réponses: 4
    Dernier message: 08/07/2004, 15h42

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