webForumDet fria alternativet

Spara datum i mysql databas??

ASP

6 svar · 785 visningar · startad av eddy1

Medlem sedan aug. 2001969 inlägg
Frågan#1

Hej igen

Försöker nu spara datumet i ett fält som är satt till DATETIME men vad som blir i databasen är 0000-00-00 00:00:00..

Så här ser raden ut. Fattat för att man inte ska använda # i Mysql?

SQL = "INSERT INTO Hits"
SQL = SQL & "C_date, Brow, BrowserV, Language, Resolution, Referal, Ip_Nr) "
SQL = SQL & "VALUES ("& request.querystring("custom_ID") &","& request.querystring('"& now &"','"& Request.querystring("Browser") &"','"& Request.querystring("BrowserV") &"','"& Request.ServerVariables("HTTP_ACCEPT_LANGUAGE") &"','"& Request.querystring("Resolution") &"','"& ref_domain &"','"& request.servervariables("remote_addr") &"')"

Mvh

Medlem sedan okt. 200591 inlägg
#2

Kan det va så att du bara behöver lägga till ett mellanslag i rad 1

SQL = "INSERT INTO Hits"

Ska vara

SQL = "INSERT INTO Hits "

Medlem sedan juni 200032 967 inlägg
#3

Som vanligt gäller:
Skriv ut den färdiga SQL-frågan med response.write, så du vet vad databasen försöker tolka. Då är det mycket lättare att se felen.

Förutom det Rob nämner så ser now-delen mycket konstig ut. Du har skrivit:

"& request.querystring('"& now &"'

. Vad hade du tänkt få ut där? Har du en querystring som heter now? I så fall:

"& request.querystring("now") & "'

Eller vill du bara stoppa in ett aktuellt timestamp?

- - - -

Dessutom; ge information om på vilket sätt saker och ting inte fungerar. Får du något felmeddelande?

- - - -

Glöm inte heller SQL injection.

Medlem sedan aug. 2001969 inlägg
#4

Hej

Tack för svaren, den koden jag klistrade in blev lite konstig.. Så här ser den ut

SQL = "INSERT INTO Hits"
SQL = SQL & "(C_date, Brow, BrowserV, Language, Resolution, Referal, NsLookup, Ip_Nr) "
SQL = SQL & "VALUES ('"& now &"','"& Request.querystring("Browser") &"','"& Request.querystring("BrowserV") &"','"& Request.ServerVariables("HTTP_ACCEPT_LANGUAGE") &"','"& Request.querystring("Resolution") &"','"& ref_domain &"','"& False &"','"& request.servervariables("remote_addr") &"')"

Men felet var att det var fel format på datumet så när jag la till
Session.LCID =1053

Så fungerade det ??

Medlem sedan juni 200032 967 inlägg
#5

Så fungerade det ??

Det är inte så konstigt. Svenskt datumformat är ett vettigt datumformat som databasmotorer förstår.

Det finns dock ingen anledning att konkatenera in now från asp, utan du kan använda det direkt i SQL, så slipper du bry dig om datumformat.

SQL = SQL & "VALUES (now(), '"& Request.querystring....
Medlem sedan aug. 2001969 inlägg
#6

Okey..
Kan vara bra att tänka på med datum..

Tack

Medlem sedan jan. 2003188 inlägg
#7

har hittat ett sätt när jag sökte:
function datumFix(d)
s = split(d, "/")
r = s(2) & "-" & right("0" & s(1), 2) & "-" & right("0" & s(0), 2)
datumFix = r
end function

Problemet är att den fungerar rätt, men eftersom databasen spar 2/22/2009 så delar denna funktion upp det så att det blir 2009-02-22, så den blir lite fel. Någon som kan hjälpa mig o ändra denna så det blir rätt?

265 ms totalt · 4 externa anrop · v20260731065814-full.e96017d9
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)
136 ms — ändringar (db)