Koden kommer inte att fungera. Om du läser recension med id 11 och sedan den med 1 så kommer räknaren inte att uppdateras för 1:an.
Jag tycker att det är onödigt att blanda in sessions.
------------------
essentitia preter non sans multiplicandum
7 svar · 439 visningar · startad av Skarre
Jag skriver ett recensionssystem där jag när jag listar recensionerna skriver ut hur många gånger recensionen lästs. Just nu kör jag följande kod:
If InStr(Session("readreviews"),intReviewID) = 0 Then
objConn.Execute("UPDATE reviews SET views = views + 1 WHERE reviewid = " & intReviewID)
Session("readreviews") = Session("readreviews") & intReviewID & ","
End If
Jag tänkte bara få lite kritik på koden, och även fråga om ni tycker det är rimligt att recensionerna endast räknas som läst en gång per session.
------------------
// Skarre
Koden kommer inte att fungera. Om du läser recension med id 11 och sedan den med 1 så kommer räknaren inte att uppdateras för 1:an.
Jag tycker att det är onödigt att blanda in sessions.
------------------
essentitia preter non sans multiplicandum
Strängproblemet antar jag att jag kan lösa genom att istället leta efter:
intReviewID & ","
...men kan du motivera varför du tycker att jag ska strunta i sessioner? Jag är novis i dessa sammanhang. Hmm... jag kom just på att man inte alls kan lösa strängproblemet så. Jag får fundera lite.
// Skarre
[Redigerat av Skarre den 07 feb 2002]
Så här någonting kanske:
If InStr(Session("readreviews"),"," & intReviewID & ",") = 0 Then
objConn.Execute("UPDATE reviews SET views = views + 1 WHERE reviewid = " & intReviewID)
Session("readreviews") = Session("readreviews") & "," & intReviewID & ","
End If
------------------
// Skarre
[Redigerat av Skarre den 07 feb 2002]
varför vill du bara räkna en gång per session? Vad uppnår du med det?
T.ex. om jag läser samma recension med 5 minuters mellanrum så räknas det som en läsning men om jag väntar 20 minuter så blir det två läsningar.
Om jag slår av cookies så räknas varje läsning oavsett hur lång tid det är mellan läsningarna.
------------------
essentitia preter non sans multiplicandum
Jag har en del barnsliga besökare och skulle inte bli förvånad om någon/någon av dem laddade om sidorna 100 gånger bara för att de tycker om den aktuella skivan och vill att den ska få extra uppmärksamhet. Jag är medveten om att det inte är någon idiotsäker spärr, men alltid hindrar den någon.
------------------
// Skarre
Hur fungerar UBB när det gäller antal som läst en tråd. Vad jag kan se så är det inga cookies. :q
------------------
"Tål det inte att skämtas om, är det inte värt att ta på allvar."
Jag vet inte hur de har gjort, men någon spärr verkar finnas. Jag testade att klicka på en tråd massor av gånger, uppdatera trådsidan etc. men hur jag än gjorde så ökades "läst" endast 1 steg. Någon som vet?
------------------
// Skarre