problème date, affichage juste mois, année

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : problème date, affichage juste mois, année

Re: problème date, affichage juste mois, année

par AurelienC » 20 mars 2011, 22:19

Merci beaucoup ça marche parfaitement !

Re: problème date, affichage juste mois, année

par AB » 20 mars 2011, 20:11

Utilise alors plutôt strftime pour avoir une date en français
$date_mysql = '2008-08-20 04:13:41';

function Date_fr($da)
{
   setlocale(LC_TIME, "french");
   $strtime = strtotime($da);
   
   $jour = strftime('%A', $strtime);
   $num_jour = strftime('%d', $strtime);
   $mois = strftime('%B', $strtime);
   $an = strftime('%Y', $strtime);
   $heure = strftime('%H', $strtime);
   $min = strftime('%M', $strtime);
      
  return array('j'=>$jour,'num'=>$num_jour,'mois'=>$mois,'an'=>$an,'h'=>$heure,'m'=>$min);
}

echo '<br />';
print_r(Date_fr($date_mysql));
echo '<br />';
Suivant les cas tu pourras avoir à faire un utf8_encode sur le mois

Re: problème date, affichage juste mois, année

par AurelienC » 20 mars 2011, 19:40

Merci pour cette information.

Mon but est de récupérer une date avec une variable par "information" (jour, mois, année, heures et minutes) pour ensuite les faire être pré-sélectionnées dans une liste déroulante (une pour le jour, une pour le mois, etc.)

Re: problème date, affichage juste mois, année

par AB » 20 mars 2011, 19:37

Pour info tu peux récupérer la date formatée directement dans ta requête
mysql_set_charset('utf8');

$setime = "SET lc_time_names = 'fr_FR'";

mysql_query($setime) or die(mysql_error());

$query = "SELECT ... DATE_FORMAT(champ_date,'%W %d %M à %H:%i') as datefr FROM matable WHERE ...";

Re: problème date, affichage juste mois, année

par AurelienC » 20 mars 2011, 14:55

Effectivement j'avais oublié une ligne, j'utilisais avant "strtotime()", là j'ai essayé avec mktime() et ça me donne ça :

2011-10-09 19:30:00, 11, 06, 2011, 19, 52

11=jour
06=mois
2011=année
19=heures
52=minutes

Donc il y a toujours un problème... :|

Re: problème date, affichage juste mois, année

par AurelienC » 20 mars 2011, 14:46

Ailleurs la date s'affiche bien comme pour ma variable $datefr

Re: problème date, affichage juste mois, année

par Ryle » 20 mars 2011, 14:08

Tu peux par exemple utiliser la fonction mktime() pour générer un timestamp à partir des infos que tu as récupéré en base...

Mais effectivement, c'est assez étrange que cela fonctionne ailleurs ... lorsque tu affiches ta variable $datefr (ou son équivalent) dans l'un de script qui fonctionne, tu obtiens un nombre ou une date formatée comme celle-ci ?

Re: problème date, affichage juste mois, année

par AurelienC » 20 mars 2011, 13:59

Comment faire ça ?

Ce qui m'intrigue c'est que dans d'autres pages je fais exactement pareil et ça marche sans problème...

Bizarre le php ! :D

Re: problème date, affichage juste mois, année

par Ryle » 20 mars 2011, 13:56

Ca ne pose pas de soucis, il faut juste que tu convertisses la valeur que tu récupères de ta bdd en timestamp pour pouvoir l'utiliser dans ta fonction date()

Re: problème date, affichage juste mois, année

par AurelienC » 20 mars 2011, 13:48

Je stocke ma date dans un datetime

Re: problème date, affichage juste mois, année

par Ryle » 20 mars 2011, 13:31

Euh... si "echo $datefr" t'affiche "2011-10-09 19:30:00", c'est que ce n'est pas un timestamp... et du coup tu ne peux pas le passer comme 2nd argument à la fonction date :)

Re: problème date, affichage juste mois, année

par AurelienC » 20 mars 2011, 13:25

Bonjour,

Merci pour cette réponse !

Il n'y a que sur cette page que la décomposition d'une date pose problème... C'est pour cela que je ne comprends pas !


Sur les autres pas je décompose de cette manière "Rendez vous le mercredi 18 mai 2011 a 17:00 ! " et ça marche sans soucis...

Re: problème date, affichage juste mois, année

par xTG » 20 mars 2011, 00:30

As-tu activé toutes les erreurs PHP ?
En cas de problème de fuseau horaire cette fonction génère un message E_NOTICE et E_STRICT ou E_WARNING.

Ton paramètre default_timezone du php.ini serait-il non configuré ?

problème date, affichage juste mois, année

par AurelienC » 19 mars 2011, 21:21

Bonjour à tous,

Je bloque sur ce petit problème :

Code : Tout sélectionner

$jour=date("d", $datefr); $mois=date("m", $datefr); $annee=date("Y", $datefr); $heures=date("G", $datefr); $minutes=date("i", $datefr); echo "$datefr, $jour, $mois, $annee, $heures, $minutes";
Et ça m'affiche ceci :
2011-10-09 19:30:00, 01, 01, 1970, 1, 33

Pouvez-vous m'éclairer ?

merci par avance,
Aurélien