Jag skulle ha använt en array. Annars så kan man använda Execute(), men jag rekommenderar helt klart att använda en array.
Execute ("clickEveryDay" & j & "=""" & mySQL(0) & """)
11 svar · 406 visningar · startad av Eclipse
Vi har diskuterat detta vid något tillfälle tidigare men jag minns inte när det var eller vilket projekt det rörde sig om...!
Koden ser ut som
clickEveryDay & j = mySQL(0)
och det är tänkt att stå
clickEveryDay0
clickEveryDay1
clickEveryDay2
clickEveryDay3 ... osv...
Detta är endast kod för statistik så det finns inget behov av att vara optimerat eller direkt snyggt...
Jag skulle ha använt en array. Annars så kan man använda Execute(), men jag rekommenderar helt klart att använda en array.
Execute ("clickEveryDay" & j & "=""" & mySQL(0) & """)
OK... låt mig förklara själva problematiken:
Det är en logg med folk som klickar. Det kan vara t.ex. 5-8 klick på en dag, alltså, ett visst datum.
Tidigare har vi gått igenom datum + access och kommit fram till koden:
... & " AND format(vcl.dteCreated, 'short date') = #" & date() & "# ;"
Prylen är ju den at jag vet inte hur många dagar loggen har funnits! I 5 dagar är det 5 dagar, efter 40 dagar är det 40 dagar... liksom!
1. Räkna ut hur många dagar som loggen gäller för.
2. Räkna antalet klick (antalet poster) för respektive dag.
Så ser det ut...! :-)
SQL = "SELECT intID FROM [loggfilen l] WHERE format(l.dteCreated, 'short date') = #" & date() & "# ;"
Koden i förenklad form. Hur kan man loopa det där och få koden att sluta räkna efter 40 dagar..!?
(Börjar likna SQL mer än ASP...)
Tänk typ:
-Dag = startdatum
-Loopa tills Dag = dag+40
-Dag = dag +1
SQL = "SELECT intID FROM [loggfilen l] WHERE format(l.dteCreated, 'short date') = #" & date() & "# ;"
-Börja om
Kanske?
Finns inte så många månader med 40 dagar men det borde väll kunna gå att lösa med datumfunktionerna?
40 var ett exempel!
Hur lång en logg är beror givetvis på när man börjar... och det blir ju "en dag mer" för var dag som går. Jag skrev ovan:
1. Räkna ut hur många dagar som loggen gäller för.
2. Räkna antalet klick (antalet poster) för respektive dag.
Are you with!?
Jag har prövat massa olika varianter av nedanstående...
Microsoft VBScript compilation error '800a03ea'
Syntax error
/admin/banner/daily.asp, line 48
clickEveryDay & j = mySQL(0)
--------------^
2.
När jag ändå håller på, vilken server variabel är det markerade??
www .------.se/admin/x.asp**?index=123**
Request.ServerVariables("PATH_INFO") --??
31. QUERY_STRING : index=123
Jag har prövat massa olika varianter av nedanstående...
Som jag skrev (eller åtminstone menade) ovan, kan du inte skriva så. Ska du dynamiskt namnge variabler på det sättet (även om jag inte för mitt liv kan förstå varför man skulle vilja det) så får du krångla enligt mitt execute-exempel ovan.
Mvh
Ok, men ditt exempel var en av de varianter som inte heller fungerade...
Det var snabbskrivet, så jag hade missat ett citationstecken i slutet.
Execute ("clickEveryDay" & j & "=""" & mySQL(0) & """")