begin process at 2012 02 14 08:35:45
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Base de données

 > 

MySQL

 > 

Afficher données de 2 tables dans un tableau


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

Afficher données de 2 tables dans un tableau

samedi 26 août 2006 à 20:25:47 | Afficher données de 2 tables dans un tableau

Chewba

Bonjour,

Je cherche comment je peux faire pour afficher les données provenant de 2 tables différentes dans un tableau.
J'ai une table Roster_members et une tabel DKP.
Le champs en commun est name pour la table Roster_members et personnage pour la table DKP.
On affiche donc dans la 1ère colonne les données venant de Roster_members et dans la deuxième les données de la table DKP
Mais si il n'y a pas d'enregistrement correspondant dans la table DKP, on affiche malgré tout dans la 1ère colonnes les données de la table Roster_members et dans la deuxième colonne on affiche 0 si aucun enregistrement trouvé par rapport à chaque donnée de la première table.

Voici un bout du code:
<?
// on se connecte à notre base
$base = mysql_connect ('HOST', 'SERVER', 'PASSWORD');
mysql_select_db ('TABLE', $base);

// on prépare une requête permettant de calculer le nombre total d'éléments qu'il faudra afficher sur nos différentes pages
$sql  = 'SELECT count(*) FROM Roster_members';

// on exécute cette requête
$resultat = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());

// on récupère le nombre d'éléments à afficher
$nb_total = mysql_fetch_array($resultat);

// on teste si ce nombre de vaut pas 0
if (($nb_total = $nb_total[0]) == 0) {
    echo 'Aucune réponse trouvée';
}
else {
    //echo '<table><tr><td><td>Nom</td></tr>';
 
 // sinon, on regarde si la variable $debut (le x de notre LIMIT) n'a pas déjà été déclarée, et dans ce cas, on l'initialise à 0
    if (!isset($_GET['debut'])) $_GET['debut'] = 0;

     // début du tableau
  echo '<center>';
  echo '<table bgcolor="#000000">'."\n";
  // première ligne on affiche les titres nom et classe dans 2 colonnes
  echo '<tr>';
  echo '<td width ="150" bgcolor="#2e2d2b"><div class="membersTitle"><a href = "modules.php?name=DKP&debut='.$_GET['debut'].'"><b><u>Personnage</u></b></a></div></td>';
  echo '<td width ="50" bgcolor="#2e2d2b"><div class="membersTitle"><a href = "modules.php?name=DKP&debut='.$_GET['debut'].'"><b><u>DKP</u></b></a></div></td>';
  //echo '<td bgcolor="#2e2d2b"><div class="membersTitle"><a href = "modules.php?name=DKP&debut='.$_GET['debut'].'"><b><u>Niveau</u></b></a></div></td>';
  echo '</tr>'."\n";

   
   
    $nb_affichage_par_page = 25;
   
    // Préparation de la requête avec le LIMIT
    $sql = 'SELECT name, class, level FROM Roster_members ORDER BY name ASC LIMIT '.$_GET['debut'].','.$nb_affichage_par_page;
    // on exécute la requête
    $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
 
    // on va scanner tous les tuples un par un
    while ($data = mysql_fetch_array($req)) {
        // on affiches les résultats dans la <table>
  // on stocke dans $couleur la valeur retournée par l'appel de la fonction qui prend en paramètres $couleur1 et $couleur2
  $couleur = alt_couleur($couleur1, $couleur2);
  echo '<tr>';
  
  echo '<td width ="150" height = "16" bgcolor="'.$couleur.'"><div class="membersGroup">'.stripslashes(htmlentities(trim($data['name']))).'</div></td>';
  echo '<td width ="100" height = "16" bgcolor="'.$couleur.'"><div class="membersGroup">'.stripslashes(htmlentities(trim($data['dkp']))).'</div></td>';
 
  //echo '<td height = "16" bgcolor="'.$couleur.'"><div class="membersGroup">'.stripslashes(htmlentities(trim($data['level']))).'</div></td>';
  echo '</tr>'."\n";
  //}
    }
 
 echo '</table>';
 echo '</center>'."\n";
 // fin du tableau
?>

lundi 28 août 2006 à 13:46:10 | Re : Afficher données de 2 tables dans un tableau

AlexN

cette requête :

select r.
name, class, level, DKP.tonchamp
from
Roster_members r
left outer join
DKP d on r.name= d.personnage limit 0,30

prend les lignes de la table
Roster_members et fait la jointure externe gauche avec la table DKP sur le champ name/personnage (et rajoute les lignes de la table Roster_members pour lesquels il n'a pas d'information correspondante dans la table DKP, elle met des NULL à la place)
lundi 28 août 2006 à 13:55:33 | Re : Afficher données de 2 tables dans un tableau

AlexN

pardon petite erreur :

select r.name, class, level, d.tonchamp
from
Roster_members r
left outer join
DKP d on r.name= d.personnage limit 0,30

à cause du surnommage de la table DKP.


Cette discussion est classée dans : table, données, mysql, sql, echo


Répondre à ce message

Sujets en rapport avec ce message

pb avec page administration [ par justine75 ] bonjour!voilà je souhaiterais creer une page administration qui permettrais de supprimer, ajouter ou modifier des elements de ma base de donnéesvoici problème avec chekbox [ par 01cod10 ] salut à tous,Un problème avec mes checkbox envoyés dans ma table. Un seul choix apparait dans ma table de plus je n'arrive pas à afficher les loisirs liste deroulante dynamique [ par gasougasou ] Bonjour, j'ai créé 1 base de données sur MYSQL comportant les 2 tables suivantes :   code  < changement dynamique liste déroulante [ par gasougasou ] Bonjour, j'ai créé 1 base de données sur MYSQL comportant les 2 tables suivantes :   code  &n passage de variables de form vers bdd mysql [ par arnold002 ] Bonjour,Mon problème n'avance pas...Mon form contient 2 champs select for($i<FONT color=#008000 s pb DELETE requete sql [ par kyript ] Bonjours à tous voila mon problème j'ai un script avec un formulaire qui met a jour une table de la bdd. A la fin de ce script j'ai un "include" su qqun peut regarder mon code ? [ par Teclis01 ] voil¨¤ en fait je cherche a calculer le tps total des appels de clients le probleme c est kil ne me fait que 1 appel par ligne et je comprends pas tro probleme d'envoi email [ par pietbrouwers ] quelqu'un peut-il me dire ce qui ne fonctionne pas dans le script suivant : je n'arrive pas a recevoir par mail  le contenu de la facture. voir la fin 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 Problème Base Inconnu [ par Vin Gazoil ] Bonjour, j'ai une erreur dans le code suivant mais je n'arrive pas à la déterminé, j'y ai passé tout mon aprem hier. Voici le code :    #Variables


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
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 : 1,279 sec (3)

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