Trouver une requète sql particulière

Résolu
Messages postés
17
Date d'inscription
mercredi 9 novembre 2005
Statut
Membre
Dernière intervention
23 août 2006
-
Messages postés
17
Date d'inscription
mercredi 9 novembre 2005
Statut
Membre
Dernière intervention
23 août 2006
-
Bonjour,


 en faite je cherche à faire une sql particulière :


la table s'appel object et est de la forme suivante : pseudo | objet1 | objet2 | objet3 | .... et dans chaque "colonne" objet1-2 ou ... je met la quantité d'objet que l'utilisateur possède (zero par défault).


Je voudrai savoir comme faire pour, qu'avec un pseudo donné, je récupère je connaisse le nom de tous les objets qu'il possède, ainsi que la quantité ?

Je sais comment faire pour vérifier si l'utilisateur a un objet en particulier, mais les récupérer tous je ne sais pas si c'est possible...
merci d'avance de votre aide :)




Marroche

6 réponses

Messages postés
855
Date d'inscription
mardi 19 novembre 2002
Statut
Membre
Dernière intervention
28 juillet 2009
1
Hello..
je pense personellement que ta DB est pas adaptée à ce que tu veux faire.
Puisque tu veux nommer tes objets et tu veux utilise leur nom a affichage, j'aurai plutot fait un schema suivant:

1er table "objects" : objectid | name
2ieme table: "possesssions": pseudo | objectid | quantite

avec une telle structure, tu peux avoir ton affichage en une requete.

-------------------------------------
Les ordinateurs, plus on s'en sert moins, moins ça a de chance de mal marcher. [Les Shadoks]
Messages postés
991
Date d'inscription
samedi 25 octobre 2003
Statut
Membre
Dernière intervention
29 août 2013
7
petite remarque au passage
"pseudo | objectid" comme cle primaire de la 2nde table
Messages postés
694
Date d'inscription
lundi 5 décembre 2005
Statut
Membre
Dernière intervention
8 janvier 2014
18
$Response = mysql_query("select objet1, objet2, objet3 from object where pseudo = '".$Pseudo."'");
if ( $Reponse && mysql_num_rows($Reponse) ) {
   $Ligne = mysql_fetch_object($Reponse);
   echo $Pseudo.' possède '.$Ligne->objet1.' objet1, '.$Ligne->objet2'.' objet2 et '.$Ligne->objet3.' objet3');
   mysql_free_result($Reponse);
}

quelquechose comme ça ?
Messages postés
17
Date d'inscription
mercredi 9 novembre 2005
Statut
Membre
Dernière intervention
23 août 2006

Oui et non,... en faite je cherche surtout a éviter de écrire le contenu des "colonne" de la base de donné, car cela me permettrai d'avoir une sorte de base de donnée a double référence (si on peut dire ca de cette manière),... mais ton idée n'est pas mauvaise.
Je suis justement en train de regarder ce que je peut faire avec les tableau cle/valeur :
 $req $req mysql_query("SELECT * FROM objet WHERE pseudo = 'essai'") or die(mysql_error());
   
    $data = mysql_fetch_array($req);
   
    foreach($data as $cle=>$valeur)
    {
    echo $cle.' : '.$valeur.'
';
    }

voila un ébauche de ce que je suis en train de faire,... mais si tu as d'autre bonne idée, n'hésite pas.
Et merci encore.
a+

Marroche
Messages postés
17
Date d'inscription
mercredi 9 novembre 2005
Statut
Membre
Dernière intervention
23 août 2006

Merci pour ton indication,... je crois que c'est presque exactement ce qui résoud mon problème :)
Je vais utiliser ta proposition, en attendant de trouver une solution parfaite pour mon cas lol (j'y arrive lentement, avec les propriété des tableau,...)
Merci beaucoup a+

Marroche
Messages postés
17
Date d'inscription
mercredi 9 novembre 2005
Statut
Membre
Dernière intervention
23 août 2006

Salut, merci pour l'indique,... je vais modifer ca de suite.
a+

Marroche