problème pour récuperer le mois dans une date

julie
Invité n'ayant pas de compte PHPfrance

06 avr. 2007, 11:25

bonjour,
j'ai une base de donné mysql ou je rentre une date du type '2007-05-04'.

dans un autre module je cherche a récupere cette date, jusque la tout est ok, mais ensuite je veux juste récupéré le jour le mois et l'année mais dans 3 variables différentes ($jour $mois $annee)

Merci d'avance de votre aide.

julie

Mammouth du PHP | 1353 Messages

06 avr. 2007, 11:34

bonjour,

regarde du coté de la fonction date() de PHP tu trouveras facilement ton bonheur !
Tell me and I forget. Teach me and I remember. Involve me and I learn.

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

06 avr. 2007, 11:38

Tu peux aussi regarder du côté de explode() en php... sinon utiliser les fonctions de date MySQL : SELECT YEAR(ta_date), MONTH(ta_date), ... :)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

julie
Invité n'ayant pas de compte PHPfrance

06 avr. 2007, 11:55

oui merci,
mais quand je récupere ma date de ma base j'obtient une variable de ce type
2007-05-04
donc en faite il faut que je réussisse a "découpé" cette variable, pour dire que le premier nombre jusqu'au tiret c'est l'anné, ensuite le mois et ensuite le jour.

si on pouvais m'éclairer ?

Je ne suis pas blonde pour rien... :oops: :oops:

Julie

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

06 avr. 2007, 12:19

Tu peux aussi regarder du côté de explode() en php...
array explode ( string delimiter, string string [, int limit] )

explode retourne un tableau de chaînes. Ce sont les sous-chaînes extraites de string, en utilisant le séparateur delimiter.
Si tu utilises cette fonction sur ta chaine en spécifiant le trait d'union comme délimiteur, tu obtiendras un tableau de 3 valeurs correspondant respéctivement à l'année, au mois et au jour :)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Modérateur PHPfrance
Modérateur PHPfrance | 2575 Messages

06 avr. 2007, 12:48

Cours : Comment extraire les parties d'une date par 36 façons

Soit $ma_date est une date à manipuler. La source des dates étant une table de base de données pour l'exemple.

Méthode 1 : Utiliser SQL
//liste SQL des dates enregistrées dans ma_table
$requete = mysql_query("select date,  Day(date) as jour, Month(date) as mois, Year(date) as annee from ma_table");
while ($requete && $ma_date = mysql_fetch_assoc($requete)){
     //afficher une date trouvée
    echo  "<p>La date $ma_date[date] est composée de : <ul>
               <li>Jour = $ma_date[jour]
               <li>Mois = $ma_date[mois]
               <li>Année = $ma_date[annee]
               </ul>";
}
Méthode 2 : Utiliser PHP
  • A: Utiliser la fonction date()
    //liste SQL des dates enregistrées dans ma_table
    $requete = mysql_query("select date from ma_table");
    while ($requete && $ligne = mysql_fetch_assoc($requete)){
         //afficher une date trouvée
          $ma_date = $ligne["date"];
          $jour = date("d",  $ma_date);
          $mois = date("m",  $ma_date);
          $annee = date("Y",  $ma_date);
          echo  "<p>La date $ma_date est composée de : <ul>
                   <li>Jour = $jour
                   <li>Mois = $mois
                   <li>Année = $annee
                   </ul>";
    }
    
    B: Utiliser la fonction explode() ou split()
    //liste SQL des dates enregistrées dans ma_table
    $requete = mysql_query("select date from ma_table");
    while ($requete && $ligne = mysql_fetch_assoc($requete)){
         //afficher une date trouvée format AAAA-MM-JJ
          $ma_date = explode("-" , $ligne["date"]); //retourne un tableau de 3 cases : [0]=AAAA, [1]=MM, [2]=JJ
          
          echo  "<p>La date $ma_date est composée de : <ul>
                   <li>Jour = $ma_date[2]
                   <li>Mois = $ma_date[1]
                   <li>Année = $ma_date[0]
                   </ul>";
    }
Voilà :wink:
Modifié en dernier par sadeq le 12 avr. 2007, 12:55, modifié 1 fois.
--------//////----//---//----//////
-------//---//----//---//----//---//
------//////----//////-----//////
-----||--------||--||---||
Prendre le recul n'est pas une perte de temps.


ps: Affrontez moi dans l'arène

julie
Invité n'ayant pas de compte PHPfrance

06 avr. 2007, 14:58

Merci a tous !

Julie

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

06 avr. 2007, 15:01

Modération :
Puisque ta question est résolue, j'ajoute le tag [Résolu]
pour indiquer aux personnes qui voudront consulter ce sujet qu'il contient une solution.

Tu peux réaliser cette opération toi-même
en cliquant sur le bouton [Mettre Résolu] qui s'affiche en haut à gauche de ce sujet
si tu as posté le 1er message en tant que membre (inscrit et identifié).

Alors... inscris-toi !!! ;)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Eléphant du PHP | 170 Messages

06 avr. 2007, 18:49

Dans les exemples fourni par sadeq :
Méthode 2 : Utiliser PHP
A: Utiliser la fonction date()
Cette structure n'a d'intérêt que si la date dans la base de données est sous la forme d'un timestamp UNIX. :wink:
Avec une date sous la forme AAAA-MM-JJ, les éléments sont accessibles via l'explode en-dessous. :wink:
Benjamin Franklin a dit :
Tu me dis, j'oublie. Tu m'enseignes, je me souviens. Tu m'impliques, j'apprends