Page 1 sur 1

ce menu est-il faisable?

Posté : 29 avr. 2005, 17:39
par dams
bonjour a tous,
je suis en train de faire une boutique en ligne, et je demandais si il etais possible de faire ce type de menu: http://tosweb.free.fr/Nouveau%20dossier ... tical.html

avec les rubriques>sous-rubriques1>sous-rubriques2 appelées dynamiquement a partir d'une base de donnée mySQL.

Je suis en train d'essayer de le faire, mais a chaque fois le code ne me retourne que les resultats de la première rubrique(dans mon cas 'ecrans'>'TFT'>'sony'), alors que dans la ma BDD il y a egalement une seconde rubrique pour vendre des imprimantes (celle-ci ne s'affiche pas):

[u]voici la structure de ma BDD[/u]:
CREATE TABLE hardware (
id INT not null AUTO_INCREMENT,
materiels VARCHAR(50) NOT NULL,
PRIMARY KEY (id));

CREATE TABLE tipe (
id INT not null AUTO_INCREMENT,
types VARCHAR(50) NOT NULL,
PRIMARY KEY (id));

CREATE TABLE marque (
id INT not null AUTO_INCREMENT,
marques VARCHAR(50) NOT NULL,
PRIMARY KEY (id));

CREATE TABLE produits (
id INT not null AUTO_INCREMENT,
materiel_id INT NOT NULL, /*id correspondant a l'id du materiel dans la table hardware*/
type_id INT NOT NULL, /*id correspondant a l'id du type dans la table tipe*/
marque_id INT NOT NULL, /*id correspondant a l'id de la marque dans la table marque*/
nom_entier VARCHAR(150) NOT NULL,
prix VARCHAR(20) NOT NULL,
descriptif TEXT NOT NULL,
images VARCHAR(100) NOT NULL,
url VARCHAR(250) NOT NULL,
PRIMARY KEY (id))

et [u]le code de requête[/u]:

[code]<?php
require('identifiant/user.inc.php');
$db = mysql_connect($mysql_host,$mysql_user,$mysql_password) or die ("impossible de se connecter a la base");
mysql_select_db($mysql_db,$db) or die ("base inexistante");
$req = mysql_query("SELECT produits.materiel_id,hardware.materiels,produits.type_id,tipe.types,produits.marque_id,marque.marques FROM produits,hardware,tipe,marque WHERE
produits.materiel_id=hardware.id AND produits.type_id=tipe.id AND produits.marque_id=marque.id") or die ("erreur sql ".mysql_error());
while($shopone = mysql_fetch_array($req)){
$matos = stripslashes($shopone['materiels']);
$types = stripslashes($shopone['types']);
$marques = stripslashes($shopone['marques']);
print'<ul id="menur">
<li><a href="#menu1">'.$matos.'</a>
<ul>
<li><a href="#">'.$types.'</a><ul>
<li><a href="#">'.$marques.'</a></li>
</ul>
</li></ul>
</li>';
}
mysql_close();
?>[/code]

Voilà si quelqu'un pourrait m'aider ca serait sympa.
merci

Posté : 29 avr. 2005, 17:55
par Cyrano
As-tu essayé d'exécuter ta requête directement dans phpMyAdmin, et si oui, obtiens-tu le resultat souhaité ?

Posté : 29 avr. 2005, 20:07
par guy
stoque tes données dans un array tu auras plus facile a traiter le javascript apres.
Guy

Posté : 29 avr. 2005, 20:22
par Invité
As-tu essayé d'exécuter ta requête directement dans phpMyAdmin, et si oui, obtiens-tu le resultat souhaité ?
ca me retourne ceci:
materiel_id materiels type_id types marque_id marques
1 ecrans 1 TFT 1 epson
2 imprimantes 2 LCD 2 sony


et au point de vue u menu, je ne suis pas sûr que ce soit que je veux...