Bonjour à tous,

je voudrais créer un espace premium avec un abonnement mensuel ou annuel. Je pensais éventuellement créer une table premium avec:
-un champ id de l’utilisateur
-un champ formule= mensuel ou hebdomadaire
-un champ avec la date du paiement

Je donne accès à certaines pages réservés au premium que si l'utilisateur se trouve dans la bdd premium et du coup il faudrait que la ligne s'efface quand l'utilisateur est arrivé au bout de son abonnement.

Pensez-vous que cela soit possible? Quelqu'un a-t-il une meilleure solution?
Merci et bonne journée!
Bonjour,

Tu peux faire périodiquement effacer les comptes expirées avec une tâche cron par exemple, p.ex. tous les jours à minuit, mais ce n'est pas ce que je te recommanderais.

Pourquoi est-ce que tu as besoin d'effacer absolument les comptes expirés ?
Tu as la date de paiement, un simple calcul est suffisant pour déterminer lors de la tentative d'accès si l'utilisateur est toujours premium ou pas; sans besoin de supprimer quoi que ce soit.

Par ailleurs je trouverais plus malin de stocker la date de fin d'abonnement plutôt que la date de paiement, mais c'est une question de point de vue. Ca rend les calculs plus simples, notamment pour les renouvellements, les notifications d'échéances, etc.
Oui cela est possible, il faut passer par les variable de de $_SESSION.

L'utilisateur s'authentifie, Soit c'est un utilisateur lambda, du coup il aura une variable de type $_SESSION['premium'] = "non";
soit il est premium.

Au niveau de la date, tu la connais car elle est stocké en BDD comme tu dis. il suffit de faire un calcul à chaque authentification.

*Tu peux avoir un truc du genre

<?php 
if ($_SESSION['premium'] == "oui")
{
?>

// ton contenu HTML PREMIUM

<?php
}
?>

Modifié par JENCAL (19 May 2015 - 11:21)