[PHP] [SQL] Opérations sur les dates

Résolu
Bonjour,

Dans mon script j'ai besoin de faire une opération sur les dates et les insérés dans une bdd mysql.

Il y a 2 colonnes : 'date_on' et 'date_stop'

Ma requête sql :

mysql_query("INSERT INTO donateur(date_on, date_stop) VALUES(CURDATE(), ici)")

J'aimerais remplacer 'ici' par quelque chose qui serais 1 mois après CURDATE()
(genre CURDATE()+1)

Merci.

2 réponses

  1. Salut,

    Le plus simple serait d'enregistrer la date au format timestamp (time())
    puis d'ajouter un mois sur ce timestamp.

    $timestamp = time();
    $unmois = 60*60*720;//60 secondes*60 minutes*(24 heures*30 jours)
    $unmoisapres = $timestamp+$unmois;
    1. Ok mais là c'est en seconde

      mysql_query("INSERT INTO donateur(date_on, date_stop) VALUES(CURDATE(), ".$unmoisapres.")")

      MySQL comprendra ?
      1. Effectivement, je n'ai pas fait attention à l'utilisation de CURDATE() qui retourne la date courante au format AAAA-MM-JJ. Dans ce cas et si je ne me plante pas, il faut convertir la date du champ "date_on" en timestamp avec la fonction "mktime()" pour y ajouter 1 mois et reconvertir le tout au format AAAA-MM-JJ pour l'insérer dans le champ "date_stop".