• italian
  • german
  • swedish
S'inscrire à la newsletter:
Rechercher dans le site:
*
Bienvenue, Invité. Veuillez vous connecter ou vous inscrire.
Avez-vous perdu votre courriel d'activation?
23 Novembre 2008 à 12:52:31

Connexion avec identifiant, mot de passe et durée de la session



 
« sujet précédent | | sujet suivant »
Pages: [1] Imprimer
Auteur Fil de discussion: PHP - passer le fomart date dd-mm-yyyy en yyyy-mm-dd  (Lu 1541 fois)
JeuneSerpent
Apprenti
**

Points gagnés: 1
Messages: 71



Voir le profil
« le: 07 Février 2008 à 17:47:45 »

Bonjour à tous,

Je développe actuellement la partie admin de mon site dans lequel je demande une date d'inscription sous le format YYYY-MM-DD mais bon vu que nous sommes en France j'envisage de demander aux personnes de l'entrer sous le format DD-MM-YYYY pour éviter les erreurs. Est (il possible de récupère cette dans qui est insérer dans un champ puis de la transformer dans le format adéquat ? tout cela en php Very Happy

merci de vos réponses

@++
Journalisée

No time to die !!! Wink
damien
Rédacteur Admin
Intarrisable
*****

Points gagnés: 5
Messages: 2380


Voir le profil WWW
« Répondre #1 le: 07 Février 2008 à 21:48:38 »

Bonsoir,

Oui bien sûr que c'est possible, étant français pour notre part et le format mysql voulant absolument de la date au format anglais, c'est même le genre de fonction qu'on utilise très régulièrement quand on code en php/mysql.

Voilà comment tu peux faire :

Code:
// pour mettre une date format mysql en fr   
function dateusenfr($dateus)
{
if (!$dateus) return "";
list($annee, $mois, $jour) = split("-", $dateus);
$datefr = $jour."-".$mois."-".$annee;
return $datefr;
}

Et son inverse :

Code:
// pour mettre une date format fr en us   
function datefrenus($datefr)
{
if (!$datefr) return "";
list($jour, $mois, $annee) = split("-", $datefr);
$dateus = $annee."-".$mois."-".$jour;
return $dateus;
}


Note aussi que tu peux resortir directement la date au format FR dans une requête mysql, c'est même un gain de ressources serveur par rapport à la conversion précédente en PHP.
Pour ça voir les fonctions de dates mysql : http://dev.mysql.com/doc/refman/5.0/fr/date-and-time-functions.html
Journalisée

Cordialement,
Damien

Agence web - Annuaire Blog
JeuneSerpent
Apprenti
**

Points gagnés: 1
Messages: 71



Voir le profil
« Répondre #2 le: 08 Février 2008 à 10:48:45 »

Bonjour Damien je te remercie pour cette fonction qui marche impec !!!  Very Happy

@++
Journalisée

No time to die !!! Wink
ju3979
Apprenti
**

Points gagnés: 0
Messages: 55


Voir le profil
« Répondre #3 le: 08 Février 2008 à 12:29:19 »

Bonjour

Comment je dois utiliser cette fonction de convertion ?

J'ai un formulaire avec une date en fr ($date) , il faut que je la convertise pour qu'elle soit interpréter correctement dans la base mysql

Dans ma table j'ai créé un champs qui se nomme date avec comme type date

J'ai mis la fonction telle quel dans mon fichier de traitement qui envoie mes données vers ma base
Mais ça ne change rien, ma date est toujours mal interprétée

Merci pour votre aide
Journalisée
damien
Rédacteur Admin
Intarrisable
*****

Points gagnés: 5
Messages: 2380


Voir le profil WWW
« Répondre #4 le: 08 Février 2008 à 13:28:28 »

ju3979,

J'ai donné juste la fonction, mais il faut aussi l'appeler dans votre code pour faire la conversion.

Si vous avez une date en fr appelée $datefr, dans votre code il faut faire :
Code:
$datemysql = datefrenus($datefr);

Et insérer le résultat $datemysql dans votre base de données, qui sera une date au format mysql (YYYY-MM-JJ).
Journalisée

Cordialement,
Damien

Agence web - Annuaire Blog
JeuneSerpent
Apprenti
**

Points gagnés: 1
Messages: 71



Voir le profil
« Répondre #5 le: 10 Mars 2008 à 13:27:26 »

Re bonjour,

J'ai de nouveau un problème concernant les date sous php. Je vous explique je dois effectuer un rapport sur les vente qui ce sont dérouler le mois dernier et le soucis c'est que j'arrive a récupérer les premier jour du mois précédent mais j'arrive pas aquérir l'interval entre le premier jour du mois et le dernier jours.

Code:
$le_mois_dernier = mktime(0, 0, 0, date("m")-1, date("d")- (date("d")-1), date("Y"));
$date = mysql_query("SELECT FROM_UNIXTIME(" . date($le_mois_dernier) . ") as time");
$d = mysql_fetch_array($date, MYSQL_ASSOC);

Merci

@++
Journalisée

No time to die !!! Wink
damien
Rédacteur Admin
Intarrisable
*****

Points gagnés: 5
Messages: 2380


Voir le profil WWW
« Répondre #6 le: 10 Mars 2008 à 16:25:36 »

Bonjour,

Une piste :
Pourquoi ne pas carrément sélectionner le mois et l'année qui vous intéresse en SQL, en mettant une clause WHERE?

Par exemple :
Code:
SELECT xxxx FROM matable WHERE MONTH(date) = '3' AND YEAR(date) = '2008'

Cela devrait vous permettre de sélectionner les informations que vous voulez pour un mois donné, c'est bien ça qu'il te faut ?
Journalisée

Cordialement,
Damien

Agence web - Annuaire Blog
JeuneSerpent
Apprenti
**

Points gagnés: 1
Messages: 71



Voir le profil
« Répondre #7 le: 10 Mars 2008 à 17:17:01 »

Re,

Bon le soucis c'est que ce que je veux récupéré toutes les dates entre le premier jour du moi précédent et le dernier jour du mois précédent ( en gros au jours d'aujourd'hui si je prend comme cas une gestion de commandes je devrais pouvoir retrouver les commandes passées le mois d'avant).

Et je veux récupéré les dates via le système et non pas à partir dans la table commande ( vu que selon la date a laquelle je ferais ma requête les paramètres des dates changeront)


Je sais pas si je suis assez clair :s


(ps : ça serait super cool de mettre une horloge dynamique sur 6ma parce que des fois je perd la notion du temps en me fiant a l'heure du site lol enfin c'est juste une remarque)
« Dernière édition: 10 Mars 2008 à 17:25:31 par JeuneSerpent » Journalisée

No time to die !!! Wink
Pages: [1] Imprimer 
« sujet précédent | | sujet suivant »
Aller à:  

Powered by SMF 1.1.4 | SMF © 2006, Simple Machines LLC