22. september 2006 - 17:46
Der er
15 kommentarer og 1 løsning
Problem med dato
Hej eksperter. Jeg er i gang med at lave et nyhedssystem, hvor der skal være en oprettelsesdato til hver nyhed. For at indsætte datoen i tabellen bruger jeg dette: $tid = date("Y-m-d"); mysql_query("INSERT INTO `nyheder` (id, emne, tekst, dato) VALUES ('','".$_POST['select']."','".$_POST['FCKeditor1']."','$tid');") or die(mysql_error()); og når jeg skal vise datoerne til nyhederne bruger jeg: echo date("d/m/Y", $dato); Men den skriver hele tiden 01/01/1970. dato i tabellen er en DATETIME Nogle der ved hvad jeg gør galt ?
Annonceindlæg tema
Cloud & AI
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
22. september 2006 - 17:48
#1
og liger over echo date("d/m/Y", $dato); har jeg: $dato = ($row['dato']);
22. september 2006 - 18:29
#2
Slet ingen der kan svare på dette simple spørgsmål ?
22. september 2006 - 18:57
#3
Indsæt evt. time() til mysql Eller du kan indsætte date("Y-m-d") og udskrive direkte...
22. september 2006 - 19:15
#4
Du kan måske gøre sådan her $dato='2006-11-23'; print date("d/m/Y", strtotime($dato));
22. september 2006 - 20:05
#5
Som erik skriver eller du kan i din SELECT lave en: SELECT UNIX_TIMESTAMP(dato) AS dato - så vil din kode virke... :)
24. september 2006 - 15:49
#6
Hvordan ser din data ud fra din select? Er værdien i dato-feltet NULL eller en misforstået dato?
26. september 2006 - 15:28
#7
til at hente nyhederne bruger jeg dette: $query = mysql_query ("SELECT * FROM `nyheder` ORDER BY dato DESC") or die(mysql_error()); while($row = mysql_fetch_array($query)) { $text = ($row['tekst']); $emne = ($row['emne']); $dato = ($row['dato']); ...
26. september 2006 - 15:37
#8
Hvordan får jeg så denne SELECT UNIX_TIMESTAMP(dato) AS dato ind ?
26. september 2006 - 15:39
#9
Prøv med: $query = mysql_query ("SELECT *, UNIX_TIMESTAMP(dato) AS dato FROM `nyheder` ORDER BY dato DESC") or die(mysql_error());
26. september 2006 - 15:45
#10
Okay. Problemet er bare at den nu skriver dagens dato og ikke den dato nyheden blev skrevet ?
26. september 2006 - 21:01
#11
Jeg kan godt få det til at virke hvis jeg skriver: --- mysql_query("INSERT INTO `nyheder` (id, emne, tekst, dato) VALUES ('','".$_POST['select']."','".$_POST['FCKeditor1']."',NOW());") or die(mysql_error()); --- Så skriver den datoen man opretter nyheden. Men hvis jeg gør sådan: --- $tid=strtotime("Y-m-j","$datofelt"); mysql_query("INSERT INTO `nyheder` (id, emne, tekst, dato) VALUES ('','".$_POST['select']."','".$_POST['FCKeditor1']."','$tid');") or die(mysql_error()); --- Skriver den bare 01/01-1970
26. september 2006 - 21:43
#12
Slet ingen der kan hjælpe ?
27. september 2006 - 10:22
#13
prøv med $tid=strtotime("Y-m-d","$datofelt");
27. september 2006 - 19:58
#14
Det virker stadig ikke...opretter lige et nyt spørgsmål, da dette er ved at komme lidt for langt ned i rækken ;)
27. september 2006 - 20:11
#15
Det behøver du da ikke (og må heller ikke før der er gået 7 dage). Hvor kommer $datofelt fra? Og hvad står der i feltet dato i tabellen?
28. september 2006 - 08:59
#16
den er da vist også helt gal den jeg selv foreslår... prøv det her i stedet for: $tid=date("Y-m-d",time());
Computerworld tilbyder specialiserede kurser i database-management