8722 sujets

Développement web côté serveur, CMS

Bonjour à tous,

j'ai une nouvelle fois besoin de l'aide des meilleurs Smiley smile
Je vous explique la ou je bloque.
J'essaie de récupérer et d'afficher des données de ma table MYSQL, sur ma page PHP dans mon tableau.

J'ai aucun problème à afficher les données, mais ce que j'aimerai faire c'est pouvoir créer dans ma page PHP un nouveau tableau pour chaque nouvelle date : de manière à avoir un tableau de ce genre :


Journée du 23/09/14
Sexe Nom Prénom Age Ville Email
M Untel Paul 50 Paris paul@paul.fr


Journée du 22/09/14
Sexe Nom Prénom Age Ville Email
M Untel Pierre 18 Paris pierre@pierre.fr
F Unetelle Perrine 30 Lille perrine@....

Je sais pas si c'est possible mais j'aimerai donc pour voir dire qu'a chaque nouvelle journée,
un nouveau tableau par jour se crée et affiche donc les données dans ma BDD correspondant, à la date, sexe, nom, prénom...

Pour récuperer les données de ma BDD, dans ma table j'utilise un simple
 
$connection = mysql_connect($hostname, $username, $password) or die(mysql_error());
mysql_select_db($database, $connection);
$reponse = mysql_query("SELECT * FROM table_test ORDER BY id DESC LIMIT 0,10");
while($val = mysql_fetch_array($reponse))



Merci à tous pour votre aide.
Modifié par budfoxob (28 Sep 2014 - 15:54)
Salut,

si tu as des dates enregistrées pour chaque ligne de ta table (je suppose que oui) alors en premier lieu tu tries par date ASC dans ta requête SQL. Tu boucles sur tes lignes côté PHP, à chaque fois que tu détectes que la date est différente, tu réécris les labels du tableau, etc ... Je pense que tu vois le principe?

P.S: évite les SELECT *, défini les champs dont tu as besoin et seulement, c'est chiant mais ça peut éviter des désagréments.

P.S2: évite d'utiliser les fonctions mysql_* c'est déprécié et déjà supprimé de PHP je sais plus quoi (la flemme de vérifier quelle version Smiley langue ). Utilise plutôt pdo ou mysqli.

Bon courage Smiley smile
Salut Floreo,
ça devient une habitude maintenant, je te remercie encore une fois Smiley smile

Bon alors il va falloir que je me mette à la page alors car je ne sais pas du tout
me servir de PDO, mais je vais apprendre c'est pas un problème.

Effectivement dans la table de ma BDD, j'ai les dates enregistrées.

en gros mon code est comme ça pour le moment, faute de solution,

<ul>
                    <li>
                        Journée du (Ici la nouvelle date enregistrée)
                    </li>
 <table id="tablehistorique">

<tr>
<th>SEXE</th>
<th>NOM</th>
<th>PRENOM</th>
<th>AGE</th>
<th> VILLE</th>
<th>EMAIL</th>
</tr>

<tr><td>la est affiché le Sexe </td><td> la est affiché le Nom </td><td> la est affiché le Prénom</td><td>la est affiché l'Age</td><td> la est affiché la Ville </td><td> la est affiché l'Email</td></td></tr>

</table>	 
</ul>


il y a donc une possibilité pour qu'a chaque nouvelle date, enregistrée, un nouveau tableau et UL est crée?

Merci beaucoup pour ton aide. Tu m'enlève à chaque fois une épine du pied Smiley smile
Tu peux faire un tableau qui contient tes headers de ta table, à chaque fois que la date précédente est différente ce celle "courante", tu les réécris. Ou tu peux faire une fonction qui prend la date en paramètre ou ta ligne et qui dump le tableau complet avec les bonnes valeurs. Tu as une grosse partie de la solution là, c'est plus de la logique/algo à ce niveau, pose les choses et expérimente un peu, tu devrais trouver Smiley smile
Salut Floreo et merci pour tes réponses à chaque fois,

Avant de lire ta réponse j'avais commencé à faire ça.
J'ai un petit soucis d'affichage, est ce que tu peux m'expliquer.

Voici mon code

 <?
header('Content-Type: text/html; charset=utf-8');
 $hostname = "";
         $database = "";
         $username = "";
         $password = "";
	 $date = date('Y-m-d');
	 $jour = 'Journée du';
$connection = mysql_connect($hostname, $username, $password) or die(mysql_error());
mysql_select_db($database, $connection);
$reponse = mysql_query("SELECT * FROM test ORDER BY id DESC");

while($val = mysql_fetch_array($reponse))
{

echo'
<ul class="plan plan1">


 <li class="plan-name">' . $jour. ' '.htmlentities(stripslashes($val['update1'])).'</li>
  
</ul>';}

  ?>




Je ne comprends pas pourquoi j'ai "Journée qui s'affiche deux fois?

Merci beaucoup de ton aide
Encore une fois résolu !
Merci beaucoup Floreo, tu me met toujours sur la bonne piste !

J'ai réussi à faire ce que je voulais !