cs_malaysia
Messages postés50Date d'inscriptionvendredi 29 octobre 2004StatutMembreDernière intervention12 juillet 2005
-
11 juil. 2005 à 22:04
cs_malaysia
Messages postés50Date d'inscriptionvendredi 29 octobre 2004StatutMembreDernière intervention12 juillet 2005
-
12 juil. 2005 à 14:40
Bonsoir,
J'ai passé l'après-midi sur un truc tout bête je suppose mais que je n'arrive pas à résoudre. Je récupère une date dans ma base de données SQL. Elle est au format américain, je voudrais l'afficher au format français. J'ai trouvé plusieurs propositions sur ce site et ailleurs mais surtout pour la date du jour. Les autres ne fonctionnement pas non plus ??? Celle-là par exemple (qui fait l'inverse) :
function dateFRenMySQL ($jour) //$jour au format JJ-MM-AAAA
{
return substr($jour,6,4).substr($jour,4,2).substr($jour,0,2);
} //renvoie la date au format AAAA-MM-JJ
Mais je n'arrive pas à la convertir même en allant voir chez Nexen. J'en ai vu une autre avec explode mais pas de bon résultat non plus. Merci si vous pouvez m'aider.
cs_sjon
Messages postés861Date d'inscriptionmardi 26 mars 2002StatutMembreDernière intervention29 novembre 20061 12 juil. 2005 à 03:06
Sael og blesud
*§:\|!£¤ Faut vraiment que je modofie ma signature ... ;-) Je me comprend ...
Bon alors si je comprend bien ce que vous voulez faire :
Vous sortez de votre base de données une date au format Anglo-saxon
soit yyyy/mm/dd ( excusez moi aaaa-mm-jj ) et vous voulez la convertir
au format français soit jj-mm-aaaa ? Vous avez trouvé une function
faisant l'inverse ? : soit :
function dateFRenMySQL ($jour) //$jour au format JJ-MM-AAAA
cs_hooss
Messages postés4Date d'inscriptiondimanche 3 avril 2005StatutMembreDernière intervention25 juillet 2005 12 juil. 2005 à 10:37
salut !
moi j eregistre a date dans la base sql sous forme unix (timestamp) avec la fonction time() ( ou équivalent comme strtotime) puis pour lire la date j'utilise ces fonctions
}
/**********************************************
* Fonction : date_unix_translate($day)
* Description : Traduit la date ecrite en unix en date sous format local:
jour(en langue locale)_JJ-Mois(en langue locale)-YYYY HH:MM:SS
*********************************************/
function date_unix_translate($date)
{
$jour=date("D",$date);
$jour_local=translate_day($jour);//fonction qui traduit le jours en francais
$jour_num=date(" d ",$date);
$moie=date("M",$date);
$month=translate_month($moie);//fonction qui traduit le mois en francais
$date_suite=date(" Y H<\sup>\h</\sup>i:s ",$date);
$finale=$jour_local.$jour_num.$month.$date_suite;
return $finale;
}
voir tout le code source dans mes sources
cs_malaysia
Messages postés50Date d'inscriptionvendredi 29 octobre 2004StatutMembreDernière intervention12 juillet 2005 12 juil. 2005 à 14:40
Merci mais il s'agit juste d'afficher la date au format français, pas de l'écrire dans la base.
function dateEN2FR($jour) //$jour au format aaaa-mm-jj
{
return substr($jour,8,2) . substr($jour,4,4) . substr($jour,0,4);
} //renvoie la date au format jj-mm-aaaa
echo dateEN2FR ('2005-07-12');
Pourquoi '2005-07-12', plutôt $jour non ? Enfin je n'arrive pas à l'intégrer, voici les lignes concernées :
//on affiche le nombre de résultats trouvés
print 'Pour le mot '.$ta.' il y a '.$res.' résultat(s)'; (j'ai racourcis la ligne)
//on ressort les infos par ordre alphabétique
while( $sortie = mysql_fetch_array($req))
{
// remplace le mot cherché par le même mot en majuscules et surligné
$var = str_replace (array($tb,$tc,$td), ''.$tb.'', $sortie['description']);
// on affiche les 15 premiers documents trouvés avec leur titre et leur contenu triés par titre
echo '
';
echo $sortie['url'].'
';
echo $var;
}//fin de boucle
//on ferme la connexion
mysql_close();
}
Où que je mette la fonction soit j'ai un message d'erreur pour dateEN2FR qui ne peut être déclarée soit le résultat de la recherche indique bien "2 éléments trouvés" mais ne les affiche pas. Problème d'ordre de déroulement je suppose ?
Ca m'étonne quand même que cette fonction basique n'ai fait l'objet d'aucun script ?