[php] - Convertir mes chiffres en mois - 05 dans ma BDD doit s'afficher "Mai"

Voilà, toujours pour mon graphique dont vous avez tant entendu parler, je veux que mes intitulés de colonnes indiquent les mois concernés.

La date est stockée sous la forme AAAA-MM-JJ dans ma BDD

Quand je génère mes colonnes, j’ai un array utilisé qui fait correspondre les mois aux quantités à afficher.

$temp['Date'] = substr($tableau['DateDossier'],5,2); // je voulais faire le substr pour nettoyer la valeur de ma BDD directement dans ma requête SQL, mais ca ne fonctionne pas...
$data[$temp['Date']] += $tableau['nombreVehicules']; // ici j'associe mon numéro de mois nettoyé à mon nombre de véhicules, on incrémente les scores pour faire le total (plusieurs dossiers par mois)

Donc là ca fait un beau graph, MAIS ca affiche 05 06 07 en bas, et je veux mai juin juillet… comment faire ? Je suis pas du tout à l’aise avec les array :confused:

Merci par avance :slight_smile:

$mois = Array(’’,‘Janvier’,‘Février’,…); // note la première case vide, à cause du 0

echo $mois[$temp[‘Date’]];

je pense

En effet, je me suis rappellé d’un morceau de code qu’on m’avait donné à ce sujet, et je l’ai réutilisé ainsi, ca semble être le même principe que ce que tu me proposes.

$monthname = array('01'=>'Janvier','02'=>'Février');
$temp['Date'] = substr($tableau['DateDossier'],5,2):
$temp['Date'] = $monthname[$temp['Date']];
$data[$temp['Date']] += $tableau['nombreVehicules'];

EDIT : pour le SUBSTR dans ma requête SQL t’es inspiré ? ma requête c’est un bête SELECT en fait ^^

je sais qu’avec une fonction MySQL tu peux le faire très facilement, mais j’en ai jamais eu besoin.

regarde la doc

ben c’est la même : SUBSTR(‘colonne’,valeur de départ, nombre de caractères à garder).

SUBSTR(‘TEST’,2,2) => “ES”

Sauf que ca fonctionne pas chez moi Oo peut être une version différente de MYSQL ?

Ah vouais sinon j’ai un bug avec GD :confused: Août s’affiche avec un double accent aigue… zarb

http://dev.mysql.com/doc/mysql//fr/date-an…html#id3131834

Edit : ça donnerais, je pense

SQL
[color=blue;font-weight:bold]SELECT[/color] DATE_FORMAT(Date, '%c');

Ah vouais pas bête ca… en effet ca fonctionne :smiley: Merci :slight_smile:

faut pas mettre de ’ sur le nom de colonne en fait, spour ca que ca marchait pas :confused:

ben non, sinon il le prend comme une chaine de caractères plutot que comme le champ dans la base :wink:

Vouais, c’est ce que j’en avais déduit également. Mais bon ^^ enfin merci à toi ^^