|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre du Club
![]() Inscription : février 2006 Messages : 159 ![]() |
B
je souhaiterais utiliser une date de création d'un utilisateur et l'intégrer dans ma base de données mysql. Je souhaiterais que cette date soit crée automatiquement. J'ai donc pensé à un timestamp comment convertir mon timestamp en date ? Mysql serait il en mesure de créer un timestamp automatiquement ? Merci d'avance à tous pour vos explications et informations Jean |
|
|
00
|
|
|
#2 | ||
|
Membre habitué
![]() Aliosha Inscription : mars 2007 Messages : 124 ![]() |
Dans MySQL il faut que tu spécifies, dans la création de ton champ : DATE (date_elem DATE NOT NULL, ).
Puis, dans l'affichage, à l'aide d'une fonction de type : Code :
Tu peux « décomposer » la date dans ton formulaire d'ajout de dates en proposant trois inputs (jour / mois / année), puis, dans la mise à jour de la base MySQL « lier » ces trois résultats (par exemple $date = $_POST['annee']."-".$_POST['mois']."-".$_POST['jour']; Mais tout ça ne répond pas à ta question (je m'emporte, je m'emporte !) Donc, effectivement, oui, MySQL peut retourner la date actuelle, en spécifiant CURDATE() dans ta requête (pour l'heure c'est CURTIME() (Si tu utilises ça, je te conseille d'aller ici :http://dev.mysql.com/doc/refman/5.0/...functions.html ...) Personnellement, j'utilise PHP, avec $date_elem = date(Y-m-d), qui retourne 2007-04-02, ajoutable dans MySQL, puis la méthode citée précédemment pour transformer cette donnée à l'affichage. Pour l'heure, c'est $heure_elem = date(H:i:s); . (date(H:i) si tu ne veux pas les secondes)... Le format dans MySQL est TIME. (heure_elem TIME NOT NULL, dans la création de la table) Voilà... |
||
|
|
00
|
|
|
#3 |
|
En attente de confirmation mail
![]() Inscription : juin 2002 Messages : 6 164 ![]() |
Avec MySQL pour passer d'une date ou datetime vers un timestamp vous avez la fonction UNIX_TIMESTAMP(). Et pour passer d'un timestamp à un datetime : FROM_UNIXTIME(). Il vous est bien sûr possible de combiner d'autres fonctions MySQL à celles-ci (pour ne récupérer que le mois, etc, par exemple).
Choisissez autant que possible un format (date vs timestamp) qui vous demandera le moins de traitement possible. MySQL n'initialisera pas automatiquement ces champs à la "date" actuelle (peut être à l'aide d'un trigger ?) et pour cela vous pouvez utiliser directement les fonctions MySQL dans vos requêtes (NOW() pour un datetime, UNIX_TIMESTAMP() pour un timestamp, ...) ça vous évite de passer par PHP pour des broutilles. Lors d'un select vous pouvez également recourir à la fonction DATE_FORMAT pour passer du format Y-m-d au format d/m/Y sans passer par les éternels explode et compagnie en PHP. Plus d'informations sur les fonctions en rapport avec les dates. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com