récupérer les années unique

Eléphant du PHP | 71 Messages

09 juil. 2006, 10:19

Bonjour,

j'utilise le forum PHPBB en guise d'administration de mon site. Ainsi, le forum news contient toutes les news de mon site.

Je souhaiterais rajouter une page archives pour conserver sur l'interface de mon site les anciennes news. Dans cette page, il y aurait d'abord une sélection de l'année de la news, en fonction des différentes années de rédaction de l'ensemble des news déjà écrites (donc un GROUP BY)

Seul problème, les formats de date sous PHPBB sont en secondes (ou micro seconde je sais plus), je ne sais donc pas comment regrouper les années identiques.

Est-ce que quelqu'un a une idée ?

D'avance merci de vos réponses,
@micalement, Renan

Eléphant du PHP | 90 Messages

09 juil. 2006, 10:34

date('Y', $ton_temps_en_seconde);

je te renvoie à http://www.siteduzero.com/tuto-3-186-1-les-dates.html si tu veux autre chose que l'année

Eléphant du PHP | 71 Messages

09 juil. 2006, 13:18

Merci, je connais cette procédure je l'utilise d'ailleurs, mais je veux trier depuis la base de donnée, où là les dates sont exprimées en timestamp !

En gros, je souhaite récupérer que les informations ayant été postée durant une année précise.

Merci de m'aider,
Renan

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

09 juil. 2006, 13:24

As tu jeté un oeil à la DOC des fonctions de date

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphant du PHP | 71 Messages

09 juil. 2006, 18:31

As tu jeté un oeil à la DOC des fonctions de date
Merci beaucoup, je vias jeter un oeil à cette documentation, elle va surement me renseigner plus amplement.
Je vous tiens au courant ...

Eléphant du PHP | 71 Messages

09 juil. 2006, 18:40

Si vous préférez que le résultat soit calculé en fonction de l'année qui contient le premier jour de la semaine de la date utilisée en argument, vous devriez utiliser les valeurs 2, 3, 6, or 7 de l'argument mode.

mysql> SELECT YEAR('2000-01-01'), WEEK('2000-01-01',0);
-> 2000, 0
mysql> SELECT WEEK('2000-01-01',2);
-> 52
je crois que cette syntaxe peut m'aider, mais puis-je l'utiliser sous cette forme :

SELECT * FROM table GROUP BY YEAR(Date_news) ???

Merci

Mammouth du PHP | 19672 Messages

09 juil. 2006, 18:58

as-tu essayé ?
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 71 Messages

09 juil. 2006, 19:15

Je viens d'essayer ... non ça ne fonctionne pas !

J'ai donc récupérer les données dans un tableau, puis j'ai utilisé un array_unique.