RECHERCHER :
COMMUNAUTE MP
Identifiez vous ...
Devenir Membre
J'ai oublié mon MDP
DOMAINE MP
Bavardages
Langages Généraux
Langages Web
Langages DotNet
Autres langages
Dev. Jeux Video
Sécurité
Sys. Exploitation
Graphismes
Logiciels
Réseaux
Bases de données
Méthodologies
Emplois High-tech
Aide juridique
Articles juridiques
FORUM
Index des forums
Ajouter un sujet
Rechercher sujet
Contact Responsable
Devenir modérateur
CHAT MP IRC
Votre pseudo ...
Srv: irc.moteurprog.com
Chan: #MoteurProg
PARTICIPER
Plus de 3500 emplois.
Rechercher un job
Déposez votre CV
Emplois High-tech

Visiteur MP

 Comment batir cette requête ?

Forum : PHP - BDD
Sous Catégorie : BDD
Type du sujet : Sujet Normale
FAQ : FAQ PHP - BDD

SUIVI DES SUJETS PAR MAIL

SUIVI PAR MAIL INACTIF

RESOLUTION DU SUJET SUJET NON RESOLU
BLOQUAGE DU SUJET SUJET ACTIF
APPARTENANCE A LA FAQ N'APPARTIENT PAS A LA FAQ


PAGE : [1]

POSTER UN NOUVEAU SUJET REPONDRE A CE SUJET

FORUM PHP - BDD

PREMIERE PAGE

PAGE PRECEDENTE

Page précedente

Page suivante

PAGE SUIVANTE

DERNIERE PAGE
sikkle
Nouveau membre
Inscrit : 26/05/2007
Messages : 1
Message
#134542
Posté le 26/05/07 à 02:19
Table : User
Champ : idUser, nom, prenom, surnom


Table : JeuxSystem (ce qui veux dir liste de jeux inclus dans le system, les gens ne peuvent qu'ajouté des jeux listés dans le system)
Champ : idJeuxSystem, nomdujeux, detailsdujeux

Table : JeuxUser
Champ : idJeuxUser, idUser, LienIdJeuxSystem

Ce que je désire faire est ceci :

J'ai une liste de choix permettant d'ajouter des jeux, par contre dans cette liste, les jeux ayant déjà été ajouté au user, je voudrais pas qu'il aparaisse dans cette liste.


Ma box list a remplir doit l'etre donc avec : idJeuxSystem & nomdujeux (idJeuxSystem pour la future écriture & nomdujeux pour etre lisible dans la liste de choix)

Donc en terme sql je cherche a reproduire :

Selectionner JeuxSystem.idJeuxSystem, JeuxSystem.nomdujeux WHERE JeuxSystem.idJeuxSystem N'égale ou ne se retrouve pas dans JeuxUser.LienIdJeuxSystem AND JeuxUser.idUser = '2'


Bien sur le deux sera remplacé par la bonne variable par la suite.

Quelqu'un reussi a y voir clair ?

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Publicité
Inscrit : X
Messages : X
Message
#Aucun

HAUT DE PAGE

  

Visiteur MP
Membre du club
Inscrit :
Messages : 1255
Message
#134554
Posté le 26/05/07 à 11:21
Hum salut, je crois que j'ai compris ton problème : tu veux faire une liste déroulante dans laquelle apparaîssent tous les noms de jeux de ton site (JeuxSystem) sauf ceux que l'utilisateur a ajouté lui même ou utilise déjà ^^.

Personnellement, je te conseillerai, plutôt que de faire une requête compliquée, en considérant que les idJeuxUser correspondent avec les idJeuxSystem (c'est à dire que si l'tilisateur a déjà un jeu, l'id du JeuxSystem qu'il aura choisi sera le même que l'id du JeuxUser et cela signifie aussi qu'ils apparaîssent dans le même ordre dans ta BDD) de réaliser du code PHP avec un simple if du genre :

JE NE METS PAS LA BALISE CODE CAR LE COLORATEUR INTERPRETE MAL ET MODIFIE LE CODE :


db_connect(); //ta fonction préécrite pour se connecter à ta BDD, ou alors les insctructions pour le faire à la place
$query = "select * from JeuxSystem"; //première requête
$result = mysql_query($query);
$query2 = "select * from JeuxUser"; //deuxième requête effectuée en parallèle
$result2 = mysql_query($query2);
echo "<select name='votre_choix_de_jeux'>"; //affiche le début de la liste
while ($donnees = mysql_fetch_array($result))
{
$donnees2=mysql_fetch_array($result2);
if ( $donnees['idJeuxSystem'] != $donnees2['idJeuxUser'] )
{
echo "<option value='".$donnees['idJeuxSystem']."'>".$donnees['idJeuxSystem']."</option>";
}
else
continue;
}
echo "</select>";

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE ALLER VOIR SON SITE

Visiteur MP
Membre du club
Inscrit :
Messages : 1255
Message
#134555
Posté le 26/05/07 à 11:33
Sinon j'ai aussi une autre solution, je pense qu'elle fonctionnera mieux, mais elle est plus dure :


db_connect(); //ta fonction préécrite pour se connecter à ta BDD, ou alors les insctructions pour le faire à la place

$query = "select * from JeuxSystem"; //première requête
$result = mysql_query($query);
$query2 = "select * from JeuxUser";
$result2 = mysql_query($query2);
echo "<select name='votre_choix_de_jeux'>"; //affiche le début de la liste
while ($donnees = mysql_fetch_array($result))
{
$donnees2=mysql_fetch_array($result2);
str_replace($donnees2['idJeuxUser'], '', $donnees['idJeuxSystem'])
echo "<option value='".$donnees['idJeuxSystem']."'>".$donnees['idJeuxSystem']."</option>";
}
echo "</select>";

Et si ça ne marche pas, demande de l'aide à un modo, je te conseille particulièrement maniacode ^^ Smiley

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE ALLER VOIR SON SITE

Visiteur MP
Membre du club
Inscrit :
Messages : 1255
Message
#134561
Posté le 26/05/07 à 13:59
Je pense que je viens de touver une autre solution pour ta requête :


echo "<select>";
$query="select * from Jeuxuser";
$result=mysql_query($query);
$donnees=mysql_fetch_array($result);
$query2="select * from JeuxSystem where idJeuxSystem != '{$donnees['idJeuxUser']}'";
$result2=mysql_query($query);
while ($donnees2=mysql_fetch_array($result2))
{
echo "<option value='{$donnees2['nomdujeux']}'>{$donnees2['nomdujeux']}</option>";
}
echo "</select>";

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE ALLER VOIR SON SITE
POSTER UN NOUVEAU SUJET REPONDRE A CE SUJET

PREMIERE PAGE

PAGE PRECEDENTE Page précédente

Page suivante

PAGE SUIVANTE DERNIERE PAGE

FORUM PHP - BDD



    PAGE : [1]



.: Site Web développé par Julien Pichot et l'équipe MPWG avec www.evolvia-web.com :.