mktime() returnerer et UNIX timestamp, et tal bestående af 10 cifre.
Et SQL timestamp er en special datatype i formattet:
YYYY-MM-DD HH:MM:SS
Dvs. et SQL statement kan se ud som flg.:
- INSERT INTO table (my_time) VALUES('2012-05-23 12:00:00');
Skal du gemme et unix timestamp i databasen som typen timestamp, kan du bruge flg. eksempel:
- INSERT INTO table (my_time) VALUES(FROM_UNIXTIME('1337767200'));
Doc:
http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.htmlHvis det skal mixes med PHP kan du bruge flg. eksempel:
- mysqli_query('INSERT INTO table (my_time) VALUES(FROM_UNIXTIME(\''.mktime(12,0,0,5,23,2012).'\'));
eller
- mysqli_query('INSERT INTO table (my_time) VALUES(\''.date('Y-m-d H:i:s',mktime(12,0,0,5,23,2012)).'\');
Doc:
http://php.net/manual/en/function.mktime.phpDoc:
http://php.net/manual/en/function.date.phpEdit:
Hvis du som, du skriver i PM ikke har forstået brugen af timestamp - eller som det ligner mere hvordan man gemmer i det rigtige format, så vil jeg anbefale at du prøver dig lidt frem.
Alt hvad jeg har skrevet er eksempler, og på nær formattet for tidstempler, er der intet der er fast defineret. Så du kan frit kalde din kolonne fra "dato", "my_date", "created", eller noget fjerde.
Indlæg senest redigeret d. 23.05.2012 22:49 af Bruger #10216