Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2156 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] Affichage données Mysql

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP] Affichage données Mysql

n°1583162
majin
Fiat Lux
Posté le 06-07-2007 à 12:16:03  profilanswer
 

Hello à tous ! J'ai un ptit soucis tout bete ! Enfin... Je pense que pour vous les pros ca doit être tout bête ! Enfin voila, j'essaie d'afficher les infos contenu de ma base de données clients : nom, prénom, email etc..comme c'est pour une agence de voyage certains clients on fait plusieurs voyages, et lorsque je demande d'afficher tout les voyages de ces clients sur la meme ligne, comme vous pouvez le voir sur l'image y'a des cases blanches, des trous qui sont tout sauf esthetiques..quelqu'un aurait il la grace et la bonté de bien vouloir m'aider ?  :D
 
http://jaspirit.free.fr/php.jpg


Message édité par majin le 06-07-2007 à 12:18:41
mood
Publicité
Posté le 06-07-2007 à 12:16:03  profilanswer
 

n°1583174
Mxtrem
Posté le 06-07-2007 à 13:06:03  profilanswer
 

$query = mysql_query("select * from users" );
$fetch = mysql_fetch_array($query);
$voyages = $fetch['voyage'];
$voyages = explode(",",$voyages);
$nbvoyages = count($voyages);
 
for($i=0;$i!=$nbvoyages;$i++)
{
echo "&raquo;&nbsp;".$voyages[$i]."<br />";
}

n°1583183
majin
Fiat Lux
Posté le 06-07-2007 à 13:19:52  profilanswer
 

Mxtrem merci beaucoup pour ton aide ! Mais je ne sais pas ou placer cela dans mon code existant... je te montre mon code :  
Merci !!!  :)  
 

Code :
  1. <html>
  2. <title>Requête base de données</title>
  3. <body>
  4. <?
  5. include 'util.php';
  6. // information pour la connection à le DB
  7. $host = 'localhost';
  8. $user = 'root;
  9. $pass = '';
  10. $db = 'alj';
  11. $order = $_POST ['order'];
  12. $sort = $_POST ['group1'];
  13. // connection à la DB
  14. $link = mysql_connect ('localhost', 'root', '') or die ('Erreur : '.mysql_error() );
  15. mysql_select_db($db) or die ('Erreur :'.mysql_error());
  16. // requête SQL qui compte le nombre total d'enregistrement dans la table et qui
  17. //récupère tous les enregistrements
  18. $select = "SELECT * FROM clients ORDER BY '$order' $sort";
  19. $clients = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );
  20. $total = mysql_num_rows($clients);
  21. // si on a récupéré un résultat on l'affiche.
  22. if($total) {
  23.     // debut du tableau
  24.     echo '<p align="center"><table bgcolor="#FFFFFF" border="4" cellpadding="4" cellspacing="2"></p>'."\n";
  25.         // première ligne on affiche les titres prénom et surnom dans 2 colonnes
  26.         echo '<tr>';
  27.         echo '<td bgcolor="#006498"><font color="white"><b><u>Nom</u></b></font></td>';
  28.         echo '<td bgcolor="#006498"><font color="white"><b><u>Prénom</u></b></font></td>';
  29.         echo '<td bgcolor="#006498"><font color="white"><b><u>Date de naissance</u></b></font></td>';
  30.         echo '<td bgcolor="#006498"><font color="white"><b><u>Pseudo</u></b></font></td>';
  31.         echo '<td bgcolor="#006498"><font color="white"><b><u>Rue</u></b></font></td>' ;
  32.         echo '<td bgcolor="#006498"><font color="white"><b><u>Ville</u></b></font></td>' ;
  33.         echo '<td bgcolor="#006498"><font color="white"><b><u>Departement</u></b></font></td>';
  34.         echo '<td bgcolor="#006498"><font color="white"><b><u>Code Postal</u></b></font></td>' ;
  35.         echo '<td bgcolor="#006498"><font color="white"><b><u>Pays</u></b></font></td>' ;
  36.         echo '<td bgcolor="#006498"><font color="white"><b><u>No de Tel</u></b></font></td>' ;
  37.         echo '<td bgcolor="#006498"><font color="white"><b><u>E-mail</u></b></font></td>';
  38.         echo '<td bgcolor="#006498"><font color="white"><b><u>Voyages--></u></b></font></td>';
  39.         echo '</tr>'."\n";
  40.     // lecture et affichage des résultats sur 2 colonnes, 1 résultat par ligne.
  41.     while($row = mysql_fetch_array($clients)) {
  42.         echo '<tr>';
  43.         echo '<td bgcolor="#dddddd">'.$row["nom"].'</td></font>';
  44.         echo '<td bgcolor="#cccccc">'.$row["prenom"].'</td></font>';
  45.         echo '<td bgcolor="#dddddd">'.$row["datenaissance"].'</td></font>';
  46.         echo '<td bgcolor="#cccccc">'.$row["pseudo"].'</td></font>';
  47.               echo '<td bgcolor="#dddddd">'.$row["rue"].'</td></font>';
  48.               echo '<td bgcolor="#cccccc">'.$row["ville"].'</td></font>';
  49.         echo '<td bgcolor="#cccccc">'.pref_dept($row["departement"]).'</td></font>';
  50.               echo '<td bgcolor="#dddddd">'.$row["codepostal"].'</td></font>';
  51.               echo '<td bgcolor="#cccccc">'.$row["pays"].'</td></font>';
  52.               echo '<td bgcolor="#dddddd">'.$row["telephone"].'</td></font>';
  53.         echo '<td bgcolor="#cccccc">'.$row["email"].'</td></font>';
  54.                           $voyageQuery = "SELECT * FROM voyages LEFT JOIN clients_voyages ON clients_voyages.voyage_id=voyages.voyage_id WHERE clients_voyages.client_id=".$row["client_id"];
  55.                           $voyages = mysql_query($voyageQuery,$link) or die ('Erreur : '.mysql_error() );
  56.         while($row2 = mysql_fetch_array($voyages)) {
  57.                 echo '<td bgcolor="#dddddd">'.$row2["nom"].'-'.$row2["type"].'('.$row2["annee"].')</td></font>';
  58.         }
  59.         echo '</tr>'."\n";
  60.     }
  61.     echo '</table>'."\n";
  62.     // fin du tableau.
  63. }
  64. else echo "Pas d\'enregistrements dans cette table...";
  65. //*on libère le résultat*//
  66. mysql_free_result($clients);
  67. ?>
  68. </body>
  69. </html>

n°1583200
Mxtrem
Posté le 06-07-2007 à 14:25:15  profilanswer
 

       while($row2 = mysql_fetch_array($voyages)) {
                echo '<td bgcolor="#dddddd">ICI</td></font>';
        }

n°1583269
majin
Fiat Lux
Posté le 06-07-2007 à 15:43:00  profilanswer
 

Mxtrem je ne sais pas comment je peux te remercier.. j'ai juste une derniere faveur à te demander.. je colle ton bout de code a l'endroit indiqué, mais j'ai des erreurs, j'ai du mal copier ou oublié un point virgule, peut tu faire un copier/coller tu code complet avec ta modif s'il te plait ca serait adorable :) MERCI !!! Apres je t'embete plus c'est promis !

n°1583300
Mxtrem
Posté le 06-07-2007 à 16:10:44  profilanswer
 

Ben disons que tu dois modifier mon code selon tes besoins soit  
 
$query = mysql_query("select * from clients" );  
$fetch = mysql_fetch_array($query);  
$voyages = $fetch['Nom_dans_bdd_ou_sont_stockes_les_voyages'];  
$voyages = explode(",",$voyages);  
$nbvoyages = count($voyages);  
 
for($i=0;$i!=$nbvoyages;$i++)  
{  
echo "&raquo;&nbsp;".$voyages[$i]."<br />";  
}
 
Je testerai chez moi, là je suis au boulot j'ai fais ça a la va vite.
 
Ca donnera chez toi :
 
while($row2 = mysql_fetch_array($voyages)) {  
                echo '<td bgcolor="#dddddd">';
### DEB *
$query = mysql_query("select * from users" );  
$fetch = mysql_fetch_array($query);  
$voyages = $fetch['voyage'];  
$voyages = explode(",",$voyages);  
$nbvoyages = count($voyages);  
 
for($i=0;$i!=$nbvoyages;$i++)  
{  
echo "&raquo;&nbsp;".$voyages[$i]."<br />";  
}
### FIN *
                echo '</td></font>';  
        }

n°1583327
Mxtrem
Posté le 06-07-2007 à 16:37:46  profilanswer
 

Par contre voilà, la fonction explode développe un tableau (array) à partir d'un séparateur. Je suis parti du principe que ce séparateur est une virgule.
(cf : $voyages = explode(",",$voyages);  )
 
Si jamais dans ta base de données les différents voyages sont séparés par un ; ou par un | ou d'autres choses tu remplaces la virgule (première occurance dans la fonction explode) par ton séparateur ;)
 
J'avais oublié de spécifier, désolé.

n°1583332
majin
Fiat Lux
Posté le 06-07-2007 à 16:43:05  profilanswer
 

j'ai rien compris... à l'aide ! lool  Tu veux pas modifier mon fichier si je t'envoi le zip ???? J'habite au Japon, je t'envoi tout ce que tu veux en échange, une gameboy, une japonaise en string, heuu des sushis mais ca risque de ne pas arriver très frais.. lol

n°1583356
Mxtrem
Posté le 06-07-2007 à 17:06:41  profilanswer
 

send me ;)
contact@mxtrem.com

n°1583367
majin
Fiat Lux
Posté le 06-07-2007 à 17:16:07  profilanswer
 

Tu déchire ! Merci !!! :-)))

mood
Publicité
Posté le 06-07-2007 à 17:16:07  profilanswer
 

n°1583402
Mxtrem
Posté le 06-07-2007 à 17:54:21  profilanswer
 

C'est répondu, j'avais mal lu ton code désolé.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] Affichage données Mysql

 

Sujets relatifs
Extraction de données à partir d'un fichierConnection à une base de données mysql
export DbDesigner VS import MySQL 5objets métiers -> base de données
Problème affichage sous IE [RESOLU][PHP] Upload par fichier le retour !
[MySQL] Insertion multi table avec auto-increment[RÉSOLU] Aide pour une requete MySQL
Utilisation requete php mysql contenant WHERE et AND 
Plus de sujets relatifs à : [PHP] Affichage données Mysql


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR