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 :

Date 28/08/2016 en timestamp


Sujet :

PHP & Base de données

  1. #1
    Membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Décembre 2013
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2013
    Messages : 84
    Points : 48
    Points
    48
    Par défaut Date 28/08/2016 en timestamp
    Bonjour à tous !

    J'ai un formulaire d'inscription avec la date de naissance de ce genre :

    JOURS - MOIS - ANNEE avec des "select"

    J'aimerais transformer une date de ce genre : 28/08/2016 en timestamp afin de l'enregistrer en BDD.

    Quelqu'un peux me dire quel fonction utiliser ?

    Merci

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    251
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 251
    Points : 383
    Points
    383
    Par défaut
    Si tu veux ton timestamp sous le format yyyy-mm-dd , tu peux tout simplement faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $timestamp = $_POST['annee'] . '-' . $_POST['mois'] . '-' . $_POST['jour'];
    // mais il y aura un problème si un de ces champs ne fait pas 2 ou 4 caractères
     
    $timestamp = date('Y-m-d', strtotime( $_POST['jour'] . '-' . $_POST['mois'] . '-' . $_POST['annee'] ));
    // mieux
    strtotime() prend une chaine et la convertit en un timestamp unix (nombre de secondes depuis le 1er janvier 1970). La subtilité c'est que les tirets permettent à strtotime() de comprendre ton format de date. Ensuite, ce timestamp est converti en chaine grâce à la fonction date().

  3. #3
    Membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Décembre 2013
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2013
    Messages : 84
    Points : 48
    Points
    48
    Par défaut
    Merci mais non je souhaite avoir la date dans ce format : "1458719594"

    Merci

  4. #4
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 691
    Points : 20 222
    Points
    20 222
    Par défaut
    Tu peux utiliser mktime() en procédural ou un Datetime et sa fonction format() en objet
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre confirmé
    Homme Profil pro
    Déveleoppeur Web/Mobile
    Inscrit en
    Avril 2013
    Messages
    330
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Déveleoppeur Web/Mobile
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2013
    Messages : 330
    Points : 545
    Points
    545
    Par défaut
    Formate ta date pour passer de 28/08/2016 à 2016-08-08 (format standard mysql et pour utiliser date Time)
    Ensuite avec ta date formatée tu crée un objet DateTime puis tu as une méthode getTimestamp pour récupérer le timestamp unix

  6. #6
    Membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Décembre 2013
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2013
    Messages : 84
    Points : 48
    Points
    48
    Par défaut
    Super ! Merci beaucoup !

  7. #7
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 691
    Points : 20 222
    Points
    20 222
    Par défaut
    Citation Envoyé par -Rpass- Voir le message
    Formate ta date pour passer de 28/08/2016 à 2016-08-08 (format standard mysql et pour utiliser date Time)
    Ensuite avec ta date formatée tu crée un objet DateTime puis tu as une méthode getTimestamp pour récupérer le timestamp unix
    Pas besoin de conversion / formatage :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $date = DateTime::createFromFormat('d-m-Y', '28/08/2016');
    $date->getTimestamp();
    //ou
    $date->format('U');
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  8. #8
    Membre confirmé
    Homme Profil pro
    Déveleoppeur Web/Mobile
    Inscrit en
    Avril 2013
    Messages
    330
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Déveleoppeur Web/Mobile
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2013
    Messages : 330
    Points : 545
    Points
    545
    Par défaut
    Citation Envoyé par grunk Voir le message
    Pas besoin de conversion / formatage :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $date = DateTime::createFromFormat('d-m-Y', '28/08/2016');
    $date->getTimestamp();
    //ou
    $date->format('U');
    Super alors ça ça va me servir ! Petit correctif il me semble :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $date = DateTime::createFromFormat('d/m/Y', '28/08/2016');

Discussions similaires

  1. [Dates] Numéro de semaine vers timestamp
    Par gloubi dans le forum Langage
    Réponses: 4
    Dernier message: 02/01/2007, 22h14
  2. [Derby] Requete date courante sur un champ Timestamp
    Par spekal dans le forum Langage SQL
    Réponses: 2
    Dernier message: 15/09/2006, 10h54
  3. [Dates] recupéré H:i de timestamp
    Par nebil dans le forum Langage
    Réponses: 4
    Dernier message: 05/07/2006, 09h43
  4. Réponses: 1
    Dernier message: 01/06/2006, 23h12
  5. Réponses: 14
    Dernier message: 29/06/2005, 10h22

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