Transformer date [Résolu]

Signaler
Messages postés
30
Date d'inscription
mardi 11 décembre 2007
Statut
Membre
Dernière intervention
19 janvier 2009
-
Messages postés
289
Date d'inscription
jeudi 5 octobre 2006
Statut
Membre
Dernière intervention
11 juin 2010
-
Bonjour à tous,

Voila j'ai une base de données, avec une table agenda, dedans j'ai un champs au format "date", donc les dates sont entrées sous la forme aaaa-mm-jj...

Dans ma page php, j'affiche ttes les données de l'agenda, j'arrive a transformer en format francais a l'aide d'une des contributions, mais maintenant j'aimerai qu'il soit marqué par exemple, 23 février 2008 au lieu de 23-02-2008...

En parcourant ttes les contributions, j'ai pu voir comment on fesai avec le date() et donc l'heure server, mais pas comment on fait avec une date se trouvant dans la base de donnée...

Ca serai très sympa de me donner quelques tuyaux...

Merci d'avance!
Nicolas.

ps: voila mon code pour afficher les dates...
function afficheAgenda(){
        $sql="select * from agendas order by date";
        $rs=mysql_query($sql) or die ("Erreur de requête : $sql");
        $date_serveur=date('Y-m-d');
        while($row=mysql_fetch_array($rs))
            {
            extract ($row);
            if ($date_serveur <= $date) {
                
                
                print "<tr>";
                print "<td>" . eregi_replace("([0-9].*)-([0-9].*)-([0-9].*)" ,"\\3-\\2",$date) . " $heure</td>";
                print "<td>$nom</td>";
                print "<td>$lieu</td>";
                print "</tr>";
            }
        }
}

9 réponses

Messages postés
289
Date d'inscription
jeudi 5 octobre 2006
Statut
Membre
Dernière intervention
11 juin 2010
3
ok donc ton probleme est resolu ou pas?si oui pense au reponse acceptées


Personne ne peut se permettre de juger l'autre....
Messages postés
289
Date d'inscription
jeudi 5 octobre 2006
Statut
Membre
Dernière intervention
11 juin 2010
3
Bonsoir ,
au debut de ton if dans le while tu pourrais mettre :
$jour = substr($date,0,2);
$moi = substr($date,3,2);
$annee = substr($date,7,4);
switch ($moi){
    case 01 :
    $moi = "Janvier";
    breack;
    case 02 :
    $moi = "Février";
    breack;
.
.
.
    case 12 :
    $moi = "Décembre";
    breack;
}
ensuite tu a juste a affiché ta date comme tu le souhaite :
echo $jour." ".$moi." ".$annee;
j'espere t'avoir aider


Personne ne peut se permettre de juger l'autre....
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
22
Hello,

tu peux aussi voir setlocale() sur php.net et trouve la bon paramètrage en fonction de ton serveur (si ton serveur l'accepte).
Puis tu transformes ta date en timestamp (strtotime()), et enfin, tu relis la fonction date() parce qu'elle prend un second argument qui est un timestamp justement...et tu cherchers dans les options du 1er argument pour afficher une date sous la forme dd moi_en_lettres_ année.
Messages postés
30
Date d'inscription
mardi 11 décembre 2007
Statut
Membre
Dernière intervention
19 janvier 2009

merci beaucoup pour vos réponses, je m'étais déjà penché quelques temps sur l'option proposée par malalam, sans succès, je vais donc essayer celle de sebastien...
Messages postés
30
Date d'inscription
mardi 11 décembre 2007
Statut
Membre
Dernière intervention
19 janvier 2009

Après avoir essayé la methode  de sebastien,  ca marche  +- bien...

En fait,  pour une raison qui me dépasse totalement, ca marche pour tous les mois, sauf Août et septembre, pourquoi, tel est la question...
voila mon code: (il est bon de savoir que les dates toutes ont été entrée de la même manière dans la base de donnée, c'est à dire sous le type "date" et avec l'interface calendrier, donc aucune entrée à la main de la date en entier...)

$jour = substr($date,8,2);
            $mois = substr($date,5,2);
            $annee = substr($date,0,4);
            switch ($mois){
                case 01;
                    $mois = "Janvier";
                    break;
                case 02;
                    $mois = "F&eacute;vrier";
                    break;
                case 03;
                    $mois = "Mars";
                    break;
                case 04;
                    $mois = "Avril";
                    break;
                case 05;
                    $mois = "Mai";
                    break;
                case 06;
                    $mois = "Juin";
                    break;
                case 07;
                    $mois = "Juillet";
                    break;
                case 08;
                    $mois = "Ao&ucirc;t";
                    break;
                case 09;
                    $mois = "Septembre";
                    break;
                case 10;
                    $mois = "Octobre";
                    break;
                case 11;
                    $mois = "Novembre";
                    break;
                case 12;
                    $mois = "D&eacute;cembre";
                    break;
            }
            if ($date_serveur <= $date) {
                print "<tr>";
                print "<td align='left' valign='top'>" . $jour . " " . $mois . " " . $heure . "</td>";
                print "<td align='left' valign='top'>$nom</td>";
                print "<td align='left' valign='top'>$lieu</td>";
                print "</tr>";
            }
Messages postés
289
Date d'inscription
jeudi 5 octobre 2006
Statut
Membre
Dernière intervention
11 juin 2010
3
deja je serais toi je mettrais : et non ; apres les case mais je ne pense pas que ton erreur vienne de la j'y reflechi


Personne ne peut se permettre de juger l'autre....
Messages postés
30
Date d'inscription
mardi 11 décembre 2007
Statut
Membre
Dernière intervention
19 janvier 2009

juste!!! ca fesai lgtps que je n'avai plus utilisé cette methode, j'aurai du me rafraichir la mémoire...

Voila je viens de modifier les ; en : pour les case, mais j'ai toujours le meme problème... Je me demande bien pourquoi ca fonctionne avec tous les mois saud aout et septembre, trop bizarre...
Messages postés
289
Date d'inscription
jeudi 5 octobre 2006
Statut
Membre
Dernière intervention
11 juin 2010
3
tu as quoi qui s'affiche lorsque c'est le moi aout ou septembre stp?


Personne ne peut se permettre de juger l'autre....
Messages postés
30
Date d'inscription
mardi 11 décembre 2007
Statut
Membre
Dernière intervention
19 janvier 2009

j'avais 08 et 09, le mois en chiffre quoi... Je viens de résoudre le problème. Pour ses 2 mois la, je dois mettre case 8 et case 9 au lieu de 08 et 09...Pourquoi, les mystère de l'informatique...