Champ Date [PHP] - PHP - Programmation
Marsh Posté le 08-05-2007 à 18:35:43
fonction explode()
après un petit formatage avec sprintf et c'est dans la poche.
Tu peux également remplacer la date par le timestamp. Ainsi tu n'utilise plus que la fonction date() au lieu de 2.
Marsh Posté le 08-05-2007 à 18:39:24
AlphaZone a écrit : fonction explode() |
oula je débute lol, tu peux dévellopé, voici mon formulaire :
Code :
|
Marsh Posté le 08-05-2007 à 23:10:46
Oulala, et pourquoi pas une usine à gaz pour allumer une ampoule aussi
Expression régulière puisque de toutes manières chaque entrée DOIT être filtrée, suffit juste d'utiliser une référence arrière
Marsh Posté le 08-05-2007 à 23:38:39
moi perso je fais un champ INT(10) qui dontient un mktime($heure, $minute,$secondes,$mois,$jour,annee) ... puis à la lecture, un echo date("d/m/Y H:i:s",$timestamp); suffit.
Marsh Posté le 09-05-2007 à 00:36:45
Et pourquoi pas un champ d'un type date S'il contient une date pourquoi ne pas le typé en ce sens?
De toutes manières c'est pas le souci du sujet
Marsh Posté le 09-05-2007 à 10:14:14
leflos5 a écrit : Et pourquoi pas un champ d'un type date S'il contient une date pourquoi ne pas le typé en ce sens? |
Parce qu'un champ date doit être au format US et ça nécessite toujours une manipulation de la chaine.
Marsh Posté le 09-05-2007 à 10:47:24
et alors tu as des fonctions mysql très bien faites, genre str_to_date qui font exactement ce que tu demandes:
Code :
|
Alors biensur pour que cela marche il faut s'assurer que la date saisie et son format sont correctes, mais j'imagine que tu le fais déjà.
Marsh Posté le 09-05-2007 à 11:27:45
le problème de faire un champ qui n'est pas date et que tu ne peux pas le requéte par la suite par ordre croissant ou décroissant. je me trompe ?
Marsh Posté le 09-05-2007 à 11:36:29
Petite remarque en passant : le format MySQL standard (AAAA-MM-JJ HH:MM:SS) pour un champ "date" n'est absolument pas le format US qui est MM-JJ-AAAA ...
Ce format MySQL est juste le seul format intelligent de stockage de date en string (à part le timestamp donc) puisqu'elles seront toujours chronologiquement ordonnées.
Marsh Posté le 09-05-2007 à 11:38:20
plop007 a écrit : le problème de faire un champ qui n'est pas date et que tu ne peux pas le requéte par la suite par ordre croissant ou décroissant. je me trompe ? |
oui tu te trompes car son int est "triable" aisément.
Par exemple: 20070101 est bien supérieur à 20061231 mais inférieur à 20070509.
L'inconvénient c'est que tu peux plus te servir des fonctions natives du sgdb pour la gestion des dates ( date_format, date_add, date_sub, timediff,... par exemple sur mysql)
ZeBix a écrit : Petite remarque en passant : le format MySQL standard (AAAA-MM-JJ HH:MM:SS) pour un champ "date" n'est absolument pas le format US qui est MM-JJ-AAAA ... |
Petite remarque en repassant: c'est pas le format "MySQL standard" mais le format standard défini en SQL92
Marsh Posté le 09-05-2007 à 13:15:00
anapajari a écrit : et alors tu as des fonctions mysql très bien faites, genre str_to_date qui font exactement ce que tu demandes:
|
Je ne connaissais pas cette fonction, merki
anapajari a écrit : Alors biensur pour que cela marche il faut s'assurer que la date saisie et son format sont correctes, mais j'imagine que tu le fais déjà. |
Je suis un peu parano sur les bords, donc oui je m'assure que la date saisi est au bon format ^^
Marsh Posté le 09-05-2007 à 14:30:21
anapajari a écrit : Petite remarque en repassant: c'est pas le format "MySQL standard" mais le format standard défini en SQL92 |
Tu as très bien compris ce que je voulais dire, mais précisions pour précisions, il s'agit en vérité du format ISO 8601 ... dont la dernière révision date de 2004 mais qui a été visiblement initié en ... 1988.
Valààà comme ça on est biiiiien précis !
Marsh Posté le 09-05-2007 à 21:16:19
HuM
je crois que je vais changer de philosophi et si qqun veut bien se donner la peine de m'aider sa serait génial
pourquoi pas créer 3 champs formulaire avec des liste déroulante dans chacun de ces 3 champ qui énumererai le jour , moi et année. en suite je prends ces 3 champ et je l'insére au format ISO yyyy-mm-dd dan ma table mysql.
par contre je serai incapable de coder ça tout seul...
si qqun veut bien m'aider, mais peut être j'en demande trop
SeB
Marsh Posté le 09-05-2007 à 23:55:52
J'ai un truc un peu porc pour çà que j'ai chopé je ne sais ou sur le net.
<?php |
Et donc ensuite pour ta requete mysql
Code :
|
M'enfin si qq1 poste qq chose de mieux
Marsh Posté le 08-05-2007 à 18:18:11
Bonjour à vous
voila j'ai fait un petit calendrier avec dans ma base de donnée les champ ID,DATE,EVENEMENT.
comme chacun sait mysql ne comprends que les dates à l'anglaise or dans ma partie administration du site lorsque les utilisateurs rentrent un évenement ils vont mettre les dates en français. alors je me suis posé la question comment faire que se soit transparent pour eux...
et dans phpmyadmin lorsqu'on veut inséré des donnée date dans un champ on a un petit calendrier qui s'affiche, comment puis je mettre ça en place sur mon site ? ou sinon comment puis je lor de l'envoie du formulaire transformer la date française en anglaise ?
merci pour vos réponses
SeB