Bonjour

Je voudrai faire une sélection de 3 champs sur trois tables afin de les inclure dans une boucle while, en fonction d"un num_session, num_demande, num_menu, pour affiche dans un tableau avec la boucle while , la catégorie, la quantité_totale, le prix_variant.

le code et les tables ci-dessous :

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
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
 
<? session_start(); ?>
<?
$db = mysql_connect("localhost","root","");
      mysql_select_db("essai");
$id = 4;
$sel_1 = "SELECT num_menu FROM fr_part_demande WHERE num_session = $id";
$req_2 = mysql_query($sel_1,$db);
$res_a = mysql_result($req_2,'num_menu');
$sel_2 = "SELECT num_demande FROM fr_part_demande WHERE num_session = $id";
$req_1 = mysql_query($sel_2,$db);
$res_b = mysql_result($req_1,'num_demande');
$sql ="SELECT a.categorie,a.num_menu,b.num_demande,b.quantite_totale,b.prix_variant FORM fr_menu_cat a, fr_calcul_qte_pr_variant b WHERE a.num_demande = b.num_demande AND a.num_menu = $res_a AND b.num_demande = $res_b"; 
$reponse = mysql_query($sql,$db);
while($donnees = mysql_fetch_array($reponse)){
?>
 
 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body>
 
  <div id="Layer14" style="position:absolute; width:218px; height:115px; z-index:13; left: 208px; top: 25px;"> 
    <table border="1">
  <tr><th colspan="3" align="center">Vos Demandes</th></tr>
  <tr>
   <td align="center" bgcolor="#669999"><b>Catégorie</b></td>
   <td align="center" bgcolor="#669999"><b>Quantité Totale</b></td>
   <td align="center" bgcolor="#669999"><b>Prix Variant</b></td>
</tr>
<tr>  
<td bgcolor="#FFFFFF"><b><? echo $donnees['categorie'];?></b></td>
<td bgcolor="#FFFFFF"><b><? echo $donnees['quantite_totale'];?></b></td>
<td bgcolor="#FFFFFF"><b><? echo $donnees['prix_variant'];}?></b></td>
</tr>
  </table>
  </div>
</body>
</html
Table 1 :
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
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
 
-- phpMyAdmin SQL Dump
-- version 2.6.1
-- http://www.phpmyadmin.net
-- 
-- Serveur: localhost
-- Généré le : Jeudi 13 Avril 2006 à 15:26
-- Version du serveur: 4.1.9
-- Version de PHP: 4.3.10
-- 
-- Base de données: `essai`
-- 
 
-- --------------------------------------------------------
 
-- 
-- Structure de la table `fr_calcul_qte_pr_variant`
-- 
 
CREATE TABLE `fr_calcul_qte_pr_variant` (
  `num_demande` int(11) NOT NULL default '0',
  `num_menu` int(11) NOT NULL default '0',
  `quantite_totale` int(11) NOT NULL default '0',
  `prix_variant` int(11) NOT NULL default '0',
  KEY `num_demande` (`num_demande`),
  KEY `num_menu` (`num_menu`),
  KEY `quantite_totale` (`quantite_totale`),
  KEY `prix_variant` (`prix_variant`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
 
-- 
-- Contenu de la table `fr_calcul_qte_pr_variant`
-- 
 
INSERT INTO `fr_calcul_qte_pr_variant` VALUES (1, 23, 46000000, 999000000);
Table 2 :
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
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
 
-- phpMyAdmin SQL Dump
-- version 2.6.1
-- http://www.phpmyadmin.net
-- 
-- Serveur: localhost
-- Généré le : Jeudi 13 Avril 2006 à 15:28
-- Version du serveur: 4.1.9
-- Version de PHP: 4.3.10
-- 
-- Base de données: `essai`
-- 
 
-- --------------------------------------------------------
 
-- 
-- Structure de la table `fr_part_demande`
-- 
 
CREATE TABLE `fr_part_demande` (
  `num_demande` int(11) NOT NULL auto_increment,
  `num_session` text NOT NULL,
  `num_menu` text NOT NULL,
  `date_demande` text NOT NULL,
  `date_demande_fin` text NOT NULL,
  `temps_restant` text NOT NULL,
  `prix_souhaite` text NOT NULL,
  `quantite_commande_maitre` text NOT NULL,
  `titre` text NOT NULL,
  `photo` text NOT NULL,
  `remarque` text NOT NULL,
  PRIMARY KEY  (`num_demande`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=57 ;
 
-- 
-- Contenu de la table `fr_part_demande`
-- 
 
INSERT INTO `fr_part_demande` VALUES (1, '4', '23', '', '15:30:06', '4 J : 16 H : 54 M : 16 S', 'Le moins cher', '21', 'Acer Proliant X2 4Go DDR400 Ati radeon x1900xxt 512 Mo Pci', 'MSI.GIF', 'je ne sais pas');
Table 3:
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
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
 
-- phpMyAdmin SQL Dump
-- version 2.6.1
-- http://www.phpmyadmin.net
-- 
-- Serveur: localhost
-- Généré le : Jeudi 13 Avril 2006 à 15:32
-- Version du serveur: 4.1.9
-- Version de PHP: 4.3.10
-- 
-- Base de données: `essai`
-- 
 
-- --------------------------------------------------------
 
-- 
-- Structure de la table `fr_menu_cat`
-- 
 
CREATE TABLE `fr_menu_cat` (
  `num_menu` int(11) NOT NULL auto_increment,
  `categorie` text NOT NULL,
  `parent` int(11) NOT NULL default '0',
  `photos` text NOT NULL,
  PRIMARY KEY  (`num_menu`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=93 ;
 
-- 
-- Contenu de la table `fr_menu_cat`
-- 
 
INSERT INTO `fr_menu_cat` VALUES (1, 'A', 1, '');
INSERT INTO `fr_menu_cat` VALUES (2, 'C', 1, '');
INSERT INTO `fr_menu_cat` VALUES (3, 'E', 1, '');
INSERT INTO `fr_menu_cat` VALUES (4, 'H', 1, '');
INSERT INTO `fr_menu_cat` VALUES (5, 'Informatique', 1, '');
INSERT INTO `fr_menu_cat` VALUES (6, 'T', 1, '');
INSERT INTO `fr_menu_cat` VALUES (7, 'Ordinateurs Complets', 5, '');
INSERT INTO `fr_menu_cat` VALUES (8, 'Ordinateurs Portables', 5, '');
INSERT INTO `fr_menu_cat` VALUES (9, 'Ordinateurs Tablets', 5, '');
INSERT INTO `fr_menu_cat` VALUES (10, 'PDA', 5, '');
INSERT INTO `fr_menu_cat` VALUES (11, 'Composants', 5, '');
INSERT INTO `fr_menu_cat` VALUES (12, 'Périphériques', 5, '');
INSERT INTO `fr_menu_cat` VALUES (13, 'Connectiques', 5, '');
INSERT INTO `fr_menu_cat` VALUES (14, 'Logiciels', 5, '');
INSERT INTO `fr_menu_cat` VALUES (15, 'Jeux', 5, '');
INSERT INTO `fr_menu_cat` VALUES (16, 'Autres', 5, '');
INSERT INTO `fr_menu_cat` VALUES (17, 'AMD', 7, '');
INSERT INTO `fr_menu_cat` VALUES (18, 'Intel', 7, '');
INSERT INTO `fr_menu_cat` VALUES (19, 'Mac', 7, '');
INSERT INTO `fr_menu_cat` VALUES (21, 'Via', 7, '');
INSERT INTO `fr_menu_cat` VALUES (22, 'Autres', 7, '');
INSERT INTO `fr_menu_cat` VALUES (23, 'Acer', 17, '');
Voila j'ai essayé plusieurs methode pour recupérer les données. La c'est la dernière que j' ai fait. Je commence à craquer !