Page 1 sur 1

php, format date mysql

Posté : 07 juin 2012, 14:27
par damien_55
Bonjour a tous,

Dans un fichier que j'importe dans ma base sql, j'ai un format de date qui ressemble à ça:

Thu, 07 Jun 2012 01:05:55 +0100

Or dans ma base mon format de base est current_timestamp.

Comment puis je faire pour convertir la date dans mon fichier pour avoir son current timestamp dans ma base ?

Merci de votre aide

Re: php, format date mysql

Posté : 07 juin 2012, 14:36
par xTG
Tu peux passer cette chaine dans strtotime() pour obtenir un timestamp.

Re: php, format date mysql

Posté : 07 juin 2012, 16:18
par damien_55
J'ai passé cette chaine comme suit:

mysql_query("INSERT INTO `xxxxxxx` (`id`,`user_id`,`category_id`,`action_id`,`ad_title`,`ad_content`,`date`) VALUES
(NULL,
130436691,
23,
1,
'".($item->title)."',
'".mysql_real_escape_string($item->description)."',
'".strtotime($item->pubDate)."'
)") or die("Erreur MySQL : ".mysql_error());
}
}

Dans ma base il me donne, une date comme suit: 0000-00-00 00:00:00 ???

Re: php, format date mysql

Posté : 07 juin 2012, 16:21
par xTG
Essaies ainsi :
date('Y-m-d H:i:s', strtotime($item->pubDate))

Re: php, format date mysql

Posté : 07 juin 2012, 16:37
par damien_55
J'ai essayé comme suit:

Code : Tout sélectionner

mysql_query("xxxxxxx` (`id`,`user_id`,`category_id`,`action_id`,`ad_title`,`ad_content`,`date`) VALUES (NULL, 130436691, 23, 1, '".($item->title)."', '".mysql_real_escape_string($item->description)."', date('Y-m-d H:i:s', strtotime($item->pubDate)) )") or die("Erreur MySQL : ".mysql_error()); } }
il me retourne une erreur: Erreur MySQL : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' strtotime(Thu, 07 Jun 2012 12:58:01 +0100)) )'

Re: php, format date mysql

Posté : 07 juin 2012, 17:07
par damien_55
J'ai vu ce format correspond aux format:
date rss
RFC 2822 formatted date. Equivalent to D, d M Y H:i:s O.

Mais comment le passer au format curent timestamp?

Re: php, format date mysql

Posté : 07 juin 2012, 17:28
par xTG
Un indice concernant ton erreur :
mysql_query("xxxxxxx` (`id`,`user_id`,`category_id`,`action_id`,`ad_title`,`ad_content`,`date`)   VALUES
     (NULL,
     130436691,
     23,
     1,
     '".($item->title)."',
     '".mysql_real_escape_string($item->description)."',
     date('Y-m-d H:i:s', strtotime($item->pubDate))
     )") or die("Erreur MySQL : ".mysql_error());
   }
 }
La coloration parle d'elle même. :)
A noter aussi qu'une date doit être en guillemet simple.

Re: php, format date mysql

Posté : 07 juin 2012, 18:58
par damien_55
:? , je ne trouve pas cette erreur de code :?

Re: php, format date mysql

Posté : 07 juin 2012, 20:51
par xTG
mysql_query("xxxxxxx` (`id`,`user_id`,`category_id`,`action_id`,`ad_title`,`ad_content`,`date`)   VALUES
     (NULL,
     130436691,
     23,
     1,
     '".($item->title)."',
     '".mysql_real_escape_string($item->description)."',
     '".date('Y-m-d H:i:s', strtotime($item->pubDate))."'
     )") or die("Erreur MySQL : ".mysql_error());
   }
 }

Re: php, format date mysql

Posté : 08 juin 2012, 11:18
par damien_55
ça marche :D

Xtg, le maitre du php :D Merci beaucoup.