Kom ihåg mig?
Home Menu

Menu


Datum i MySQL

Ämnesverktyg Visningsalternativ
Oläst 2004-07-28, 09:38 #1
linusanderas linusanderas är inte uppkopplad
Nykomling
 
Reg.datum: Jul 2004
Inlägg: 41
linusanderas linusanderas är inte uppkopplad
Nykomling
 
Reg.datum: Jul 2004
Inlägg: 41
Jag använder följande kod för att spara ett datum.

RecSet("start") = dateserial(Request.form("st_ar"),Request.form("st_ man"),Request.form("st_dag")) & " " & timeserial(Request.form("st_h"),Request.form("st_m in"),0)

Men... istället för
2004-07-20 10:00:00

så får jag värdet

2004-07-20 09:59:59

i databasen vid vissa klockslag, inte alla men t.ex. vid kl 10.00...

är det någon som har koll på det här?

/Linus
linusanderas är inte uppkopplad   Svara med citatSvara med citat
Oläst 2004-08-09, 21:51 #2
linusanderas linusanderas är inte uppkopplad
Nykomling
 
Reg.datum: Jul 2004
Inlägg: 41
linusanderas linusanderas är inte uppkopplad
Nykomling
 
Reg.datum: Jul 2004
Inlägg: 41
Är jag den enda som varit med om detta...?
linusanderas är inte uppkopplad   Svara med citatSvara med citat
Oläst 2004-08-09, 23:31 #3
mattiasjarnhall mattiasjarnhall är inte uppkopplad
Medlem
 
Reg.datum: Feb 2004
Inlägg: 90
mattiasjarnhall mattiasjarnhall är inte uppkopplad
Medlem
 
Reg.datum: Feb 2004
Inlägg: 90
Vad är det du vill ådstakomma? Det kanske går att lösa på ett bättre sätt?
mattiasjarnhall är inte uppkopplad   Svara med citatSvara med citat
Oläst 2004-08-10, 11:53 #4
Rasmus Rasmus är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jul 2004
Inlägg: 538
Rasmus Rasmus är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jul 2004
Inlägg: 538
Gör ett fält som heter "hej", sätt det till DATETIME
För att skriva in använder du NOW() det kommer skriva datumen såhär: 2004-08-09 16:39:09
Det måste vara det enklaste.
Rasmus är inte uppkopplad   Svara med citatSvara med citat
Oläst 2004-08-10, 12:36 #5
linusanderas linusanderas är inte uppkopplad
Nykomling
 
Reg.datum: Jul 2004
Inlägg: 41
linusanderas linusanderas är inte uppkopplad
Nykomling
 
Reg.datum: Jul 2004
Inlägg: 41
Jag vill genom att använda fem List/Menu i ett formulär, (år mån dag timme minut) låta användarna spara en tidpunkt i ett fält som är DATETIME.

RecSet("start") = dateserial(Request.form("st_ar"),Request.form("st_ man"),Request.form("st_dag")) & " " & timeserial(Request.form("st_h"),Request.form("st_m in"),0)

Tycker att dateserial och timeserial borde vara det mest optimala men vissa tider blir alltså förskjutna med en sekund...

Mer konkret; när jag för in följande värden från formuläret:

Request.form("st_ar") = 2004
Request.form("st_man") = 7
Request.form("st_dag") = 20
Request.form("st_h") = 10
Request.form("st_min")= 0

Så får jag detta i databasen: 2004-07-20 09:59:59

Jag användar MySQL.
linusanderas är inte uppkopplad   Svara med citatSvara med citat
Oläst 2004-08-10, 12:52 #6
Klorinsky Klorinsky är inte uppkopplad
Medlem
 
Reg.datum: Jun 2004
Inlägg: 140
Klorinsky Klorinsky är inte uppkopplad
Medlem
 
Reg.datum: Jun 2004
Inlägg: 140
CREATE TABLE foobar (
id int(255) auto_increment,
time timestamp,
PRIMARY KEY (id)
);

SELECT DATE_FORMAT(time, '%y-%m-%d %H:%i:%s') AS time from foobar;
Klorinsky är inte uppkopplad   Svara med citatSvara med citat
Oläst 2004-08-10, 16:51 #7
mattiasjarnhall mattiasjarnhall är inte uppkopplad
Medlem
 
Reg.datum: Feb 2004
Inlägg: 90
mattiasjarnhall mattiasjarnhall är inte uppkopplad
Medlem
 
Reg.datum: Feb 2004
Inlägg: 90
Citat:
Originally posted by linusanderas@Aug 10 2004, 12:36
Jag vill genom att använda fem List/Menu i ett formulär, (år mån dag timme minut) låta användarna spara en tidpunkt i ett fält som är DATETIME.

RecSet("start") = dateserial(Request.form("st_ar"),Request.form("st_ man"),Request.form("st_dag")) & " " & timeserial(Request.form("st_h"),Request.form("st_m in"),0)

Tycker att dateserial och timeserial borde vara det mest optimala men vissa tider blir alltså förskjutna med en sekund...

Mer konkret; när jag för in följande värden från formuläret:

Request.form("st_ar") = 2004
Request.form("st_man") = 7
Request.form("st_dag") = 20
Request.form("st_h") = 10
Request.form("st_min")= 0

Så får jag detta i databasen: 2004-07-20 09:59:59

Jag användar MySQL.
Gör det till en vanlig sträng, bör funka fint!

strDate = Request.form("st_ar") & "-" & Request.form("st_man") & "-" & Request.form("st_dag") & " " & Request.form("st_h") & ":" & Request.form("st_min") & ":00"

Skulle det vara så att den inte gillar månad och dag med bara ett nummer så kan du alltid göra en funktion som kollar längden "talet" och lägger till en nolla om det är under 10.

Typ
Function FixaDatum(strTalet)

If Len(strTalet) = 1 Then strTalet = "0" & strTalet
FixaDatum = strTalet

End Function

Och sen kör du bara månad, datum, timmar och sekund i den funktionen:

strAr = Request.form("st_ar")
strMan = FixaDatum(Request.form("st_man"))
strDag = FixaDatum(Request.form("st_dag"))
strH = FixaDatum(Request.form("st_h"))
strMin = FixaDatum(Request.form("st_min"))
mattiasjarnhall är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 2 (0 medlemmar och 2 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 22:49.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017