Page 1 sur 1
Afficher La date par groupe d'actualités
Posté : 12 janv. 2009, 19:27
par Henry
Bonjour à tous,
J'ai actuellement une solution pour ce problème mais le code est infernal. Je souhaite afficher les 25 dernieres actualités. Dans ses 25 actualités il faut les regrouper par date identique puis les afficher par groupe. Exemple :
Lundi 2 janvier 2009
Actu 1
Actu 2
Actu 3
...
Dimanche 1 janvier 2009
Actu 7
Actu 8
..
etc
La récupération ne pose pas problème seule la mise en place de la date et la mise en page sont problèmatiques.
Merci d'avance à tous
Posté : 12 janv. 2009, 20:04
par Ryle
La solution la plus simple pour afficher tes éléments consiste a récupérer ceux-ci triés par date décroissante. Puis, dans une boucle php stocker dans une variable temporaire la valeur de la date de ton premier enregistrement.
A chaque itération il te suffit de vérifier si la date a changé. Si oui, tu affiches le titre (nouvelle date) et tu stoques celle-ci dans ta variable temporaire. Si non, tu affiches simplement ton info sans rien ajouter
Quelque chose du genre :
Code : Tout sélectionner
date_temp = '' // variable temporaire
TANT QUE il y a des enregistrements à afficher
SI date_temp != date_enregistrement
AFFICHER titre/date
date_temp = date_enregistrement
FIN SI
AFFICHER enregistrement
FIN TANT QUE
Posté : 12 janv. 2009, 21:41
par Invité
Bonne idée, j'essaie et je reviens sur le forum pour la mise en ligne du code.
Par contre comment afficher le date de type Mardi 12 Novembre 2008 a partir de la date récupérée dans la base SQL ?
Posté : 12 janv. 2009, 22:15
par AB
Bonne idée, j'essaie et je reviens sur le forum pour la mise en ligne du code.
Par contre comment afficher le date de type Mardi 12 Novembre 2008 a partir de la date récupérée dans la base SQL ?
par exemple
setlocale (LC_TIME, 'fr_FR','fra');
$date = strtotime('2008-11-06 13:24:18');
echo 'date = '.strftime("%A %d %B %Y",$date);
Renseignes-toi sur strftime() et setlocale() pour plus d'info
Posté : 12 janv. 2009, 22:35
par Invité
ok merci
je regarde et je reviens pour poster la solution (si j'y arrive bien sur !!

)