Jaa? Du plockar ju ut det senaste datumet och kollar om det är mindre än dagens datum.
I övrigt förstår jag inte riktigt vad du frågar efter... jag skyller på att jag är trött :)
7 svar · 255 visningar · startad av calson
Jag vill föra statestik per dag men har lite problem.
I min databas har jag en post och datumet för den posten är gjort som den skapades igår. Vad jag än prövar så updateras bara den post som har senast datum, även om datumet är en vecka gammalt.
sql = "select dtmDatum, id from tblCounter Order by dtmDatum Desc"
set rs = conr.execute(sql)
intId = rs("id")
dtmDatum = rs("dtmDatum")
rs.close : set rs = nothing
If dtmDatum < Date Then
If intUnik = 1 Then
conr.Execute("Update tblCounter Set intUnika=intUnika+1, intTotalt=intTotalt+1 Where id=" & intId)
Else
conr.Execute("Update tblCounter Set intTotalt=intTotalt+1 Where id=" & intId)
End If
Else
dtmDatum = Date
If intUnik = 1 Then
conr.Execute("Insert Into tblCounter Set intUnika=intUnika+1, intTotalt=intTotalt+1, dtmDatum='" &dtmDatum &"'")
Else
conr.Execute("Update tblCounter Set intTotalt=intTotalt+1 Where id=" & intId)
End If
End If
Tack på förhand
Jaa? Du plockar ju ut det senaste datumet och kollar om det är mindre än dagens datum.
I övrigt förstår jag inte riktigt vad du frågar efter... jag skyller på att jag är trött :)
Precis.
Jag plockar ut det senaste datumet och kollar om det är dagens ellse tidigare.
Om det inte är dagens vill jag skapa en ny post (Inster) med det dagens datum.
Om det visar sig vara dagens datum så skall posten uppdateras och unika/totala fälten uppdateras med 1 (Update)
Jag är trött själv så jag kanske skriver oförstårligt :)
Ingen som kan hitta något fel? :(
Humm... så här tolkar jag ditt problem.
strSql = "SELECT TOP 1 dtmDatum, id FROM tblCounter ORDER BY dtmDatum DESC"
Set objRS = objConn.Execute(strSql)
dtmDatum = rs("dtmDatum")
intID = rs("id")
objRS.Close : Set objRS = Nothing
If DateDiff("d", Date, dtmDatum) < 0
strSql = "INSERT INTO ..."
Else
strSql = "UPDATE ..."
End If
Du behöver bara stoppa in din intUnik-ifsats, vad nu den gör.
Feltyp:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[MySQL][ODBC 3.51 Driver][mysqld-4.0.18-nt]You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '1 dtmDatum, id FROM tblCounter ORDER BY dtmDatum DESC' at line
/clurre/statistik/counter.asp, line 22
Rad 22 är Set rs = conr.Execute(Sql)
Så jag antar att det inte gick med den sql frågan
Jag tog bort Top 1 från sql frågan. Då lästes hela skriptet igenom men den vägrar fortfarande att lägga till en ny post när datumet inte stämmer.
Jag kan inte se något fel, sjukt irreterande
Åhh va sur jag blir.
Man gör alltid det svårare än vad det är :)
Här är min lösning som verkar funka fin fint
Sql = "SELECT dtmDatum, id FROM tblCounter Where dtmDatum='" &Date &"'"