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
*/
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
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
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
*/
Rejoignez-nous