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

 


Dernière réponse
Sujet : [php] Convertion de date
kyo54

pudaipiai a écrit a écrit :

 
 
pour éviter qu'ils se posent la question, tu devrais peut être créer 3 inputs select, un pour le jour, un pour le mois, un pour l'année, placés dans cet ordre.
 
ensuite tu envoie à la base $date="$année/$mois/$jour"
 
Quand tu récupère dans l'autre sens pour les selected, tu fais
$annee=substr($date,0,4);
$mois=substr($date,5,2);
$jour=substr($date,8,2);
 
Enfin, c'est ce que je fais, c'est plus simple pour l'utilisateur qui peut pas se tromper...  




 
oui t'as raison, c mieux! J'ai fait ça tranquilou!

 

[jfdsdjhfuetppo]--Message édité par kyo54--[/jfdsdjhfuetppo]


Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
kyo54

pudaipiai a écrit a écrit :

 
 
pour éviter qu'ils se posent la question, tu devrais peut être créer 3 inputs select, un pour le jour, un pour le mois, un pour l'année, placés dans cet ordre.
 
ensuite tu envoie à la base $date="$année/$mois/$jour"
 
Quand tu récupère dans l'autre sens pour les selected, tu fais
$annee=substr($date,0,4);
$mois=substr($date,5,2);
$jour=substr($date,8,2);
 
Enfin, c'est ce que je fais, c'est plus simple pour l'utilisateur qui peut pas se tromper...  




 
oui t'as raison, c mieux! J'ai fait ça tranquilou!

 

[jfdsdjhfuetppo]--Message édité par kyo54--[/jfdsdjhfuetppo]

skylight merci ca marche , il fallait faire strtotime :)
Mara's dad

skylight a écrit a écrit :

echo (strftime( "%A %d %B %Y à %H:%M:%S",mktime($dateheure)));
 
 ne marche ^pas  




<?php  
setlocale ("LC_TIME", "fr_FR" );  
echo( strftime( "%A %d %B %Y à %H:%M:%S", strtotime("1999-12-25 12:10:05" ) ) );  
echo( "<HR>" );  
show_source( "date.php" );  
?>  
chez moi : http://www.surleau.org/tmp/date.php
Cà marche !

pudaipiai

kyo54 a écrit a écrit :

Salut à tous!
 
J'utilise PHP et Mysql. Mon petit problème c'est que mysql stocke les dates au formant AAAA-MM-JJ et mes utilisateurs risquent de pas trop aimer et de préférer JJ-MM-AAAA.
Comment convertir cela en PHP, ou peut-être avec de javascript...  




 
pour éviter qu'ils se posent la question, tu devrais peut être créer 3 inputs select, un pour le jour, un pour le mois, un pour l'année, placés dans cet ordre.
 
ensuite tu envoie à la base $date="$année/$mois/$jour"
 
Quand tu récupère dans l'autre sens pour les selected, tu fais
$annee=substr($date,0,4);
$mois=substr($date,5,2);
$jour=substr($date,8,2);
 
Enfin, c'est ce que je fais, c'est plus simple pour l'utilisateur qui peut pas se tromper...

skylight echo (strftime( "%A %d %B %Y à %H:%M:%S",mktime($dateheure)));
 
 ne marche ^pas
skylight oui mais ca ne marche qu'avec time()
Mara's dad :lol: Pourquoi faire simple quand on peut faire compliqué ! :lol:
 
Version simple (2 lignes de PHP ) : http://www.surleau.com/temp/date.php
 
La doc : http://www.php.net/manual/en/function.strftime.php
skylight $jour = substr($dateheure,8,2)." ";
 $mois = substr($dateheure,5,2);
 
 if($mois ==1){$mois = "janvier ";}
 if($mois ==2){$mois = "février ";}
 if($mois ==3){$mois = "mars ";}
 if($mois ==4){$mois = "avril ";}
 if($mois ==5){$mois = "mai ";}
 if($mois ==6){$mois = "juin ";}
 if($mois ==7){$mois = "juillet ";}
 if($mois ==8){$mois = "août ";}
 if($mois ==9){$mois = "septembre ";}
 if($mois ==10){$mois = "octobre ";}
 if($mois ==11){$mois = "novembre ";}
if($mois ==12){$mois = "décembre ";}
 
 
 $annee = substr($dateheure,0,4). " à ";
 $heure = substr($dateheure,11,8);
 
$dateheure=$jour.$mois.$annee.$heure;
 
 
 
$d=$edttime;
 $edttime = substr($d,8,2)."-";
 $edttime = $edttime.substr($d,5,2)."-";
 $edttime = $edttime.substr($d,0,4). " à ";
 $edttime = $edttime.substr($d,11,8);
gwen2709 fais une fonction qui découpe ta chaine d'entrée avec un split et qui stocke les valeurs dans un tableau et recompose ta chaine dans l'autre sens pr etre compatible avec les fonctions prédéfinies...
comme ça, pas besoin de gener tes utilisateurs.
kyo54 ok merçi pour vos réponse je vais tenter tout ça. Je pense que je vais essayer par MySQL.
Mara's dad

skylight a écrit a écrit :

 
sauf qu'il est préférable de ne pas faire travailler mysql pour rien alors que php est + rapide pour ce genre de choses :)  




 
Si tu le dis !
J'avoue ne pas avoir testé toutes les fonctions de MySQL convertible en PHP et réciproquement pour savoir quelle technique me fera gagner 1ms par page !

Mara's dad Je ne dirais pas "pénibles" !
 
Mais c'est sûr qu'on n'a pas l'impression que les recherches sont allées très loin.
 
Celà dit, on s'est tous un jour cassé les dents sur des problèmes de dates !
 
En regardant la doc MySql sur la fonction DATE_FORMAT, j'ai remarqué à quel point elle est complète, cette fonction.
 
Avec DATE_FORMAT('1999-01-01', '%X %V') elle te sort :
1998 52
C'est à dire l'année et le numéro de la semaine de la date en question (La semaine commence un dimanche en MySql)
 
Peut-être un peu superflu comme fonction.
Si j'avais eu à calculer ce genre de chose, je ne sais pas si j'aurrai pensé à DATE_FORMAT !
skylight

Mara's dad a écrit a écrit :

Une fois de plus, la solution est dans la DOC !
http://www.mysql.com/doc/D/a/Date_ [...] tions.html
 
exemple :
SELECT DATE_FORMAT(ma_date,'%Y/%m/%d') as fr_date FROM ma_table  




sauf qu'il est préférable de ne pas faire travailler mysql pour rien alors que php est + rapide pour ce genre de choses :)

FLY LM

Mara's dad a écrit a écrit :

Une fois de plus, la solution est dans la DOC !
http://www.mysql.com/doc/D/a/Date_ [...] tions.html
 
exemple :
SELECT DATE_FORMAT(ma_date,'%Y/%m/%d') as fr_date FROM ma_table  




 
Ils sont pénibles à la fin :lol: :lol: :lol: :lol:

Mara's dad Une fois de plus, la solution est dans la DOC !
http://www.mysql.com/doc/D/a/Date_ [...] tions.html
 
exemple :
SELECT DATE_FORMAT(ma_date,'%Y/%m/%d') as fr_date FROM ma_table
M@nu la meilleure solution : le "timestamp" => fonctions time(), mkTime() etc...
mais si tu tiens à ta solution, utilise des regex pour transformer ça...
 
dans le genre :
$jjmmaaaa = ereg_replace('([0-9]{4})-([0-9]{2})-([0-9]{2})', '\\3-\\2-\\1', $aaaammjj);

 

[jfdsdjhfuetppo]--Message édité par M@nu--[/jfdsdjhfuetppo]

kyo54 Salut à tous!
 
J'utilise PHP et Mysql. Mon petit problème c'est que mysql stocke les dates au formant AAAA-MM-JJ et mes utilisateurs risquent de pas trop aimer et de préférer JJ-MM-AAAA.
Comment convertir cela en PHP, ou peut-être avec de javascript...

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)