Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 29/03/2011, 00h40   #1
Invité de passage
 
Homme
Inscription : mars 2011
Messages : 8
Détails du profil
Informations personnelles :
Sexe : Homme

Informations forums :
Inscription : mars 2011
Messages : 8
Points : 0
Points : 0
Par défaut Petit probleme de Mysql timestamp

Bonjour,

J'ai un petit soucis avec un affichage sur mon site.

J'utilise un script d'annonces classées qui étais a l'origine en anglais, la traduction a été effectuer mais j'ai un seul soucis.

Les dates s'affichent comme ceci : March 28, 2011

Je crois que ceci viens du fait que le script utilise un timestamp dans mon Mysql, mais je ne sait pas comment modifier l'affichage des dates.

Je ne sait pas si je doit fournir un code ne ne suit pas fort en Mysql...
zack1475 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/03/2011, 03h31   #2
Membre Expert
 
Inscription : septembre 2010
Messages : 1 242
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 1 242
Points : 1 564
Points : 1 564
Si ton champ mysql est un timestamp tu peux formater la date avec php avec la fonction strftime
Code :
1
2
3
4
5
6
7
function Date_fr($date)
{
   setlocale(LC_TIME, "french");
   return strftime('%A %d %B', $date);
}
 
echo Date_fr($timestamp);
Si ton champ mysql est au format DATE tu peux formater la date directement avec DATE_FORMAT de mysql

Code :
1
2
3
4
5
6
$setime = "SET lc_time_names = 'fr_FR'";
 
mysql_query($setime);
 
 
$query = "SELECT ... DATE_FORMAT(date_enregistrement,'%W %d %M') as datefr FROM ....";
__________________
- Réalisations
- Interface graphique : génération en javascript d'objets défilants, texte et/ou images, mode horizontal ou vertical.
ABCIWEB est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/03/2011, 06h27   #3
Invité de passage
 
Homme
Inscription : mars 2011
Messages : 8
Détails du profil
Informations personnelles :
Sexe : Homme

Informations forums :
Inscription : mars 2011
Messages : 8
Points : 0
Points : 0
Merci,

Voici comment j'ai résolu mon probleme :

J'ai remplacer <?php echo date( "F j, Y" , strtotime ( $ad["DateAdded"] ) ) ?>

par : <?php echo date( "j-m-Y" , strtotime ( $ad["DateAdded"] ) ) ?>

Merci encore
zack1475 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/03/2011, 19h51   #4
Membre Expert
 
Inscription : septembre 2010
Messages : 1 242
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 1 242
Points : 1 564
Points : 1 564
Oui tu as un peu botté en touche comme on dit, car l'équivalent en français de

"March 28, 2011" serait plutôt "28 mars 2011" que "28 03 2011"

Cela dit avec la fonction "date" tu ne pouvais pas faire mieux.

C'est pour cela que (comme indiqué en bas du manuel dans la fonction date), j'utilisais setlocale et strftime pour avoir "28 mars 2011" en php
__________________
- Réalisations
- Interface graphique : génération en javascript d'objets défilants, texte et/ou images, mode horizontal ou vertical.
ABCIWEB est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h02.


 
 
 
 
Partenaires

Hébergement Web