[PHP - Mysql] Insérer date dans bdd
Résolu
digival
Messages postés
209
Statut
Membre
-
digival Messages postés 209 Statut Membre -
digival Messages postés 209 Statut Membre -
Bonjour,
Pourquoi ce script ne me retourne pas un truc comme "le Jeudi 26 Novembre 2009" ?!
$JourL = strftime("%A");
$Jour = strftime("%d");
$Mois = strftime("%B");
$Annee = strftime("%Y");
$date = "le " . $JourL . " " . $Jour . " " . $Mois . " " . $Annee;
setlocale ("LC_TIME", "fr");
J'utilise une requête avec, comme valeurs à insérer dans le champ de type Varchar sans autre spécificitées, la variable $date. Le résultat actuel est "le Thursday 26" ?!
Merci ;)
Pourquoi ce script ne me retourne pas un truc comme "le Jeudi 26 Novembre 2009" ?!
$JourL = strftime("%A");
$Jour = strftime("%d");
$Mois = strftime("%B");
$Annee = strftime("%Y");
$date = "le " . $JourL . " " . $Jour . " " . $Mois . " " . $Annee;
setlocale ("LC_TIME", "fr");
J'utilise une requête avec, comme valeurs à insérer dans le champ de type Varchar sans autre spécificitées, la variable $date. Le résultat actuel est "le Thursday 26" ?!
Merci ;)
Configuration: Windows Vista Firefox 3.5.5
6 réponses
-
Car %m te renvoi de 01 à 12 contrairement a %w qui renvoi de 00 a 06
Il faut donc decaler ton array de une case :$moisfr = array('VIDE','Janvier','Février','Mars','Avril','Mai','Juin','Juillet','Août','Septembre','Octobre','Novembre','Décembre');
EDIT :
Ou alors faire -1 dans ton calcul :$Mois = $moisfr[strftime("%m") - 1]; -
Bonjour,
As-tu essayé d'utiliser la fonction setlocale avant d'utiliser la fonction strftime ? -
oui, j'ai déjà essayé de faire cela, sans succès :
setlocale ("LC_TIME", "fr");
$JourL = strftime("%A");
$Jour = strftime("%d");
$Mois = strftime("%B");
$Annee = strftime("%Y");
$date = "le " . $JourL . " " . $Jour . " " . $Mois . " " . $Annee; -
Le problème vient du fait que ce soit en anglais ?
%A Nom complet du jour de la semaine De Sunday à Saturday
Essaye avec :
$jourdate = array('dimanche','lundi','mardi','mercredi','jeudi','vendredi','samedi'); $JourL = $jourdate[strftime("%w")];
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Ok merci ça marche pour les jours,
seulement j'ai fait la même chose (avec %m) pour les mois et ça me renvoie systématiquement la dernière valeur de l'array (décembre) ?!
Mon script :// INSERTION DATE // Conversion en fr $jourfr = array('dimanche','lundi','mardi','mercredi','jeudi','vendredi','samedi'); $moisfr = array('Janvier','Février','Mars','Avril','Mai','Juin','Juillet','Août','Septembre','Octobre','Novembre','Décembre'); // reconnaissance de l'heure $JourL = $jourfr[strftime("%w")]; $JourN = strftime("%d"); $Mois = $moisfr[strftime("%m")]; $Annee = strftime("%Y"); $date = "le " . $JourL . " " . $JourN . " " . $Mois . " " . $Annee; -