begin process at 2012 05 31 20:20:45
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Base de données

 > 

MySQL

 > 

tableau a 3 dimensions


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

tableau a 3 dimensions

lundi 21 août 2006 à 19:29:32 | tableau a 3 dimensions

ldevun

Bonjour, j'essaye de créé un tableau a 3 dimensions, mais celui-ci ne fonctionne pas bien, voici mon code :

<? include ("host.php");
$requete = "SELECT p.id_prod, nom_prod, image_prod, prix_prod, notice_prod, doc_prod, nom_ssfam,nom_fam  FROM produit p, sousfamille s,lien l, famille f WHERE l.id_prod=p.id_prod AND l.id_ssfam=s.id_ssfam AND f.id_fam=s.id_fam  ORDER BY nom_ssfam";
      $result = mysql_query($requete) or die ('Erreur : '.mysql_error() );
      while($ln = mysql_fetch_assoc($result)){
       
       
      
       $tableau["grandtitre"] = $ln['nom_fam'];
       $tableau["famille"]["titre"] = $ln['nom_ssfam'];       
       $tableau["famille"]["produits"]["id"] = $ln['id_prod']; 
       $tableau["famille"]["produits"]["designation"] = $ln['nom_prod'];       
       $tableau["famille"]["produits"]["prix"] = $ln['prix_prod'];
       $tableau["famille"]["produits"]["image"] = $ln['image_prod'];
       $tableau["famille"]["produits"]["pdf1"] = $ln['notice_prod'];
       $tableau["famille"]["produits"]["pdf2"] = $ln['doc_prod'];
       
       }

      
          echo $tableau["grandtitre"];
              
      foreach ($tableau as $tab) {
      ?><TABLE>
  <TR bgColor=#b42127>
          <TD><?=$tab["grandtitre"]; ?></TD></TR>
  </TABLE>
      <?foreach ($tableau["famille"] as $cat) {
      
      ?>
      <br>
  <TABLE cellSpacing=0 cellPadding=0 width=650 border=0>
  <TR bgColor=#b42127>
          <TD>&nbsp;&nbsp;<?=$cat['titre']?></TD></TR>
  </TABLE>
   

   <TABLE>
      <?
      foreach ($tableau["famille"]["produits"] as $produit) {
      ?>
      
      <TR height="54">
      <TD><?=$produit['id']?></TD>
      <TD><?=$produit['designation']?></TD>
      <TD><?=$produit['prix']?></TD>
            <TD><?=$produit['id']?></TD>
      <TD><?=$produit['pdf1']?></TD>
      <TD><?=$produit['pdf2']?></TD>
      </TR>
      <?
      }
      
      echo '</table></div>';
      }
      }

mardi 22 août 2006 à 09:03:13 | Re : tableau a 3 dimensions

davwart

Salut

je n'ai pas regardé ton code en details mais...
1 - tu dis ça ne fonctionne pas tres bien..ok , mais qu'est ce que ça affiche alors ?
2 - je parierai sur le fait que ton tableau n'a qu'une seule entrée produit car quand tu fait ça:
     while($ln = mysql_fetch_assoc($result)){     
       $tableau["grandtitre"] = $ln['nom_fam'];
       $tableau["famille"]["titre"] = $ln['nom_ssfam'];       
       $tableau["famille"]["produits"]["id"] = $ln['id_prod']; 
       $tableau["famille"]["produits"]["designation"] = $ln['nom_prod'];       
       $tableau["famille"]["produits"]["prix"] = $ln['prix_prod'];
       $tableau["famille"]["produits"]["image"] = $ln['image_prod'];
       $tableau["famille"]["produits"]["pdf1"] = $ln['notice_prod'];
       $tableau["famille"]["produits"]["pdf2"] = $ln['doc_prod'];     
       }
tu ecrases les valeurs de ton tableau à chaque tour de boucle, au lieu de les ajouter....
par exemple, si tu veux ajouter un produit :
$tableau["famille"]["produits"][]=array("id" => $ln['id_prod'],  "designation" => $ln['nom_prod'], ....)


-------------------------------------
Les ordinateurs, plus on s'en sert moins, moins ça a de chance de mal marcher. [Les Shadoks]
mardi 22 août 2006 à 09:30:57 | Re : tableau a 3 dimensions

ldevun

Bonjour,
J'ai suivi ton conseil et le probleme c'est qu'il m'affiche pour chaque titre et grand titre tous les produits alor que je souhaite que pour chaque grand titre il m'affiche les titres et les produits de ces titres. Voila mon nouveau code, je sais pas si j'ai été très clair?

while($ln = mysql_fetch_assoc($result)){
       
       
      
       $tableau["grandtitre"] = $ln['nom_fam'];
       $tableau["famille"]["titre"] = $ln['nom_ssfam'];       
       $tableau["famille"]["produits"]["id"] = $ln['id_prod']; 
       $tableau["famille"]["produits"]["designation"] = $ln['nom_prod'];       
       $tableau["famille"]["produits"]["prix"] = $ln['prix_prod'];
       $tableau["famille"]["produits"]["image"] = $ln['image_prod'];
       $tableau["famille"]["produits"]["pdf1"] = $ln['notice_prod'];
       $tableau["famille"]["produits"]["pdf2"] = $ln['doc_prod'];
       
       }
mercredi 23 août 2006 à 02:26:48 | Re : tableau a 3 dimensions

eXon

Membre Club
Réponse acceptée !
La facon la plus aproprié serait de mettre le numéro qui incrémente au début de la variable
$i = 0;
while($ln = mysql_fetch_assoc($result)){
       $tableau[$i]["grandtitre"] = $ln['nom_fam'];
       $tableau[$i]["famille"]["titre"] = $ln['nom_ssfam'];       
       $tableau[$i]["famille"]["produits"]["id"] = $ln['id_prod']; 
       $tableau[$i]["famille"]["produits"]["designation"] = $ln['nom_prod'];       
       $tableau[$i]["famille"]["produits"]["prix"] = $ln['prix_prod'];
       $tableau[$i]["famille"]["produits"]["image"] = $ln['image_prod'];
       $tableau[$i]["famille"]["produits"]["pdf1"] = $ln['notice_prod'];
       $tableau[$i]["famille"]["produits"]["pdf2"] = $ln['doc_prod'];
       $i++;
}

L'on est obligé d'utiliser une variable d'incrémention parce qu'il faut récupérer le numéro du premier pour le garder pour chacun. Par la suite, tu peux utiliser une fonction du genre pour tous les afficher:

foreach($tableau as $value)
{
       echo $value["grandtitre"];
       echo $value["famille"]["titre"];
       [...]
}

----------------
eXon
http://www.lookstrike.com


Cette discussion est classée dans : tableau, id, famille, ln, prod


Répondre à ce message

Sujets en rapport avec ce message

[MySQL] Sauvegarde d'un tableau dans une table [ par cedvoyage ] Bonjour,J'aimerais sauvegarder un tableau (multimensionnel) dans ma base MySQL.Or quand j'essaye je n'ai que 'Array' de marquer dans le champ de ma ta alimenter un tableau avec des variables de session [ par pichoro ] bonjour,voila mon probleme, je voudrais recuperer des variables et les stocker en tant que variables de session dans un tableau array();.j'ai donc un tableau associatif [ par tobleronne ] Bonjour,Je souhaite renseigner un tableau a plusieurs dimensions mais rien n'y fait ?!?J'ai une boucle qui alimenterais un tableau du style : $monTabl BBD ajouter un IP à un ID quand on se connect. [ par dan4 ] Je veux ajouter ou faire un update de IP quand quelqu'un se connect. et la date aussi.Ma base: wcamxLa table: authlib_logintableau 1 : idtableau 2 problème update [ par speedylol ] Bonjour voilà, mon petit problème que j 'aimerais trouver , je vous remercie de votre aide. voici aprés passage de commande, du produit j 'envoys mes Uun pb de caddie avec session php: tableau dans un tableau [ par mhassine ] bonjour, j'ai essayé de suivre l'exemple de cette page : http://developpeur.journaldunet.com/tutoriel/php/031103php_caddie1a.shtml voila mon code, ou recuperation de l'id d'un tableau [ par leonsix ] Problème de requete Select puis insert [ par Maiku ] BonjourAlors je vous explique ce que ma page fait et ce que j'essaie de faire puis le problème : - J'ai une base de donnée mysql qui contient 3 tables Probleme avec les valeurs stockées dans un tableau [ par tibandit ] Hello Voila je veux stocker des données dans un tableau afin de pouvoir les reutiliser a ma convenance, Ca donne ca comme code : $table="produits"; $ tableau dynamique sans repetition de champs [ par niko14 ] salut tout le monde! Je vous expose le probleme En fait je voudrais faire un tableau a partir d'un base de données! Sachant que je fais ca car les cha


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,640 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales