Problème Date en Français avec PHP

Petit nouveau ! | 7 Messages

15 sept. 2011, 09:07

Bonjour,

J'appelle dans ma bdd une date (qui n'est pas celle du jour) avec ce code

Code : Tout sélectionner

<?php echo date("l d F Y", strtotime($data['date'])); ?>
.
L'affichage du jour de la semaine et du mois est en anglais alors que je le souhaiterai en français.

J'ai essayé différents codes trouvés par ci par là, mais sans obtenir le résultat escompté. Quelqu'un peut-il m'aiguiller ? Merci par avance.

ViPHP
xTG
ViPHP | 7331 Messages

15 sept. 2011, 09:13

Il faut changer la locale de ton serveur.
Par exemple si la locale fr_FR est installée tu peux l'appeler ainsi :
setlocale (LC_ALL, "fr_FR");

Petit nouveau ! | 7 Messages

15 sept. 2011, 09:37

Gloups !!! Je débute avec le php et ça pour le moment, c'est encore du chinois pour moi.

Et comment je fais pour changer la locale de mon serveur et où je dois insérer ce code

Code : Tout sélectionner

setlocale (LC_ALL, "fr_FR");
dans ma page ?

Code : Tout sélectionner

<?php /* Connexion à  la BDD */ require "connect.php"; mysql_connect($adresse, $nom, $motdepasse); mysql_select_db($database); $sql = "SELECT COUNT(id) as nbArt FROM agenda"; $req = mysql_query($sql) or die(mysql_error()); $data = mysql_fetch_assoc($req); $nbArt = $data['nbArt']; $perPage = 10; $nbPage = ceil($nbArt/$perPage); $cPage = 1; if(isset($_GET['p']) && $_GET['p']>0 && $_GET['p']<=$nbPage){ $cPage = $_GET['p']; } { $sql = "SELECT * FROM agenda ORDER BY date DESC LIMIT ".(($cPage-1)*$perPage).",$perPage"; $req = mysql_query($sql) or die(mysql_error()); while($data = mysql_fetch_assoc($req)){ ?> <ul class="contentlist"><h2><span class="surtitre"><?php echo $data['genre'];?></span></h2><span class="datetitre"> Le : <?php echo date("l d F Y", strtotime($data['date'])); ?>

ViPHP
xTG
ViPHP | 7331 Messages

15 sept. 2011, 09:44

J'imagine donc que tu n'as pas eu l'idée d'aller regarder la si belle documentation de PHP. :non:

Petit nouveau ! | 7 Messages

15 sept. 2011, 09:55

Si tu fais allusion à http://php.net/manual/fr/manual.php, et bien désolé de te décevoir, mais je suis allé le consulter. C'est peut-être évident pour toi, pas forcément pour un néophyte.

Petit nouveau ! | 7 Messages

15 sept. 2011, 11:32

J'ai essayé cela :

Code : Tout sélectionner

<?php setlocale (LC_TIME, 'fr_FR','fra'); echo date("l d F Y", strtotime($data['date'])); ?>
en m'inspirant de http://www.commentcamarche.net/forum/af ... n-francais
mais ça ne fonctionne pas (toujours en anglais)

En fait, je n'appelle pas la date du jour, mais une date indiquée dans ma base de donnée et c'est là ça pêche pour moi.

Petit nouveau ! | 7 Messages

15 sept. 2011, 14:27

Problème résolu avec

Code : Tout sélectionner

?php setlocale (LC_TIME, 'fr_FR'); echo $date = strftime("%A %d %B %Y",strtotime($data['date'])); ?>
.