Page 1 sur 1
problème pour récuperer le mois dans une date
Posté : 06 avr. 2007, 11:25
par julie
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
Posté : 06 avr. 2007, 11:34
par guilt92
bonjour,
regarde du coté de la fonction date() de PHP tu trouveras facilement ton bonheur !
Posté : 06 avr. 2007, 11:38
par Ryle
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), ...

Posté : 06 avr. 2007, 11:55
par julie
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...
Julie
Posté : 06 avr. 2007, 12:19
par Ryle
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

Posté : 06 avr. 2007, 12:48
par sadeq
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à

Posté : 06 avr. 2007, 14:58
par julie
Merci a tous !
Julie
Posté : 06 avr. 2007, 15:01
par Ryle
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 !!! 
Posté : 06 avr. 2007, 18:49
par Expreg
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.
Avec une date sous la forme AAAA-MM-JJ, les éléments sont accessibles via l'explode en-dessous.
