Nouvelle méthode de calcul des échéances de paiement

Les annonces officielles de FranceServ Hébergement.
Avatar de l’utilisateur
Elodie
Fondatrice / Responsable
Fondatrice / Responsable
Messages : 7938
Inscription : 2 avril 2010 à 20:14

Bonjour,

Je viens de changer la méthode de calcul qui détermine la fin de l’échéance d'une souscription au moment du paiement d'une facture d'hébergement. Cette nouvelle méthode de calcul n'est pas rétroactive et s'applique uniquement pour les nouvelles commandes dès maintenant.

Jusqu'à maintenant, je prenai en compte des mois de 30 jours pour déterminer l'échéance d'une facturation afin de simplifier le calcul.

Le calcul était celui-ci :
date actuelle + ( 2592000 secondes dans un mois de 30 jours * par le nombre de mois souhaité )

soit :

Code : Tout sélectionner

$pack_expire = $date_paiement + ($engagement_mois * 2592000)
Sauf que cette méthode de calcul, bien que parfois utilisée en compatibilité d'entreprise, n'est pas forcement bien comprise par tout le monde. Un hébergé qui souscrivait le 12 janvier pendant 12 mois, ne voyait pas son échéance au 12 janvier de l'année suivante ...

Voici alors mon nouveau code de développement :

Code : Tout sélectionner

$date_system = date("Y-m-d-H-i-s", $date_paiement);
list($year, $month, $day, $hour, $minute, $second) = explode('-', $date_system);
$pack_expire = mktime($hour, $minute, $second, $month + $engagement_mois, $day, $year);
Un petit peu plus complexe mais plus juste et compréhensible ;)

Ce système de calcul se base sur le calendrier réel et les cas particuliers sont gérés : une personne qui souscrit le 29 janvier pendant 1 mois ne verra pas son échéance au 29 février (à part pour les années bissextiles), mais au 1er mars et ainsi de suite.

Maintenant que ça c'est fait ... je vais pouvoir continuer mon développement de paiements récurrents et automatiques via Paypal dans une nouvelle option pour les hébergés qui le souhaiterons :)
Vous avez une question ? Posez-la de préférence sur le forum et si ça demande un contact plus instantané, n'hésitez pas à vous rendre sur le t'chat IRC. Si votre question est personnelle, contactez-nous directement.
Répondre