PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 25-01-2011 22:05:57

stci
Membre
Inscription : 25-01-2011
Messages : 1

Mettre date passée à la fin de la liste

Bonjour,

J'ai une liste d'événements que je récupère via une requête SQL. Le résultat me retourne la date de début et la date de fin d'un événement.

Pour l'instant, le résultat est classé par date de début.

J'aimerais que quand un événement est terminé, qu'il aille se placer à la fin de la liste.

J'ai beau chercher pour trouver la logique à faire dans ce cas-ci mais je ne trouve pas.

Pouvez-vous m'aider svp?

J'ai élaboré un début de code ou je trouve la date d'aujourd'hui ($date) et la date de fin $date_fin. Mais pour l'exécution (envoyer à la fin de la liste) je bloque.

[c]$date = strftime("%A, %e %B %Y", strtotime($date));
$date_fin = strftime("%A, %e %B %Y", strtotime($date_fin));

if ($date_fin < $date)
{
Envoyer à la fin de la liste
}[/c]

Hors ligne

#2 26-01-2011 05:27:44

Maljuna Kris
Infantimigulo
Lieu : Douarnenez 29100 Breizh Izel
Inscription : 08-05-2009
Messages : 2 453
Site Web

Re : Mettre date passée à la fin de la liste

Saluton,
Au niveau SQL, la solution serait de faire deux requêtes une sur les événements sans date de fin classés par date de début et une sur les événements avec date de fin avec le même classement, puis de faire une UNION de ces deux requêtes.
Le problème est que je crois que l'option ORDER BY ne peut s'appliquer que sur le résultat de l'UNION (à vérifier).
Si c'est le cas, il faut soumettre chacune des requêtes dans l'ordre et récupérer les résultats dans un seul tableau (array) PHP en parcourant (fetch) chacun des deux résultats.

<?php
$res=array();
// soumettre la première requête
while($res[]=.....fetch..($res_req1))
// soumettre la seconde requête
while($res[]=.....fetch..($res_req2))

Je ne suis pas plus précis dans le code ignorant le SGBDR et le contexte d'interfaçage (PDO, au demeurant, nous affranchirait de cette incertitude)


Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy

Hors ligne

Pied de page des forums