Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
544 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Extraire le jour d'une date MySQL

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Extraire le jour d'une date MySQL

n°1360136
weed
Posté le 05-05-2006 à 02:34:26  profilanswer
 

voila je bloque ...
 
selon la doc http://fr3.php.net/manual/fr/function.date.php
 
ca serait date (<format>, <date> )
 
Mettons que la date est : 2006-05-09 02:09:21 et que je veux recuperer le mois c'est à dire 5
 
j'ai essayé  
date ('j', $donnee_mysql[0]);
 
mais cela m'affiche 1 et non pas 5 :(
 

mood
Publicité
Posté le 05-05-2006 à 02:34:26  profilanswer
 

n°1360138
Djebel1
Nul professionnel
Posté le 05-05-2006 à 02:51:17  profilanswer
 

'j' c'est pour récupérer le jour, pour le mois c'est F ou m ou M ou n (cf la doc que tu cites)
au passage, $donnee_mysql[0] est bien un UNIX TIMESTAMP ?

n°1360161
vernoff
Posté le 05-05-2006 à 09:04:02  profilanswer
 

Salut !
 
Pour récupérer le jour actuel voilà le code :
 
date("d"); (format : 01 à 31)
 
ou
 
date("j"); (format : 1 à 31)


Message édité par vernoff le 05-05-2006 à 09:06:45
n°1360492
weed
Posté le 05-05-2006 à 15:25:31  profilanswer
 

oui pour extraire le jour d'aujourd'hui, c'est assez facile. Il n'y a pas besoin de mettre un 2ème parametre ...
 
 
non ce n'est pas du timestamp, mais le format de date que propose MySQL, c'est à dire : yy-mm-dd HH:mm
Tu as raison, cela doit etre ca, le souci.
 
voila, un petit appercu pour mieux pour que vous comprenait.

$t=mysql_query ("select ma_date from matable" );
$donnee_mysql = mysql_query_rows ($t);


 
j'ai trouvé 2 solutions pour extraire le jour de mes dates enregistrées dans la base de données :  
 
- recuperer donnee_mysql[0] en tant que chaine de caractère et faire un faire un substring pour recuperer le jour.
 
- ou sinon une solution, un peu plus propre, serait de rajouter une autre variable dans la requete et d'utiliser la commande UNIX_TIMESTAMP
 

$t=mysql_query ("select ma_date, UNIX_TIMESTAMP (ma_date) as date_en_timestamp" );
$donnee_mysql = mysql_query_rows ($t);
 
$jour=date("j",donnee_mysql[1]);


 
 
c'est un pêu mieux, je trouve cela dommage de rajouter une autre variable dans la requete.
N'y a t'il pas une fonction PHP qui transforme une date MySQL en timestanp pour qu'ensuite je puisse utiliser la fonction date de PHP.
 
un truc dans le genre.
 

$mois=date("j", fonction_to_timestamp(donnee_mysql[0]) )


n°1360501
soju
One shot !
Posté le 05-05-2006 à 15:35:34  profilanswer
 

tu dois avoir une fonction mysql qui te retourne le jour
sinon en php tu as http://fr.php.net/strtotime

n°1360523
naceroth
Posté le 05-05-2006 à 15:55:18  profilanswer
 

Ouais, y a surtout les fonctions Day, Year, Month directement dans mysql, rtfm donc :D

n°1360603
weed
Posté le 05-05-2006 à 17:16:48  profilanswer
 

merci soju, j'essairai ta solution un peu plus tard. Merci
 
naceroth, non ta solution n'est pas top. Dans tous les cas, je dois afficher dans mon formulaire la date. Donc ce que tu me propose c'est de mettre 2 variable dans ma clause SELECT, une pour afficher ma date en entier et une autre pour récuperer le mois. Nop désolé, je ne trouve pas ca tres propre et je trouve que c'est plus le role de php que de MySQL. Enfin, bon, je sais c'est tres subjectif comme réponse.

n°1360636
naceroth
Posté le 05-05-2006 à 18:23:08  profilanswer
 

weed a écrit :


naceroth, non ta solution n'est pas top. Dans tous les cas, je dois afficher dans mon formulaire la date. Donc ce que tu me propose c'est de mettre 2 variable dans ma clause SELECT, une pour afficher ma date en entier et une autre pour récuperer le mois. Nop désolé, je ne trouve pas ca tres propre et je trouve que c'est plus le role de php que de MySQL. Enfin, bon, je sais c'est tres subjectif comme réponse.


 
Tu ne nous donnes pas non plus l'intégralité de ton problème, rien n'indiquait dans ta question la présence obligatoire de la date complète, difficile donc d'être dans ta tête au moment de répondre...  :sarcastic:

n°1360665
benamoubea​ch
tivuplai
Posté le 05-05-2006 à 19:49:20  profilanswer
 

j'allais dire comme naceroth, mais c pas bien :'( je pleureeee

n°1360685
Mara's dad
Yes I can !
Posté le 05-05-2006 à 21:01:38  profilanswer
 

Le format "strftime" de 2006-05-09 02:09:21 est "%Y-%m-%d %H:%M:%S"
 
donc :
 
$sDate = '2006-05-09 02:09:21';
 
$aDate = strptime( $sDate, '%Y-%m-%d %H:%M:%S' );
 
$mois = $aDate['tm_mon'] +1;


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Extraire le jour d'une date MySQL

 

Sujets relatifs
[RESOLU][MYSQL] Importer une base de donnéesImportation données XML vers BDD MySql
convertir date dd/mm/yyyy en date sqlRequête PHP MySQL
requete php mysqlAcces mise a jour d'une table
requete php pour base mysqlAction automatique [PHP - MYSQL]
En PHP, comment placer les données d'un XML dans MySQL avec XSLT ? [PHP] Extraire les liens http dans un code source html
Plus de sujets relatifs à : Extraire le jour d'une date MySQL


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR