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

Langage PHP Discussion :

problème requête php mysql


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 15
    Points : 14
    Points
    14
    Par défaut problème requête php mysql
    Bonjour à tous,
    je viens chercher de l'aide sur une requête que je souhaite mettre en place :
    j'ai une table ou j'ai 3 colonnes, id, idjeu, nom et score


    dans le champ nom il y a des doublons, par exemple j'ai

    ID IDJEU NOM SCORE
    12 2 toto 10
    15 2 tata 15
    25 3 toto 1
    84 3 tata 15
    101 4 toto 10

    je souhaite par une requête faire par exemple une recherche sur "toto tata"
    que la requête trouve les toto et tata puis si il y a des doublons dans le même idjeu, additionner les scores puis classer par score,pour mon exemple le resultat serait :
    SCORE 35=>idjeu 2
    16=>idjeu 3
    10=>idjeu 4


    j'ai pensé par un array mais je n'y arrive pas. j espére que mes explications ont été claire et que vous pourriez me guider.

    Merci

  2. #2
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2012
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Corrèze (Limousin)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2012
    Messages : 13
    Points : 16
    Points
    16
    Par défaut
    Heeu... Il n'y aurait pas 4 colonnes dans ta table plutot? Ton score additionné pour le idjeu=2 serait pas de 25?

    C'est pas tres beau ce que je vais te donner mais je pense que ça pourrait fonctionner.

    Ok il faut additionner les scores, mais faut il les insérer en base? ou simplement stocker le résultat dans une variable que tu vas réutiliser?

    Parce que si jamais tu inseres en base, que faisons nous du champ 'nom'? on choisit un des deux noms au hasard?

    Je crois que ton problème n'est pas très clair.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 15
    Points : 14
    Points
    14
    Par défaut
    Oui tu as raison pour idjeu 2 c est 25

    en fait c est pour afficher et non effectuer un enregistrement donc il faut en fait afficher le nom du jeu dans l'ordre du score et ensuite je récupère l'id pour effectuer un lien.

  4. #4
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2012
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Corrèze (Limousin)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2012
    Messages : 13
    Points : 16
    Points
    16
    Par défaut
    Simplement pour afficher les occurences dans l'ordre du score utilise simplement un 'ORDER BY score' à la fin de ta requête d'affichage. Ensuite tu veux récupérer tes deux id si le score est égal si j'ai bien compris? Mais qu'est ce que tu veux en faire ensuite?

    Si je suis ton raisonnement, tu veux afficher tes occurences dans l'ordre du score (croissant ou décroissant là n'est pas la question), et ensuite additioner les deux scores si l'IDJEU est le même pour deux occurences?

    Mais je réitère ma question du post précédent, si tu additiones les deux scores pour les IDJEU égaux, qu'est ce que tu vas faire du résultat de cette addition?

  5. #5
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 15
    Points : 14
    Points
    14
    Par défaut
    Merci de ton intervention, je me suis peut être mal exprimé, je vais décrire plus précisément ce que je cherche à faire :

    J'ai une table avec comme entrées par exemple :
    ID IDJEU NOM SCORE
    12 2 toto 10
    15 2 tata 15
    25 3 toto 1
    84 3 tata 15
    101 4 toto 10

    Dans un formulaire je souhaite faire une recherche de type : "toto tata"
    dans ma requête je vais faire un LIKE 'toto%' and LIKE 'tata%'
    si je fais un echo il va me sortir la liste ci-dessous telle quel.
    Avec le résultat de ma requête que je ne souhaite pas afficher de suite je veux vérifier si j'ai des doublons ici j'ai idjeu 2 et 3 si c'est le cas ajouter le score de idjeu 2 toto et tata puis du idjeu 3 toto tata
    puis d'afficher ce résultat final par ordre décroissant par score soit ici
    SCORE
    25 =>idjeu 2
    16 =>idjeu 3
    10 =>idjeu 4

    Dans ma premiére requête je n'ai pas besoin de classer c'est une fois que j'ai réuni les doublons et additionné leur score ou la je fais un classement.

    J'avais trouvé il y a longtemps un sujet presque identique mais utilisé sur un moteur de recherche interne par mot indexé.

    Merci de votre aide

  6. #6
    Candidat au Club
    Inscrit en
    Février 2012
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Février 2012
    Messages : 1
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par webduweb Voir le message
    Oui tu as raison pour idjeu 2 c est 25

    en fait c est pour afficher et non effectuer un enregistrement donc il faut en fait afficher le nom

    du jeu dans l'ordre du score et ensuite je récupère l'id pour effectuer un lien.
    il faut en fait afficher le nom du jeu dans l'ordre du score et ensuite je récupère l'id pour effectuer un lien.

  7. #7
    Modérateur
    Avatar de Vil'Coyote
    Homme Profil pro
    Développeur adélia & Web
    Inscrit en
    Février 2008
    Messages
    4 583
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur adélia & Web
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2008
    Messages : 4 583
    Points : 7 503
    Points
    7 503
    Par défaut
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    select idjeu, sum(score) from table group by idjeu
    la vie n'est pas cirrhose des foies ...

    Avant de poster un message Rechercher n'est pas qu'une option.
    FAQ Web - Tuto Web

Discussions similaires

  1. Problème pour construire une requête PHP/MySql
    Par Lionel_aw dans le forum Langage
    Réponses: 11
    Dernier message: 22/02/2012, 11h51
  2. Problème Flash /PHP/ MySQL
    Par admnico dans le forum Dynamique
    Réponses: 1
    Dernier message: 14/02/2008, 13h23
  3. [MySQL] Problème avec php/mysql, variables du même nom
    Par Naxosy dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 13/01/2008, 15h31
  4. [MySQL] Problème Accent PHP + MySQL
    Par ganjaaw dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 08/08/2007, 22h10
  5. [MySQL] pb de requête php /mysql
    Par digger dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 10/05/2007, 09h37

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