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

  FORUM HardWare.fr
  Programmation
  PHP

  date et php : extraire le mois d'une date SQL (debutant)

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

date et php : extraire le mois d'une date SQL (debutant)

n°1397172
foxcssfox
The design of CSS...
Posté le 29-06-2006 à 13:28:57  profilanswer
 

BONJOUR,
 
j'ai une table avec un champ date, dans ma table anniversaires  qui me enregistre la date sous ce format: 2005-09-10 00:00:00
 
en php, je voudrais lister dans une page tous mes enregistrement (ex : anniversaires) du mois en cours :
comment fiare pour extraire le mois dans ma requete SQL ?
 
voici ma requete :
 

Code :
  1. $sql= "SELECT * FROM anniversaires";
  2. $req = mysql_query($sql) or die('Erreur SQL : <br />'.$sql);
  3.     //exécution de la requête:
  4.     $requete = mysql_query( $sql, $connexion) or exit(mysql_error());
  5.     //affichage des données:
  6.     while( $result = mysql_fetch_object( $requete ) )
  7.     {
  8.        echo("<div align=\"center\">".$result->nom." ".$result->date_expiration." ; </div>\n" ) ;
  9.     }


 
pour afficher le mois en cours, j'ai pensé à ca /
 

Code :
  1. date(format, time());//retourne une date sous forme d'une chaîne, au format donné par la chaîne format.
  2. echo date("m <br />" ); //  Affichera le jour / mois / annnée en cours du serveur.


 
 
Pouvez vous m'aider SVP ? ou me donner des pistes ?
MERCI D'avance
 
Francois
 
ps : qu'est ce que c'est galère les dates ! .-)

mood
Publicité
Posté le 29-06-2006 à 13:28:57  profilanswer
 

n°1397215
j_lecruel
☀ ☁ ☂
Posté le 29-06-2006 à 14:14:39  profilanswer
 

Regarde du coté de la fonction MySQL MONTH() : http://dev.mysql.com/doc/refman/4. [...] tions.html


---------------
♈ ♋ ♌ ♍ ♎ ♏ - Agora Fidelio | Galerie d'art Toulousaine
n°1397489
AlphaZone
Posté le 29-06-2006 à 21:56:22  profilanswer
 

sinon tu as la fonction explode() qui n'est pas mal non plus.
 
Si j'étais toi, je modifierais le champ de ma table. Ca ne sert à rien une date de la forme JJ-MM-AAAA HH:MM:SS surtout pour une date d'anniversaire, à moin que tu as l'heure exacte de la naissance lol.
 
Modifie ton champ pour n'avoir que par défaut ce type de format : JJ-MM-AAAA
 
Après tu fais un explode sur le caractère -
Cela te permettra d'extraire le jour, le mois et même l'année. Tu pourras même la transfomer en date FR.
 
Tiens j'ai voici le code source de mes fonctions qui permette de convertir une date US en date FR et vise versa:
 

Code :
  1. function dateUStoFR($dateUS, $delimiter='-', $separator='-'){
  2. $date = explode($delimiter, $dateUS);
  3. $dateFR = sprintf("%02d%s%02d%s%04d", $date[2], $separator, $date[1], $separator, $date[0]);
  4. return $dateFR;
  5. }
  6. function dateFRtoUS($dateFR, $delimiter='-', $separator='-'){
  7. $date = explode($delimiter, $dateFR);
  8. $dateUS = sprintf("%04d%s%02d%s%02d", $date[2], $separator, $date[1], $separator, $date[0]);
  9. return $dateUS;
  10. }


Message édité par AlphaZone le 29-06-2006 à 21:58:42
n°1397543
Hermes le ​Messager
Breton Quiétiste
Posté le 29-06-2006 à 23:06:29  profilanswer
 

les timestamps devraient toujours être utilisés d'après moi. C'est une bonne habitude à prendre et ça permet ensuite de faire tout ce qu'on veut avec sans utiliser des solutions batardes. :o

n°1397547
AlphaZone
Posté le 29-06-2006 à 23:14:32  profilanswer
 

Qu'entend-tu par "batarde" ?
 
Il est clair que le timestamps peut s'avérer utile. Mais pour cela il faudrait un exemple concret car personnellement, je ne vois pas trop.
 
De même que pour le moment ceux ne sont que simples dates. Est-ce qu'au niveau traitement c'est plus rapide ? Est-ce que la conversion du timestamps en date utilise moin de ressource ?
 
Merci de m'éclairer ma lanterne. Ca pourrait m'interresser si c'est plus efficace ;)

n°1397638
Hermes le ​Messager
Breton Quiétiste
Posté le 30-06-2006 à 01:57:49  profilanswer
 

AlphaZone a écrit :

Qu'entend-tu par "batarde" ?
 
Il est clair que le timestamps peut s'avérer utile. Mais pour cela il faudrait un exemple concret car personnellement, je ne vois pas trop.
 
De même que pour le moment ceux ne sont que simples dates. Est-ce qu'au niveau traitement c'est plus rapide ? Est-ce que la conversion du timestamps en date utilise moin de ressource ?
 
Merci de m'éclairer ma lanterne. Ca pourrait m'interresser si c'est plus efficace ;)


 
ben je trouve bcp plus propre d'utiliser un timestamp pour stocker la date. A l'affichage, on en retire ensuite ce qu'on en veut avec PHP.  
 
C'est comme lorsque tu vas stocker les messages d'un forum. Tu vas pas stocker le html résultant, mais bien le bbcode et le texte.
 
C'est un question de pure logique. On stocke et on travaille ce qui sort et pas l'inverse. Je trouve idiot de définir une date dans mysql. C'est bien mieux d'extraire ENSUITE ce dont on a besoin d'un timestamp.

n°1397649
AlphaZone
Posté le 30-06-2006 à 07:32:50  profilanswer
 

Je suis d'accord avec toi sur le BBCode.
 
Je comprend "à peu près" ce que tu veux dire, mais je ne vois toujours pas l'interêt. Tu dois effectuer des opérations mathématiques pour convertir des secondes en jour, mois et année. De même : Pourquoi s'embêter à convertir un timestamps, alors qu'on peut stocker directement la date ? Ca fait quand même un gain de traitement php, non ?

Message cité 1 fois
Message édité par AlphaZone le 30-06-2006 à 07:34:00
n°1397657
Hermes le ​Messager
Breton Quiétiste
Posté le 30-06-2006 à 07:52:21  profilanswer
 

AlphaZone a écrit :

Je suis d'accord avec toi sur le BBCode.
 
Je comprend "à peu près" ce que tu veux dire, mais je ne vois toujours pas l'interêt. Tu dois effectuer des opérations mathématiques pour convertir des secondes en jour, mois et année. De même : Pourquoi s'embêter à convertir un timestamps, alors qu'on peut stocker directement la date ? Ca fait quand même un gain de traitement php, non ?


 
Quels calculs ??  :??:  
 

Code :
  1. date ( string format [, int timestamp] )


 
Pour rappel...

n°1397752
AlphaZone
Posté le 30-06-2006 à 10:07:40  profilanswer
 

Bien vu. Je n'avais jamais fait attention à cela. Maintenant ca me paraît beaucoup plus simple d'utilisation.
 
Merci pour le rappel ;)


Message édité par AlphaZone le 30-06-2006 à 10:07:58

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

  date et php : extraire le mois d'une date SQL (debutant)

 

Sujets relatifs
[VBA] Problème avec les formats de date[shell] débutant : test sur la présence de fichiers
Petit programme de débutantQuestion debutant ...
wxWidgets déclencher un evenement à une date préciseOracle dbtimzone date UTC
[php/sql] mettre en archives données quand date dépasséUtilisation de SQL SERVER
[VB & EXCEL] Problème de récupération de dateNbr d'enregistrements max SQL
Plus de sujets relatifs à : date et php : extraire le mois d'une date SQL (debutant)


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