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

Langage PHP Discussion :

inserer une date dans la BD [PHP 5.2]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Décembre 2010
    Messages
    211
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 211
    Par défaut inserer une date dans la BD
    salut à tous,

    j'essaye d'insérer une simple date dans une colonne (DATE) mais le resultat est 0000-00-00.

    Je voudrais l'insérer comme : '11/12/1980' mais j'y arrive pas.

    Une idée svp?

  2. #2
    Membre chevronné

    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2009
    Messages
    377
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Novembre 2009
    Messages : 377
    Par défaut
    Tu utilises quelle BD ?

    Sous mysql tu peux le faire de plusieurs façon, si tu veux insérer la date actuelle tu peux créer un champ timestamp avec la valeur à la création current_timestamp.

    Si tu veux quelle soit mise à jour à chaque changement d'une colonne il te faut mettre l'attribut on_update_current_timestamp.

    Tu peux aussi utiliser le mot clé now() dans ta requête sql pour setter la date actuelle.

    Maintenant si tu veux faire autre chose il me faut plus de détail

  3. #3
    Membre confirmé
    Inscrit en
    Décembre 2010
    Messages
    211
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 211
    Par défaut
    je travaille sous mysql et je voudrais insérer la date de naissance des visiteurs (formulaire). quand je fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INSERT INTO table(datedenaissance) values('11/12/1983')
    cela m'insère '0000-00-00'.

  4. #4
    Membre chevronné

    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2009
    Messages
    377
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Novembre 2009
    Messages : 377
    Par défaut
    Tu écris dans le faux sens, c'est AAAA-MM-JJ et non JJ-MM-AAAA.

  5. #5
    Membre confirmé
    Inscrit en
    Décembre 2010
    Messages
    211
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 211
    Par défaut
    Citation Envoyé par manticore Voir le message
    Tu écris dans le faux sens, c'est AAAA-MM-JJ et non JJ-MM-AAAA.
    Je sais, mais je voudrais que dans le formulaire on insère au format normal ( DD/MM/YYYY)...

    Donc il faut que je fasse un changement de date?

  6. #6
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par jreaux62 Voir le message
    Dans ce cas, il ne faut pas mettre un champ de type DATE, mais de type VARCHAR.

  7. #7
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par AbouZaid Voir le message
    Je voudrais l'insérer comme : '11/12/1980'
    Dans ce cas, il ne faut pas mettre un champ de type DATE, mais de type VARCHAR.
    Par contre, tu vas perdre les "fonctions de date" possibles sur un champ type DATE...

    Le type DATE est au format anglais : AAAA-MM-JJ (ou YYYY-MM-DD)
    Question subsidiaire ? Comment changer '11/12/1980' en '1980-12-11' ?
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
    // récupération au format JJ/MM/AAAA (français)
    $dateFR = '11/12/1980';
     
    // enregistrement en Bdd sous la forme AAAA-MM-JJ (anglais)
    $dateBD = implode( '-', array_reverse( explode('/', $dateFR) ) );
     
    // ré-affichage sur la page au format JJ/MM/AAAA (français)
    $dateAff = date('d/m/Y', strtotime($dateBD));
    ?>
    Dernière modification par Invité ; 07/05/2012 à 16h38.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Inserer une date dans une table via vba
    Par marcelstan dans le forum Access
    Réponses: 2
    Dernier message: 31/07/2014, 11h12
  2. [MySQL] Inserer une date dans une base
    Par Th300 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 11/11/2011, 18h17
  3. [MySQL] inserer une date dans la base par php
    Par gholaff dans le forum PHP & Base de données
    Réponses: 10
    Dernier message: 11/06/2011, 12h38
  4. Réponses: 13
    Dernier message: 27/12/2006, 17h52
  5. insere une date dans un formulaire
    Par lepeintre dans le forum ASP
    Réponses: 5
    Dernier message: 13/05/2005, 10h46

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