---
title: "DATETIME problem"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/22343-datetime-problem"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "RoBaX"
published: "2001-12-18T13:12:00.000Z"
updated: "2001-12-18T14:23:00.000Z"
replies: 7
views: 295
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/databaser-sql/22343-datetime-problem"
---

# DATETIME problem

## #1 — RoBaX, 2001-12-18T13:12Z

Försöker lägga in tiden i en databas med följande php-text:

date('ymdHis');

har även prövat:

date('y-m-d H:i:s');

Den blir inte någon tid sparad utan enbart 0000-00-00 00:00:00 :-///

Någon som har något tips?

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

## #2 — LarsG, 2001-12-18T13:18Z

Använd funktionen current_timestamp i mysql istället.

```

insert into ogrish (aleb,bleb)
values('ABC',current_timestamp)
```

t.ex.

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

## #3 — RoBaX, 2001-12-18T13:21Z

Fungerar inte med TIMESTAMP heller :-/ Hur ska formatet se ut?

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

## #4 — LarsG, 2001-12-18T13:25Z

Vilken datatyp använder du för att lagra värdet i databasen?
Hur ser din kod ut?
Vad får du för fel?

Du kan inte påverka lagringsformatet för datetimekolumner i en databas. Om du vill visa värdet i något speciellt format så får du hantera det när du hämtar data.

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

## #5 — RoBaX, 2001-12-18T13:35Z

timestamp(14) står det i MySQL databasen...

Koden:

\<?php 
  include("funcs/funcs.php"); 
  include("funcs/opendb.php"); 
  $usrr = strtolower($usr); 
  $tiden = date('ymdHis'); 
  $sql = "INSERT INTO guestbook\_$usrr(namn,tid,text) VALUES ('$user','$tiden','$text')"; 
  $resultat = mysql_query($sql); 

  $res = mysql_query("SELECT \* FROM profil where anv='$usr'",$db);  
        while ($ddata = mysql_fetch_array($res)) {  
            $nyag = $ddata\[1\]; 

            }      

  $nyag++; 
  $sql = "UPDATE profil SET gast='$nyag' WHERE anv='$usr'"; 
  $resultat = mysql_query($sql);  

  redir("guestbook.php?username=$usr") 
?\> 

Felet blir att ingen tid är där... Står 0000-00-00 00:00:00 i databsen :-/

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

## #6 — LarsG, 2001-12-18T13:49Z

Du bör nog använda datatypen datetime istället. 

```
$sql = "INSERT INTO guestbook_$usrr(namn,tid,text) VALUES ('$user',current_timestamp,'$text')";
```

Timestamp fungerar så att mysql uppdaterar den kolumnen automatiskt när det sker en insert eller update på tabellen (om man själv inte anger något värde).
 <http://www.mysql.com/doc/D/A/DATETIME.html>

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

## #7 — RoBaX, 2001-12-18T14:00Z

Okej, nu sparas rätt i databasen =)

Denna kodsnäpp då... 

function textDatum($dat) {
// nått här
}

Den funktionen får in dagens datum i formatet YYYY-mm-dd hh:mm:ss i $dat... Kan jag på något sätt få den att returnera typ

Tisdag den 18 dec 15:00

?? Tacksam för hjälp!

Vänliga hälsningar

// Robban

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

## #8 — LarsG, 2001-12-18T14:23Z

Du kan ju testa lite med strToTime som gör om det till en UNIX_TIMESTAMP och sedan formattera det med date och någon lämplig formatsträng.

```
function textDatum($dat) {
  return(date("format",strToTime($dat));
}
```

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/22343-datetime-problem
