Probleme de date

Résolu
davidcian Messages postés 186 Date d'inscription vendredi 18 novembre 2005 Statut Membre Dernière intervention 19 décembre 2009 - 7 mars 2008 à 13:49
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 - 7 mars 2008 à 15:14
Bonjour,

Bon la je tourne en rond depuis un moment...

Je vous explique:

2 variables (string):
$date_deb $_POST['date1'];> au format 12/03/2008 $date_fin $_POST['date2'];> au format 12/03/2008

je voudrais enregistrer ces valeurs dans ma bases de donnée a l'aide de cette requette:

$requete="INSERT INTO site_resa
        (date1,date2)
         VALUES('".$date_deb."',
                         '".$date_fin."')";

$verif = mysql_query($requete)or die (mysql_error());

Les champs date1 et date2 sont au format "DATE" dans ma base de donnée

Lorsque je valide mon formulaire l'enregistrement s'ajoute bien, mais il enregistre ca "0000-00-00
"....

Ca fait un moment que je tourne en rond...

Az

4 réponses

coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
7 mars 2008 à 14:11
salut

il faut mettre tes dates au format yyyy-mm-dd

function date_fr_to_mysql($str)
{
    return preg_replace(
        '/([0-9]{2}).?([0-9]{2}).?([0-9]{4})/',
        '\\3-\\2-\\1',
        $str);
}

function date_mysql_to_fr($str)
{
    return preg_replace(
        '/([0-9]{4}).?([0-9]{2}).?([0-9]{2})/',
        '\\3-\\2-\\1',
        $str);
}

/**
* @author coucou747 <coucou747@hotmail.com>
* @see irc://cominweb.uni-irc.net/#programmation
*/
3
davidcian Messages postés 186 Date d'inscription vendredi 18 novembre 2005 Statut Membre Dernière intervention 19 décembre 2009 1
7 mars 2008 à 14:22
Je vais essaier ta fonction de suite pour ma part j'en ai trouvé une autre un peu plus tordu, mais qui marche

$chaine = $date_deb;
$date_deb_exp = explode ("/", $chaine);
$jour1 = $date_deb_exp[0];
$mois1 = $date_deb_exp[1];
$annee1 = $date_deb_exp[2];

$date1=$annee1.$mois1.$jour1;

$chaine1 = $date_fin;
$date_fin_exp = explode ("/", $chaine1);
$jour2 = $date_fin_exp[0];
$mois2 = $date_fin_exp[1];
$annee2 = $date_fin_exp[2];

$date2=$annee1.$mois1.$jour1;

J'essais la tienne de suite

Az
0
davidcian Messages postés 186 Date d'inscription vendredi 18 novembre 2005 Statut Membre Dernière intervention 19 décembre 2009 1
7 mars 2008 à 14:30
Adjugé vendu!!

Les 2 méthodes fonctionnent, mais la tienne étant beaucoup plus jolis que la mienne je prends!!

Merci beaucoup de ton aide!

Az
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
7 mars 2008 à 15:14
de rien :)
/**
* @author coucou747 <coucou747@hotmail.com>
* @see irc://cominweb.uni-irc.net/#programmation
*/
0
Rejoignez-nous