Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Calculer l' echeance d' un abonnement

3 réponses
Avatar
gerardsud
Bonjour,
Ca parait tout simple, pourtant je bute sur le calcul de l' echeance d' une date echeance d' abonnement (1 mois ou 1 an). C' est le premier site que je crée en php et j' ai du mal avec les dates.

3 réponses

Avatar
Olivier Miakinen
Le 05/04/2009 23:00, gerardsud a écrit :

Ca parait tout simple, pourtant je bute sur le calcul de l' echeance d'
une date echeance d' abonnement (1 mois ou 1 an). C' est le premier site que je
crée en php et j' ai du mal avec les dates.



Si tu es en PHP 5 >= 5.3.0 et que tu ne crains pas d'utiliser une
fonction qui pourrait peut-être changer avec un changement de version :
http://fr3.php.net/manual/fr/datetime.add.php
-> date_add($date, "P1M") pour ajouter un mois
-> date_add($date, "P1Y") pour ajouter un an

Sinon, voir les fonctions de gestion de date et heure :
http://fr3.php.net/manual/fr/book.datetime.php

Ou les fonctions de gestion de calendrier :
http://fr3.php.net/manual/fr/book.calendar.php
Avatar
gerardsud
Olivier Miakinen a écrit le 05/04/2009 à 23h34 :
Le 05/04/2009 23:00, gerardsud a écrit :

Ca parait tout simple, pourtant je bute sur le calcul de l' echeance d'
une date echeance d' abonnement (1 mois ou 1 an). C' est le premier site que
je
crée en php et j' ai du mal avec les dates.




Si tu es en PHP 5 >= 5.3.0 et que tu ne crains pas d'utiliser une
fonction qui pourrait peut-être changer avec un changement de version :
http://fr3.php.net/manual/fr/datetime.add.php
-> date_add($date, "P1M") pour ajouter un mois
-> date_add($date, "P1Y") pour ajouter un an

Sinon, voir les fonctions de gestion de date et heure :
http://fr3.php.net/manual/fr/book.datetime.php

Ou les fonctions de gestion de calendrier :
http://fr3.php.net/manual/fr/book.calendar.php


Merci Olivier,
Meme si j' ai encore du batailler pour comprendre, les infos contenu sur le site ' http://fr3.php.net/manual/fr ' sont précieuses.
Si ça peut aider quelqu' un je vous livre le bout de script qui m' a donné du mal :

$echeanceÚte('Y,m,d', (mktime(0, 0, 0, date('m')+$abonnement, date('d'), date('Y'))));

- $echeance etant l' echeance de l' abonnement bien sur,
- $abonnement contient la durée choisie par l' adherant.
Maintenant ça fonctionne !
Avatar
John GALLET
Bonjour,

Ca parait tout simple, pourtant je bute sur le calcul de l' echeance d'
une date echeance d' abonnement (1 mois ou 1 an). C' est le premier site que je
crée en php et j' ai du mal avec les dates.



Personnellement je te conseille de ne pas t'em****der avec des calculs
de date en autre chose qu'en SQL à chaque fois que tu le peux.

Par exemple sous mysql:

http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html

UPDATE matable SET expiration = DATE_ADD(debut_abonnement, INTERVAL 1
MONTH);

Ca peut évidemment se faire directement dans l'insert.

Il y a deux choses totalement insupportables dans tous les langages
"usuels" de programmation: l'arithmétique des dates/heures et le manque
total d'uniformisation des formats ou noms de fonctions.

a++;
JG