IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

SQL ajouter des jours a un datetime


Sujet :

PHP & Base de données

  1. #1
    Inactif
    Inscrit en
    Octobre 2008
    Messages
    826
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 826
    Points : 172
    Points
    172
    Par défaut SQL ajouter des jours a un datetime
    Bonjour,

    Voila a quoi ressemble mon datetime.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    2011-11-08 11:52:38.810
    Je voudrai insérer la date jour plus 30 jour.

    Comment je dois m'y prendre.

    Merci

  2. #2
    Membre émérite
    Avatar de gene69
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 769
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 769
    Points : 2 446
    Points
    2 446
    Par défaut
    Citation Envoyé par http://dev.mysql.com/doc/mysql/en/date-and-time-functions.html
    mysql> SELECT ADDDATE('1998-01-02', 31);
    -> '1998-02-02
    on trouve des choses fantastiques dans la doc mysql!
    PHP fait nativement la validation d'adresse électronique .
    Celui qui a inventé mysql_connect(...) or die() est déjà mort plusieurs fois.

    Utilisez le bouton résolu!

  3. #3
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Il faut utiliser les fonctions de manipulation de date de ton sgdb.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  4. #4
    Inactif
    Inscrit en
    Octobre 2008
    Messages
    826
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 826
    Points : 172
    Points
    172
    Par défaut
    Moi et sql on s'aime pas.

    MySql no souci.

    Pour sql lui non, l'aime pas, et c'est réciproque.


    gene69 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    mysql> SELECT ADDDATE('1998-01-02', 31);
    -> '1998-02-02
    Sa ne correspond pas a mon affichage.
    Pourrai tu me faire un exemple pour ajouter 30 jours a la date et l'heure actuelle ?
    Pour l'inserer dans la DB

  5. #5
    Inactif
    Inscrit en
    Octobre 2008
    Messages
    826
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 826
    Points : 172
    Points
    172
    Par défaut
    Ok j'avais mal compris.

    Pourquoi u fais un select alors que je veu inserer une date ?

    C'est pas plutot insert ?

    J'aissaye sa :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $maDate = date('Y-m-d', strtotime('+30 day')) . " 00:00:00.000";
    Sauf que j'obtiens sa :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1900-01-01 00:00:00.000
    Pourquoi ?

  6. #6
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 496
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 496
    Points : 12 596
    Points
    12 596
    Par défaut
    Lis la doc de MySQL (si c'est bien ton sgbd), quelque chose comme ceci

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    INSERT INTO nom de table (colonne_date)
    VALUES (SELECT ADDDATE('2008-01-02', INTERVAL 31 DAY))

  7. #7
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    +30 jours ou +1 mois ?

  8. #8
    Inactif
    Inscrit en
    Octobre 2008
    Messages
    826
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 826
    Points : 172
    Points
    172
    Par défaut
    Ce serait plus 1 mois.

  9. #9
    Expert éminent sénior

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 386
    Points : 10 413
    Points
    10 413
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $query = "INSERT INTO table (pseudo,date) VALUES ('toto',(SELECT DATE_ADD(NOW(), INTERVAL 1 MONTH)))";

  10. #10
    Inactif
    Inscrit en
    Octobre 2008
    Messages
    826
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 826
    Points : 172
    Points
    172
    Par défaut
    Pourquoi sa me met que la fonction adddate est inconu ?

    J'utilise ODBC, pour info

  11. #11
    Expert éminent sénior

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 386
    Points : 10 413
    Points
    10 413
    Par défaut
    T'a essayé mon code ?

    Que ce soit ADDDATE ou DATE_ADD il faut que l'ensemble de l'expression SELECT ... soit entouré d'accolades à l'intérieur du champs VALUES() donc si tu n'avais que le champs date à insérer ça ferait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $query = "INSERT INTO table (date) VALUES ((SELECT DATE_ADD(NOW(), INTERVAL 1 MONTH)))";

  12. #12
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 496
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 496
    Points : 12 596
    Points
    12 596
    Par défaut
    ADDDATE est une function MySQL.

    C'est bien MySQL que vous utilisez ?

  13. #13
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Pour éviter une réponse à côté : ODBC n'est pas un moteur de base de donnée, c'est juste un moyen d'exploiter une base de donnée.

    Les requêtes restent propres au moteur de base donnée qui se cache derriere la liaison ODBC.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

Discussions similaires

  1. [Débutant] un ajout des jours automatiquement<vb.net/sql server>
    Par wikiele dans le forum VB.NET
    Réponses: 3
    Dernier message: 22/09/2011, 12h31
  2. [MySQL] Ajouter des jours à une date donnée
    Par jiojioforever dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 01/10/2009, 09h32
  3. ajouter des jours à une date
    Par babalastar dans le forum Collection et Stream
    Réponses: 1
    Dernier message: 27/02/2007, 11h39
  4. [HQL] Ajouter des jours à une date
    Par loulou dans le forum Hibernate
    Réponses: 2
    Dernier message: 30/01/2007, 11h22
  5. Ajouter des minutes a un DATETIME
    Par gregb34 dans le forum Langage
    Réponses: 7
    Dernier message: 29/03/2006, 17h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo