Jag vill så att varje gång någon går in på en sida ska det läggas till en etta i databasen.
<%
if Request.QueryString("userid") <> "" AND Request.QueryString("userid") <> Session("cmid") then
userid = CLng(Request.QueryString("userid"))
SQL = "UPDATE medlemmar SET besok = besok+1 Where anvandarnamn = '"&Request.Querystring("userid")&"'"
set RecSet = Connect.Execute(sql)
end if
%>
Kör en Response.Write å kolla att din session/querystring har ett värde.
Ex:
Response.Write Session("cmid")
Sen som emission påpekar, så innehåller väl säkerligen Request.Querystring("userid") en siffra. I din update så har du dels ' runt värdet, samt försöker matcha den med ett fält som heter anvandarnamn i databasen (vilket rimligtvis är personens användarnamn?).
Du trycker sen in Request.Querystring("userid") i en variabel som heter userid samt formaterar om den till ett TAL. Ett tal som du sen inte använder i din UPDATE.
Vidare så skapar du ett Recordset av en UPDATE - som inte ska hämta några värden. Jätteonödigt.
Förslagsvis skulle dina rader kunna bytas ut till detta:
<%
userid = CLng(Request.Querystring("userid"))
If userid <> "" AND userid <> cLng(Session("cmid")) Then
Connect.Execute("UPDATE medlemmar SET besok = besok + 1 WHERE [red]uID[/red] = " & userid)
End If
%>
Kontrollera:
Att fältet 'besok' inte är NULL och är satt som Integer/Tal i databasen.
Namnet på ID-fältet i databasen (jag kallade den ovan för uID, men kanske är userid)
Att Sessionen samt variabeln userid innehåller nåt värde.