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 :

Comment sélectionner et séparer le jour et mois d'une date ? [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2012
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2012
    Messages : 48
    Points : 34
    Points
    34
    Par défaut Comment sélectionner et séparer le jour et mois d'une date ?
    Bonjour à tous
    Je suis en pleine création d'un site et j'aimerais afficher séparément le jour et le mois d'une date de mes données dans ma base de données. J'aimerais afficher la date en fonction de l'id.

    Par exemple dans ma base j'ai 2 colonnes "id_clip" et "date_clip". Si j'ai 3 données:

    exemple1 23.12.2012
    exemple2 13.03.2013
    exemple3 26.06.2012

    Si je veux afficher l'exemple 3 avec 26.06, comment faire ?
    Voici ma requête :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $req = "SELECT id_clip,groupe_clip,titre_clip,lien_clip,com_clip,util_clip,id,date_clip, DATE_FORMAT(date_clip, '%W %d %M %Y') AS date_creation_fr FROM md_clip WHERE date_clip >= '2012-09-10' AND date_clip <= CURDATE() ORDER BY date_clip DESC LIMIT $perPage OFFSET $offset";
    Merci d'avance !

  2. #2
    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
    En MySQL Donc :

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    .....
    DATE_FORMAT(date_clip, '%W %d %M %Y') AS date_creation_fr,
    EXTRACT(DAY FROM date_clip) AS jour_creation,
    EXTRACT(MONTH FROM date_clip) AS mois_creation
    ....

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2012
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2012
    Messages : 48
    Points : 34
    Points
    34
    Par défaut
    Ca fonctionne à merveille ! Merci beaucoup du coup de main !

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2012
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2012
    Messages : 48
    Points : 34
    Points
    34
    Par défaut
    Dernière question: J'essais de récupérer le mois en toute lettre comment fait-on ? J'ai réussi mais seulement avec la date d'aujourd'hui. Comment récupère t-on la date de ma colonne date_clip ?

    Voici ce que j'ai trouvé:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php $mois = array(1=>'janvier', 'février', 'mars', 'avril', 'mai', 'juin', 'juillet', 'août', 'septembre', 'octobre', 'novembre', 'd&eacute;cembre'); ?>

  5. #5
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 101
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 101
    Points : 8 211
    Points
    8 211
    Billets dans le blog
    17
    Par défaut
    J'ai réussi mais seulement avec la date d'aujourd'hui.
    Montre comment tu t'y prends déjà pour ça pour qu'on puisse te guider.
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  6. #6
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    en PHP, tu peux déjà regarder du coté de :
    - date() ;
    - strftime() associé à setlocale() ;
    - DateTime (class objet)

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2012
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2012
    Messages : 48
    Points : 34
    Points
    34
    Par défaut
    Citation Envoyé par Séb. Voir le message
    Montre comment tu t'y prends déjà pour ça pour qu'on puisse te guider.
    Voici le morceau de script que j'ai trouvé sur internet:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $mois = array(1=>'janvier', 'février', 'mars', 'avril', 'mai', 'juin', 'juillet', 'août', 'septembre', 'octobre', 'novembre', 'd&eacute;cembre');
     
    echo 'Nous sommes le '.$jours[date('w')].' '.date('j').' '.$mois[date('n')].' '.date('Y');
    Ca affiche: Nous sommes le 27 décembre 2012 (la date d'aujourd'hui)

  8. #8
    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
    Pourquoi faire compliquer quand on a tout sous la main.

    Il vous à dit qu'il travaillait en MySQL, celui-ci offre tout.

    en deux lignes cela donne .

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    SET lc_time_names = 'fr_FR';
    SELECT DATE_FORMAT('2012-01-04 ', '%d %M %Y') as date_en_francais

    Comme ceci il récupère directement dans sa requête.

    Maintenant si il faut le faire faire en PHP, il faut utiliser \Datetime(), comme proposé par #jreaux62

  9. #9
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2012
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2012
    Messages : 48
    Points : 34
    Points
    34
    Par défaut
    J'ai testé comme ça mais ça ne fonctionne pas Toujours le "12" du mois de décembre.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    $req = "SELECT id_clip,groupe_clip,titre_clip,lien_clip,com_clip,util_clip,id,date_clip,
    				DATE_FORMAT('2012-01-04 ', '%d %M %Y') AS date_en_francais,
    				EXTRACT(DAY FROM date_clip) AS jour_clip,
    				EXTRACT(MONTH FROM date_clip) AS mois_clip,
    				EXTRACT(YEAR FROM date_clip) AS annee_clip
    				FROM md_clip WHERE date_clip >= '2012-09-10' AND date_clip <= CURDATE() ORDER BY date_clip DESC LIMIT $perPage OFFSET $offset";
    		$result = mysql_query($req) or die(mysql_error());
    		while($data = mysql_fetch_object($result))
    		{
    		    echo "
    		    	$Datetime('$data->mois_clip')";

  10. #10
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2012
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2012
    Messages : 48
    Points : 34
    Points
    34
    Par défaut
    Non c'est bon en fait j'ai compris
    Merci beaucoup !!!

    EDIT:
    Encore un léger problème, j'aimerais que la première lettre du mois soit en majuscule. Des conseils ?

  11. #11
    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
    Après tu cherches toi mêmes, car en quelques secondes sur ce forum tu auras la réponses.

    ucwords()

  12. #12
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2012
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2012
    Messages : 48
    Points : 34
    Points
    34
    Par défaut
    Merci !

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

Discussions similaires

  1. Connaitre 1er et dernier jour du mois d'une date donnée
    Par kerido dans le forum Général Java
    Réponses: 4
    Dernier message: 14/05/2012, 14h18
  2. Récupérer le jour, le mois dans une date mysql
    Par sandddy dans le forum Requêtes
    Réponses: 2
    Dernier message: 18/03/2008, 11h54
  3. Comment compter les jours par mois entre deux dates
    Par Doo89 dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 10/01/2008, 21h21
  4. Réponses: 4
    Dernier message: 09/04/2006, 17h01
  5. Obtenir le 1er jour du mois d'une date
    Par soso78 dans le forum Access
    Réponses: 4
    Dernier message: 27/09/2005, 12h15

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