Gérer des fins d'abonnement

Consultez la formation à Google Analytics de WebRankInfo / Ranking Metrics


Meeuuuhhh
WRInaute accro
WRInaute accro
 
Messages: 1795
Inscription: Lun Jan 08, 2007 21:48

Gérer des fins d'abonnement

Message le Ven Jan 02, 2009 1:03

Bonjour,

Voilà j'ai des gens qui s'abonnent sur mon site. Certains pour 6 mois d'autres pour 1 an ou 24 mois.

Je dois créer une page où s'affiche la liste des abonnés et la date de la fin de leur inscription. Et je souhaite que ceux dont l'abonnement s'arrête en premier soient affichés en haut du tableau.

Imaginons que demain 02/01/09, un gars s'inscrit pour 6 mois.
Son abonnement est donc valable jusqu'au 02/06/09.
Un autre gars s'inscrit le 03/01/09 pour 6 mois.
Son abonnement est donc valable jusqu'au 03/06/09.

Comment fais-je pour les classer ?
Comment fais-je pour attribuer une date de fin ? Je peux l'inscrire manuellement :"02" pour le champ jour, "01" pour le champ mois et "09" pour le champ année.
Mais pour faire un classement avec ça, ça va pas être commode.

Donc je me dis qu'il faudrait que je transforme la date d'abonnement en time() puis que j'y ajoute l'équivalent time() de la durée d'abonnement. Ensuite je fais un simple classement selon le time() de fin d'abonnement.

Bon, mais comment faire pour obtenir les time() pour 6 mois, 1 an et 24 mois ?

Et avez vous une meilleure solution que celle que je viens d'exposer ?


Merci d'avance.


rudddy
WRInaute accro
WRInaute accro
 
Messages: 1724
Inscription: Mer Aoû 01, 2007 19:00

Message le Ven Jan 02, 2009 7:30

http://fr.php.net/mktime

voir le 2ème exemple


Bool
WRInaute accro
WRInaute accro
 
Messages: 1290
Inscription: Jeu Fév 26, 2004 15:59

Message le Ven Jan 02, 2009 7:44

Hello,

le plus simple à mon avis est de laisser faire MySQL : tu utilises un champ de type DATE (ou DATETIME au choix) et basta.

Ensuite lors de l'insertion de ta date de fin :
Code: Tout sélectionner
dateDebut + INTERVAL 6 MONTH


Tu pourras faire tous les ORDER BY que tu veux là dessus.


rudddy
WRInaute accro
WRInaute accro
 
Messages: 1724
Inscription: Mer Aoû 01, 2007 19:00

Message le Ven Jan 02, 2009 7:51

oui pourquoi pas mais c'est un traitement très simple aussi en php

sinon hs mais bool qu'est qu'il a ton www ??? il est tout blanc ! c'est la neige ?


Bool
WRInaute accro
WRInaute accro
 
Messages: 1290
Inscription: Jeu Fév 26, 2004 15:59

Message le Ven Jan 02, 2009 8:50

Dès lors qu'on a besoin de faire des recherches ou du tri sur la date, perso il me semble infiniment plus simple de laisser complètement faire MySQL ; non ?

Pour mon "www" il est comme ça depuis loooongtemps, et ça lui va bien je trouve ;)


saypee
WRInaute accro
WRInaute accro
 
Messages: 2180
Inscription: Sam Mai 07, 2005 18:48

Message le Ven Jan 02, 2009 10:43

Bool a écrit:
Pour mon "www" il est comme ça depuis loooongtemps, et ça lui va bien je trouve ;)


Bonjour Bool et désolé pour le HS .
Depuis combien de temps ton www est comme cela ?


Bool
WRInaute accro
WRInaute accro
 
Messages: 1290
Inscription: Jeu Fév 26, 2004 15:59

Message le Ven Jan 02, 2009 10:46

Il n'a jamais vraiment existé... au début il y avait bien un commentaire expliquant le pourquoi du comment, mais c'est tout. Mais... pourquoi donc ? :S


saypee
WRInaute accro
WRInaute accro
 
Messages: 2180
Inscription: Sam Mai 07, 2005 18:48

Message le Ven Jan 02, 2009 10:48

En fait cela confirme que seul les liens comptent pour le PR, plusieurs personnes (dont moi) pensaient que le comportement des visiteurs, le contenu, influaient , mais ca n'est donc pas le cas.
Merci de me donner d'autres indication si tu en as ;)


Bool
WRInaute accro
WRInaute accro
 
Messages: 1290
Inscription: Jeu Fév 26, 2004 15:59

Message le Ven Jan 02, 2009 10:50

Ah parce qu'il a un PR ce site ? :D Je ne savais même pas.


saypee
WRInaute accro
WRInaute accro
 
Messages: 2180
Inscription: Sam Mai 07, 2005 18:48

Message le Ven Jan 02, 2009 10:54

Tu serais pas le gars qui a gagné au loto et qui n'est pas allé chercher son cheque par hasard :lol: ?


Meeuuuhhh
WRInaute accro
WRInaute accro
 
Messages: 1795
Inscription: Lun Jan 08, 2007 21:48

Message le Ven Jan 02, 2009 12:56

Bool a écrit:Hello,

le plus simple à mon avis est de laisser faire MySQL : tu utilises un champ de type DATE (ou DATETIME au choix) et basta.

Ensuite lors de l'insertion de ta date de fin :
Code: Tout sélectionner
dateDebut + INTERVAL 6 MONTH


Tu pourras faire tous les ORDER BY que tu veux là dessus.


ça a l'air bien ça.

Dans la BD, j'enregistre les dates dans un champs datetime sous le forme 2008-12-31 00:29:43 .

Là il faudrait que je fasse une page qui génère une requête ajoutant 6 mois à chaque datetime, puis classant les résultats par datetime, c'est ça ?

Peut-on faire un ORDER BY sur le datetime ?


Bool
WRInaute accro
WRInaute accro
 
Messages: 1290
Inscription: Jeu Fév 26, 2004 15:59

Message le Ven Jan 02, 2009 13:17

Oui tu peux faire le ORDER BY sur le datetime


Tu peux même faire directement un truc du genre :
Code: Tout sélectionner
select champ1, champ2, dateDebut + interval champDuree month as dateFin
from taTable
order by dateFin


Meeuuuhhh
WRInaute accro
WRInaute accro
 
Messages: 1795
Inscription: Lun Jan 08, 2007 21:48

Message le Sam Jan 03, 2009 12:02

Ok alors c'est tout simple en fait. J'entre manuellement dans un input text la date de fin d'abonnement, par exemple 2008-06-15 00:00:00 , j'insère ça dans un champ datetime et ensuite je fais un order by sur les différents datetime pour voir quels sont les prochains abonnement qui prennent fin.

J'ai bon ?


Formation recommandée sur ce thème :

Formation Google Analytics : en 2 jours, apprenez comment exploiter l'essentiel des possibilités de l'outil de mesure d'audience de Google. Formation animée par Julien Coquet, expert certifié officiellement par Google Analytics.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités