MySQL : Format date

Résolu/Fermé
Neji469 Messages postés 13 Date d'inscription mardi 29 septembre 2009 Statut Membre Dernière intervention 26 janvier 2011 - 26 janv. 2011 à 11:04
Neji469 Messages postés 13 Date d'inscription mardi 29 septembre 2009 Statut Membre Dernière intervention 26 janvier 2011 - 26 janv. 2011 à 15:54
Bonjour,
Je développe une interface PHP/MySQL et j'ai un petit soucis. Dans mon formulaire, j'utilise un calendrier qui permet de saisir la date, il l'a met en format jj/mm/aaaa. Mais le soucis c'est que MySQL veut le format aaaa/mm/jj, donc ce qui fait que a l'exécution de ma requête, je me retrouve avec le champs date a 0000-00-00.
J'aimerais garder le format jj/mm/aaaa car c'est le plus courant et c'est plus simple pour l'utilisateur.
Il y a t-il un moyen de changer le format de la date dans MySQL ? Un fonction a rajouter dans mon INSERT ? Ou je suis obliger de passer par les timestamp ?

Autre petite question : j'ai des champs en int(10) pour les numéros de téléphone, mais dans l'enregistrement il enlève le 0 du début. Comment faire pour qu'il le conserve ?

Merci.

2 réponses

seebz Messages postés 38 Date d'inscription dimanche 15 avril 2007 Statut Membre Dernière intervention 6 mars 2011 28
26 janv. 2011 à 15:32
Tu peux te faire un 'tite fonction pour faciliter la conversion "date Fr" vers "date En", par exemple :
function dateFr2dateEn($str) {
	$str = explode('/', $str);
	return sprintf('%d-%02d-%02d', $str[2], $str[1], $str[0]);
}

dateFr2dateEn('26/01/2011'); // 2011-01-26


Pour rappel, tu pourra faire l'opération inverse comme cela :
date('d/m/Y', strtotime('2011-01-26')); // 26/01/2011



Pour ton problème de numéro de téléphone, tu peux contourner le problème en l'enregistrant dans un champ texte (varchar)
0
Neji469 Messages postés 13 Date d'inscription mardi 29 septembre 2009 Statut Membre Dernière intervention 26 janvier 2011
26 janv. 2011 à 15:54
J'ai résolu mon problème grâce à 2 lignes de PHP ...
Plutôt que de m'embêter à la changer en SQL, je l'ai changer en PHP, voici mes 2 lignes :

$date = explode('/',$date_naissance);
$date_naissance = $date[2].'-'.$date[1].'-'.$date[0];
0