Godmorgon!
Har ett problem...med det här scriptet..
trots att det finns värden i databasen och anslutningen är rätt (för jag har lyckats hämta alla värden) men själva funktionen
tmpDate = DateAdd("d", -1,now()) vill inte fungera, vad kan tänkas att jag gör för fel...
Supertacksam för all hjälp!:)
<%
StartTime = now 'när sidan startades
tmpDate = DateAdd("d", -1,now())
Set objCommand= Server.CreateObject("ADODB.Command")
objCommand.ActiveConnection = objConn
objCommand.CommandType = adCmdText
SQL = "SELECT COUNT(HitsID) as CNT FROM tblHits WHERE Datum BETWEEN '" & Now() & "' AND '"& tmpDate &"' "
Set objRS = objConn.Execute(SQL)
DayUsers= objRS("CNT")
objRS.Close
Set objRS = Nothing
objConn.Close : Set objConn = Nothing
%>
<body>Den senaste dagen har <%=DayUsers%> varit inne på test.asp
</body>
Engine^Medlem sedan dec. 20003 887 inlägg Morrn morrn
Du skapar ett objCommand, men du använder objConn...
Annars så ska väl inte Now ha några paranteser.
Sedan så är det väl lite förvillande att du använder Now, eftersom det inte, som du har det nu, ger den senaste dagens besökare utan dom senaste 24 timmarnas besökare...
SQL = " SELECT Count(HitsID) As CNT FROM tblHits WHERE Datum >= '" & DateAdd("d", -1, Date) & "'"
Brasklapp: Om du använder Access tidigare än 2002 ska ditt datum vara omslutet av #.
Ok..förvirrad verkar jag vara..men det är ju måndag trots allt..
Har iaf gjort så här
Day(Datum)
SQL = "SELECT PageID,COUNT(*) AS antal FROM tblHits WHERE Day(Datum) = Day('" & Now() & "') GROUP BY PageID ORDER BY PageID"
Set objRS = objConn.Execute(SQL)
Response.Write"<b>Antal hits idag :</b> " & (Year(Date()) & "-" & Right("0" & Month(Date()), 2) & "-" & Right("0" & Day(Date()), 2))& "<BR>"
Do While Not objRS.EOF
Response.Write"<table ><tr><td>" & (objRS("PageID"))& "</td>"
Response.Write"<td><b>Antal besökare:</b></td><td>" & (objRS("antal"))& "</td></tr></table>"
objRS.MoveNext
loop
vilket fungerar alldeles utmärkt men nu undrar jag om det finns någon som kan förklara hur jag gör för att få ut antal besökare senaste timmen från en SQL databas.
Tack så länge!
Engine^Medlem sedan dec. 20003 887 inlägg SELECT PageID, Count(*) AS antal
FROM tblHits
WHERE Hour(Datum) >= Hour(Now()) - 1 AND Date(Datum) = Date()
GROUP BY PageID
ORDER BY PageID
Kan det bli rätt?
Ok, nu har jag provat med följande SQL sats..
SQL = "SELECT PageID,COUNT(*) AS antal FROM tblHits WHERE Hour(Datum) = Hour('" & Now() & "') GROUP BY PageID ORDER BY PageID"
men då får jag dock följande felmeddelande ...
'Hour' is not a recognized function name.
@ndersMedlem sedan juni 200032 969 inlägg I SQL Server finns mig veterligen inte funktionen Hour() (eller andra besläktade funktioner), utan du får använda dig av DatePart().
SQL = "SELECT PageID,COUNT(*) AS antal FROM tblHits WHERE DatePart(hour, Datum) = DatePart(hour, '" & Now() & "') GROUP BY PageID ORDER BY PageID"
red: Du behöver inte heller bryta strängen för att lägga in ett asp-now(), utan du kan gott köra med getdate() eller current_timestamp direkt i SQL-frågan.
Om det inte är tidsskillnader mellan webserver och databasserver och det verkligen är webserverns tid du vill åt.
Mvh
Engine^Medlem sedan dec. 20003 887 inlägg Aäee... du sa ju att det var SQL-Server...
SELECT PageID, Count(*) AS antal
FROM tblHits
WHERE DatePart(hour, Datum) >= DatePart(hour, GetDate()) - 1 AND Datum = GetDate()
GROUP BY PageID
ORDER BY PageID
red.
Glömde - 1 :)
Ok, tack @nders, nu fungerar det kanoners!
Men nu har jag en till undran...Har ett fält i db där veckonummer lagras och nu skulle jag vilja få ut antal hits den senaste veckan..men jag får inte till det...fältet där vecka sparas heter VeckoNummer i db ..
Det är väl fel i WHERE DatePart..hur ska jag skriva..hmmm..
SQL = "SELECT PageID,COUNT(*) AS antal FROM tblHits WHERE DatePart("ww",'"& now &"',VeckoNummer) = DatePart(ww, '" & Now() & "') GROUP BY PageID ORDER BY PageID"
Var visst inte riktigt med i matchen igår..så här var det visst bara att skriva
SQL = "SELECT PageID,COUNT(*) AS antal FROM tblHits WHERE VeckoNummer = DatePart(ww,'" & Now() & "') GROUP BY PageID ORDER BY PageID"
Tack för er hjälp!