affichage bdd

Eléphant du PHP | 335 Messages

17 mai 2005, 10:21

Bonjour a tous,

j'ai une table sous phpMyAdmin
l'affichage est sous forme de tableau

je voudrais avoir le meme affichage mais dans une page web

cmt puis je faire?

merci pour votre aide...

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

17 mai 2005, 10:26

<html>
  <head>
    <title>page</title>
  </head>
  <body>
    <table>
      <tr>
        <td>Nom</td>
        <td>Prenom</td>
      </tr>
<?php
$str_requete ="SELECT nom, prenom FROM table";
$o_result = mysql_query($str_requete;)

while ($a_result = mysql_fetch_array($o_result, MYSQL_ASSOC)) {
  echo "<tr>";
  echo "<td>".$a_result["nom"]."</td>";
  echo "<td>".$a_result["prenom"]."</td>";
  echo "</tr>";
}
?>
    </table>
  </body>
</html>
Et 1 affichage en tableau, 1 !!!!

Tu n'as plus qu'a adapter ton code à ta bdd et au type d'affichage que tu veux !!!
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Eléphant du PHP | 335 Messages

17 mai 2005, 10:46

<table border="1"> 
      <tr> 
        <td>Jour</td> 
        <td>Mois</td>
		<td>Annee</td> 
		<td>Type</td>
		<td>Downtime in SLA</td>
		<td>Total Downtime</td>
      </tr> 
<?php 
require_once('../Connections/arnis01.php');
mysql_select_db("arnis01");  
$str_requete ="SELECT jour, mois, annee, type, sla, total FROM sla"; 
$o_result = mysql_query($str_requete);

while ($a_result = mysql_fetch_array($o_result, MYSQL_ASSOC)) { 
  echo "<tr>"; 
  echo "<td>".$a_result["jour"]."</td>"; 
  echo "<td>".$a_result["mois"]."</td>"; 
  echo "<td>".$a_result["annee"]."</td>"; 
  echo "<td>".$a_result["type"]."</td>"; 
  echo "<td>".$a_result["sla"]."</td>"; 
  echo "<td>".$a_result["total"]."</td>"; 
  echo "</tr>"; 
} 
?> 
</table>
Sas tu comment faire pour ranger mon tableau par date.
C a d d'abord l'année puis le mois puis le jour.

Merci

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

17 mai 2005, 10:49

Pense bienà ce que tu dit !!! En lisant ta question, tu trouve la réponse !!! C'est pas pour t'embeter, c'est pour que tu y arrive tout seul :
Sas tu comment faire pour ranger mon tableau par date.
C a d d'abord l'année puis le mois puis le jour.
Ton tableau est construit dans l'ordre des enregistrements retournés par ta requête : si tu veux changer l'ordre de ton tableau, change l'ordre de tri de ta requête
$str_requete ="SELECT jour, mois, annee, type, sla, total FROM sla ORDER BY annee, mois, jour"; 
Sachant que SQL fait le tri selon le 1er parm puis en cas d'égalité, le 2eme ...
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Mammouth du PHP | 19672 Messages

17 mai 2005, 10:49

:shock: dis-moi un truc justone, un doute me gagne: ta question est sérieuse ??? Tu ne sais pas inverser deux lignes pour avoir l'affichage dans l'ordre de ton goût ???

L'ordre de l'affichage est indépendant de l'ordre dans lequel les valeurs sont récupérées. Que MySQL renvoie des champs dans un ordre ou un autre n'a pas d'importance, tu récupère des variables qui sont déjà initialisées. Libre à toi ensuite de mettre ton code html avec le contenu que tu veux dans l'ordre que tu veux..
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 281 Messages

17 mai 2005, 10:49

Bonjour
essaye de rajouter dans ta requte :
$str_requete ="SELECT jour, mois, annee, type, sla, total FROM sla ORDER BY annee, mois, jour"; 
ca te trira déja par année ! ;)

Bon ben jme suis fait devancé:(

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

17 mai 2005, 10:51

Cyrano, je pense que tu n'a pas compris la question !!!

Il voulait surement parler de rangement des enregistrements et non pas de l'ordre des colonnes :wink:
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Eléphant du PHP | 335 Messages

17 mai 2005, 10:55

Merci pour vos réponses.

C'est juste que je ne connais pas le maniement des requetes : select, from, order by, sum, count, ... tout ca est nouveau pour moi.
Mais c'est vrai que sur ce coup la, j'aurai du trouver!

Mais en faisant order by mois, le probleme est que par exemple Mai sera avant Mars, or c'est l'inverse!

Mammouth du PHP | 19672 Messages

17 mai 2005, 10:57

Cyrano, je pense que tu n'a pas compris la question !!!

Il voulait surement parler de rangement des enregistrements et non pas de l'ordre des colonnes :wink:
Je n'ai fait que lire ce qu'il a écrit:
Sas tu comment faire pour ranger mon tableau par date.
C a d d'abord l'année puis le mois puis le jour.
Il voulait sûrement.... mais peut-être pas: je me garde toujours autant que possible de faire des interprétations à priori, ça peut éviter de répondre à côté de la question. Si la question avait été correctement formulée, il est probable que la réponse aurait été appropriée ;)
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 281 Messages

17 mai 2005, 10:59

Ben alors tu crée une table mois, avec id_mois nom_mois que tu lie avec ton autre table et tu l'apelle aussi lors de ta requete ca donnerai :
$str_requete ="SELECT sla.jour, mois.nom_mois, sla.annee, sla.type, sla.sla, sla.total FROM sla,mois ORDER BY sla.annee, mois.id_mois, sla.jour";
une solutions comme une autre je sais pas si c'est la meilleure;)

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

17 mai 2005, 11:01

D'accord Cyrano, excuse moi !!!

Sinon, Justone, soit tu enregistres tes mois en chiffres (01, 02, 03, ...) soit tu ne doit pas pouvoir trier selon les mois si ils sont enregistrés en français.

Je me renseigne
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Eléphant du PHP | 281 Messages

17 mai 2005, 11:04

autre solutions qui vient de me traverser l'esprit, tu enregistre les mois en chiffre dans ta bdd, et tu les interprette en php
c'est à dire
if( $tab['mois']==1)
{
  $mois=janvier
  echo($mois);
}
c'est pas mal aussi je supose;)

ViPHP
ViPHP | 2144 Messages

17 mai 2005, 11:07

Et si on utilisait un des types fournit par MySql pour stocker des dates ? C'est pas à ça qu'ils servent ? :P :P

ViPHP
pjl
ViPHP | 2119 Messages

17 mai 2005, 11:09

Il y a surtout un pb de conception de la table.
Quel est l'intéret de stocker une date sur 3 champs alors qu'il existe des champs spécifiques pour stocker les dates.

Eléphant du PHP | 281 Messages

17 mai 2005, 11:10

ah oué aussi :oops: :oops: j'y ai même pas pensé :oops: