Format date -> accents

Par Brandon93, il y a 11 ans


Bonjour,

J'ai constaté que les accents ne passaient pas lorsque je convertis les dates en francais.
C'est uniquement le seul problème que j'ai concernant les accents en PHP, j'ai donc cherché mon problème mais je n'ai pas trouvé

<?php $bdd = new PDO ('mysql:host=localhost;dbname=insectelevage2', 'root', ''); $bdd->query("SET NAMES 'latin1', lc_time_names = 'fr_FR'"); $recupderniermessage = $bdd->prepare("SELECT DATE_FORMAT(datemessage, '%d %b %Y à %Hh%i') AS datemessage FROM forummessages ORDER BY id DESC LIMIT 1"); $recupderniermessage->execute(); $resultat = $recupderniermessage->fetch(); echo 'Le '.$resultat['datemessage']; $recupderniermessage->closeCursor(); ?>

février affichera f�vrier

Quelqu'un aurait une petite idée ? Merci d'avance =)

8 réponses

Alexandre #lbac, il y a 11 ans

Parce qu'il faut que tu encode le tout en utf8 et pas en "latin1"

Brandon93, il y a 11 ans

Simple, clair, précis ! Merci =)

Brandon93, il y a 11 ans

Ah, les dates vont à merveille maintenant c'est le texte qui fait des siennes (les accents toujours).
Le meta charset est bien en utf-8
Mon éditeur est en utf8-w/o BOM
Phpmyadmin : utf8mb4_general_ci

Alexandre #lbac, il y a 11 ans

utf8_general_ci serait plus approprié ;)

Il faut que tu convertisses toute tes tables (et ta base de donnée du coup) pour que cela fonctionne correctement ;)

Brandon93, il y a 11 ans

Merci pour ces astuces.
C'est vraiment une plaie ces histoires d'accents ^^

Alexandre #lbac, il y a 11 ans

Quand tu commences un projet, quand tu crées tes tables toujours vérifies que ta base de donnée est encodée en utf8_general_ci, et que ton éditeur est également au format UTF8 ;)

Ca t'évitera les soucis d'accent ;)

Brandon93, il y a 11 ans

J'en avais jamais connu des soucis d'accents, c'était la première fois ^^
Au moins pour la prochaine fois, je saurai ;-)

JeremDevWeb, il y a 11 ans

au pire htmlspecialchars c'est utile ;) bonne journée!