---
title: "Spara och läsa timestamps"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/15732-spara-och-läsa-timestamps"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Alpha II"
published: "2001-06-04T11:45:00.000Z"
updated: "2001-06-07T21:36:00.000Z"
replies: 11
views: 248
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/15732-spara-och-läsa-timestamps"
---

# Spara och läsa timestamps

## #1 — Alpha II, 2001-06-04T11:45Z

Hej!
Hur sparar man ett timestamp i en databas och hur hur formaterar man det på sidan? När jag försöker att formatera ett timestamp ("m/d/Y") så blir det 01/19/2038. Hur ska jag göra för att spara en tid och sedan kunna läsa den?

Permalänk: https://www.webforum.nu/p/15732

## #2 — spango, 2001-06-04T13:24Z

MySQL? Kolla in funktionen DATE_FORMAT (eller var det FORMAT_DATE?) i din dokumentation.

Permalänk: https://www.webforum.nu/p/319116

## #3 — BABBA, 2001-06-04T14:38Z

Jag tycker det är lättare att spara in den med php's time() function sedan använda functionen strftime() när man skall omformatera..

Permalänk: https://www.webforum.nu/p/319117

## #4 — Alpha II, 2001-06-04T14:42Z

BABBA, det är så jag har gjort men va fan(!) det funkar ju inte!

Permalänk: https://www.webforum.nu/p/319118

## #5 — stevenet, 2001-06-04T14:47Z

Lägg till:

```
<?
$timestamp=time();
mysql_query("INSERT INTO datumtest (id, datum) VALUES ('1', '$timestamp')");
?>
```

Formatera:

```
<?
$hamta = mysql_fetch_array(mysql_query("select * from datumtest where id='1'"));
$datum=date("m/d/Y",$hamta[1]);
echo $datum;
?>
```

\------------------
[SteveNet](http://www.webmarkit.net/stevenet)

Permalänk: https://www.webforum.nu/p/319119

## #6 — Alpha II, 2001-06-04T16:37Z

Det fungerar att formatera datumet i queryn men inte med date. :(
Varför är timestampen i php i ett annat format än i mysql?

Varför fungerar inte det här?

```
$lmodified = filemtime("filnamn.txt");
if($lmodified > $variabel_från_databas["LastModified"]) {
mysql_query("UPDATE FileList SET LastModified='$lmodified' WHERE ID='1'");
```

Permalänk: https://www.webforum.nu/p/319120

## #7 — Lfe, 2001-06-05T16:58Z

om jag vill timestampa någonting brukar jag oftast använda date("U") som returnerar linuxtime

har även gjort ett php & mysql login script som baseras på linuxtime .. fungerar mycket bättre än sessioner & mysql enligt mig..

MVH

Permalänk: https://www.webforum.nu/p/319121

## #8 — Lfe, 2001-06-05T19:29Z

vill bara påpeka att jag menar unix time, inte linuxtime ;)

undra va linux time kan vara egentligen.. måste ju finnas

Permalänk: https://www.webforum.nu/p/319122

## #9 — Bones_Junior, 2001-06-06T05:22Z

Kanske kan påpeka att timestamp i MySQL ändras när man ändrar något i den posten. Det gör att den sätts automatiskt när du ändrar det andra fältet 'id'.
Det betyder att detta:
\<?
$timestamp=time();
mysql_query("INSERT INTO datumtest (id, datum) VALUES ('1', '$timestamp')");
?\>
gör sama sak som detta:
\<?
mysql_query("INSERT INTO datumtest (id) VALUES ('1')");
?\>

Permalänk: https://www.webforum.nu/p/319123

## #10 — Alpha II, 2001-06-07T18:32Z

Men varför blir timestampen olika i php och mysql? Hur gämför man tid?

$lmodified = filemtime("filnamn.txt");
if($lmodified \> $timestamp_från_databas)
 bla bla bla

Den här koden fungerar inte eftersom $timestamp_från_databas:s format inehåller fler siffror än $lmodified...

Permalänk: https://www.webforum.nu/p/319124

## #11 — Lfe, 2001-06-07T19:29Z

anledningen till att de blir olika är väl bara att det är olika standarder. mysql har sin och php har sin

jag kanske har fel, men ser ingen annan bra förklaring på problemet

Permalänk: https://www.webforum.nu/p/319125

## #12 — Bones_Junior, 2001-06-07T21:36Z

MySQL har det här formatet:
YYYYmmddhhmmss
Man kan i tabellen sätta att den endast ska använda ett visst antal siffror räknat från vänster. Om du sätter det till 10 så blir formatet:
YYYYmmddhh
Formatet som filemtime() ger dig verkar vara unixtime.
Du får då formatera det med date() som nedan:
$lmodified=date("Ymdhis", filemtime($file));

Hoppas att det hjälper dig.

\[Redigerat av Bones_Junior den 07 jun 2001\]

Permalänk: https://www.webforum.nu/p/319126

---

Tråden på webben: https://www.webforum.nu/amne/php/15732-spara-och-läsa-timestamps
