Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : trier par WHERE avec une variable [ Archives / Bases de données ] (benji86446)

mercredi 2 mars 2005 à 14:26:47 | trier par WHERE avec une variable

benji86446

Bonjour tout le monde!

Voila, j'ai une petite question à propos des requetes SQL. J'aimerais trier les résultats lus sur une table par rapport aux résultats d'une autre table.
Je m'explique:

Je souhaites dans un premier temps lire des données sur une table

$sql = "SELECT  id FROM table1";
    $result = $db->sql_query($sql);
 while (list($id)=mysql_fetch_array($result)){}

Maintenant, j'aimerais afficher toutes les information d'une seconde table ayant leur id égal à $id (ci dessus). Voila ce que j'ai essayé:

$sql = "SELECT  id2 FROM table2 WHERE id2=$id";
    $result = $db->sql_query($sql);
 while (list($id2)=mysql_fetch_array($result)){}

Sauf que ça ce marche pas. Comment faire?

Merci d'avance pour toutes réponses

Benji
 

mercredi 2 mars 2005 à 14:45:56 | Re : trier par WHERE avec une variable

davwart

salut.
plusieurs choses:
1 - pourrais tu essayer de nous dire quelle est l'erreur?
parce que "ça marche pas", c'est trop binaire ;)
2 - tu peux faire des requetes sur plusieurs table en meme temps :

"select t1.id, t2.id2 FROM table1 t1, table2 t2 WHERE t1.id=t2.id2"




-------------------------------------
Les ordinateurs, plus on s'en sert moins, moins ça a de chance de mal marcher. [Les Shadoks]

mercredi 2 mars 2005 à 16:28:01 | Re : trier par WHERE avec une variable

benji86446

Oups désolé pour le message d'erreur (moi qui d'habitude suis le premier à raler quand on ne précise pas la message qui s'affiche quand il y en a un ^^). Le voici:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/web43/html/kidlogis.com/modules/Live/index.php on line 50

Pour les requêtes sur plusieurs tables en même temps j'ai le même message d'erreur. Au lieu de vous donner un exemple comme je l'ai fait, je vais vous donner mon vrai code (il s'agit du code d'un live texte pour un match de foot):

$sql = "SELECT  idmatch, equipe1, score1, equipe2, score2 FROM nuke_live_match order by `idmatch` desc limit 1";
    $result = $db->sql_query($sql);
 while (list($idmatch, $equipe1, $score1, $equipe2, $score2)=mysql_fetch_array($result)){}

$sql = "SELECT idcom, nummatch, numminute, commentaire1, commentaire2, commentaire FROM nuke_live_access WHERE nummatch=$idmatch order by 'idcom' desc";
    $result = $db->sql_query($sql);
 while (list($idcom, $nummatch, $numminute, $commentaire1, $commentaire2, $commentaire)=mysql_fetch_array($result)){}

Comme vous pouvez le voir, j'essaye pour la premiere table d'afficher la derniere entrée uniquement (chaque entrée identifiée par idmatch) et dans la deuxieme table, j'essaye donc d'afficher tous les commentaires dont le numero du match (nummatch) est égal à l'idmatch de la premiere table.

Merci

mercredi 2 mars 2005 à 16:57:00 | Re : trier par WHERE avec une variable

davwart


re !
alors.. une solution tres simple de debuguage !
ajoute " or die(mysql_error())" apres ton sql query.
tu as un probleme avec ta requete, le mysql_error() va te sortir ton erreur ;)
-------------------------------------
Les ordinateurs, plus on s'en sert moins, moins ça a de chance de mal marcher. [Les Shadoks]

mercredi 2 mars 2005 à 17:13:54 | Re : trier par WHERE avec une variable

benji86446

Bon, j'ai modifié mon code par

$sql = "SELECT idcom, nummatch, numminute, commentaire1, commentaire2, commentaire FROM nuke_live_access WHERE nummatch=$idmatch order by 'idcom' desc";
    $result = $db->sql_query($sql) or die(mysql_error());
 while (list($idcom, $nummatch, $numminute, $commentaire1, $commentaire2, $commentaire)=mysql_fetch_array($result)){}

Et voila le message que j'obtiens:

You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'order by 'idcom' desc' at line 1

mercredi 2 mars 2005 à 17:16:45 | Re : trier par WHERE avec une variable

benji86446

Autre chose, lorsque je supprime le "WHERE nummatch=$idmatch" de la requete, le script marche, seulement j'ai les commentaires de tous les matchs qui s'affichent à la suite, et non pas seulement ceux du dernier match enregistré

mercredi 2 mars 2005 à 18:09:43 | Re : trier par WHERE avec une variable

tucsoufle

salut
essai de changer ta requete par celle ici :
$sql = "SELECT idcom, nummatch, numminute, commentaire1, commentaire2, commentaire FROM nuke_live_access WHERE nummatch=".$idmatch." order by 'idcom' desc";
c'est peut etre un probleme de concatenation !
autrement, verifie le nom de tout tes champs

Je te donne une idée, tu me donnes une idée, nous avons chacun deux idées.
Mon site Internet


mercredi 2 mars 2005 à 18:28:27 | Re : trier par WHERE avec une variable

benji86446

j'ai toujours le même message d'erreur. Pour ce qui est des noms des champs, ils doivent etre bons etant donné que dès que j'enleve WHERE nummatch=idmatch tout marche (même si j'ai tous les commentaires qui s'affichent et non plus ceux que je veux uniquement. Sinon si on fais la requete des deux tables en une fois, vous le coderiez comment? Parce qu'il est possible que je me sois trompé, j'avais mis

$sql = "SELECT t1.idmatch, t2.idcom, t2.nummatch, t2.numminute, t2.commentaire1, t2.commentaire2, commentaire FROM nuke_live_match t1, nuke_live_access t2 WHERE t2.nummatch=t1.idmatch order by 't2.idcom' desc";
    $result = $db->sql_query($sql) or die(mysql_error());
 while (list($idmatch, $idcom, $nummatch, $numminute, $commentaire1, $commentaire2, $commentaire)=mysql_fetch_array($result)){}


mercredi 2 mars 2005 à 19:48:09 | Re : trier par WHERE avec une variable

tucsoufle

donne nous le code sql de ta table !
et rajoute des ' comme ca : WHERE nummatch='".$idmatch."' order
ca doit pas etre ça mais bon...

Je te donne une idée, tu me donnes une idée, nous avons chacun deux idées.
Mon site Internet


mercredi 2 mars 2005 à 20:42:24 | Re : trier par WHERE avec une variable

benji86446

Je vous passe carement le script pour la créer (comme ça il me suffit de faire un exporter pour l'avoir ^^)

CREATE TABLE `nuke_live_match` (
  `idmatch` tinyint(4) NOT NULL auto_increment,
  `equipe1` varchar(50) NOT NULL default '',
  `score1` char(2) NOT NULL default '',
  `equipe2` varchar(50) NOT NULL default '',
  `score2` char(2) NOT NULL default '',
  PRIMARY KEY  (`idmatch`)
) TYPE=MyISAM AUTO_INCREMENT=3 ;

CREATE TABLE `nuke_live_access` (
  `idcom` tinyint(4) NOT NULL auto_increment,
  `nummatch` tinyint(4) NOT NULL default '0',
  `numminute` varchar(6) default NULL,
  `commentaire1` varchar(255) default NULL,
  `commentaire2` varchar(255) default NULL,
  `commentaire` varchar(255) default NULL,
  PRIMARY KEY  (`idcom`)
) TYPE=MyISAM AUTO_INCREMENT=17 ;



1 2

Cette discussion est classé dans : table, sql, id, trier, result


Répondre à ce message

Sujets en rapport avec ce message

Trier une table avec le contenu d'une variable [ par bullo95 ] Bonjour!! Voila mon probleme premiere page, un petit moteur de recherche par mots clefs. qui va a la page 2 page 2 la liste de tt les article compten Probleme recuperation de l'id d'une table pour insérer dans une autre par la methode update [ par Alpha911 ] Bonjour,Je test plusieurs methodes pour pouvoir prendre l'id d'une table qui et la recopier dans une autre table j'ai 2 tables UTILISATEUR et une autr Probleme Récursivité [ par Grogan ] Bonjour,Je suis entrain d'écrire une fonction qui me permet d'afficher tout les liens contenu dans une de mes tables de base de données. Ces liens son Création forum probleme requete sql [ par dendenis ] Mesdames, Messieurs Bonjour !je vous expose mon probleme.Je souhaiterais créer moi meme mon forum (non pas que je n'aime pas les forums tout fait, mai TreeView à partir d'une table MySQL [ par crazygogo ] Bonjour à tous,j'ai cherché pas mal sur ce site et sur le web mais pas moyen de trouver la solution à mon problème (pourtant ça me semble être un clas Export d'une table [ par vinise ] Bonjour je cherche un script qui m'exporterais une table sql en texte et qui me l'affiche (sous forme sql)Qvoir exactement le même resulta que quand j aide pour affichage... [ par Nicorad ] Bonjour ou re-boujour à tous...J'ai un autre petit problème. Je suis en train de creer un site pour un orchestre. J'ai donc une page avec la liste des XSS dans requete sql un peu spéciale [ par mickadevelop ] Bonjour à tous et toutes,J'ai une question concernant les requete mysql et la sécurité relative au injections sql.(cette requete est utilisé que pour lister les colonnes d'une table SQL [ par garfield26 ] Bonjour,je cherche à lister le nom des colonne et le contenu d'une table sql pour en créer une nouvelle requete.exemple : j'ai la table test avec les insert 2 clé [ par jaafar50 ] Je voudrais savoir comment on fait pour inserer dans une table dont la clé primaire est la concaténation de deux autre clé venant d'autre table.table-


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,390 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.