Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 22/02/2011, 10h02   #1
Futur Membre du Club
 
Inscription : janvier 2007
Messages : 103
Détails du profil
Informations forums :
Inscription : janvier 2007
Messages : 103
Points : 16
Points : 16
Par défaut tri par date (année)

Bonjour

J'ai une petite question. Voilà j'ai des évènements que je veux regrouper par année. Quelle serait la requete sql et comment générer les liens "2010","2009",.. dans ma page et qu'au clic je tombe sur les évènements de l'année en question

Merci par avance de vos lumières
dedel53 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/02/2011, 10h28   #2
Membre Expert
 
Avatar de gene69
 
Inscription : janvier 2006
Messages : 951
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : janvier 2006
Messages : 951
Points : 1 063
Points : 1 063
bon, ce que tu veux ce n'est pas grouper par année mais classer par année !

sélection des évenements en fonction de l'année:
Code :
1
2
3
4
   SELECT id_event, date_event
   FROM events
   WHERE year(date_event) = :input 
   ORDER BY date_event DESC
liste des années existantes, forme consommatrice de ressource:
Code :
1
2
SELECT DISTINCT year(date_event)
FROM events
comptage des articles par années
Code :
1
2
3
4
 
SELECT count(id_event), year(date_event)
FROM events
GROUP BY year(date_event)
__________________
PHP fait nativement la validation d'adresse électronique Vous êtes perdu en PHP? rassurez-vous ici (en)
Utilisez le bouton résolu!
gene69 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/02/2011, 10h48   #3
Futur Membre du Club
 
Inscription : janvier 2007
Messages : 103
Détails du profil
Informations forums :
Inscription : janvier 2007
Messages : 103
Points : 16
Points : 16
mouais voici ma requete que j'ai actuellement

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
 
public function eventSelectAll_passe ($ordre='') {
		/* Récupération des party autorisées. ----------------------------------------------------------*/
		$tmpParty=$this->eventSelectAuthorized ();
		switch ($ordre) {	
					default: 
					$this->requete='SELECT ' . TABLE_EVENT . '.*,';
					$this->requete.=' ' . TABLE_EVENTLOCALISATION . '.' . EVENTLOCALISATION_TITRE ;
					$this->requete.=' FROM ' . TABLE_EVENT . ', ' . TABLE_EVENTLOCALISATION ;
					$this->requete.=' WHERE ' . TABLE_EVENT . '.' . EVENT_LOCALISATION . '=' . TABLE_EVENTLOCALISATION . '.' . EVENTLOCALISATION_ID;
					switch ($ordre) {
					default:
					$this->requete.=' ORDER BY ' . TABLE_EVENT . '.' . EVENT_DATE.' DESC';
					break;
					case 'ville':
						$this->requete.=' ORDER BY ' .TABLE_EVENTLOCALISATION . '.' . EVENTLOCALISATION_TITRE . ' ASC,'. TABLE_EVENT . '.' . EVENT_DATE.' DESC';
					break;
					case 'date':
					$this->requete.=' ORDER BY ' . TABLE_EVENT . '.' . EVENT_DATE.' DESC';
					break;
					}
 
				}
dedel53 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/02/2011, 15h05   #4
Membre éclairé
 
Homme Jérémy
Étudiant
Inscription : octobre 2009
Messages : 236
Détails du profil
Informations personnelles :
Nom : Homme Jérémy
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : octobre 2009
Messages : 236
Points : 322
Points : 322
Globalement tu doit passer l'année en paramètre et appliquer la première requête de gene :

Code :
1
2
3
4
SELECT *
   FROM events
   WHERE year(date_event) = $annee
   ORDER BY date_event DESC
Sa seconde requête répond ta question sur la génération automatique des liens :

Code :
1
2
SELECT DISTINCT year(date_event)
FROM events
Code :
1
2
3
4
5
<?php
foreach(list_date as unedate)
{ ?>
    echo undate->getAnnee() ?><input type="checkbox" id="date" name ="date"> <?php
} ?>
Par exemple.
gwharl est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 11h10.


 
 
 
 
Partenaires

Hébergement Web