V Vinnaren Medlem sedan sep. 2005 833 inlägg Frågan 30 apr. 2006 16:57 #1 Hej
Behöver en slags räknare som räknar hur många det är som har läst artiklen.
Tabellen heter artiklar och kolumnen heter last.
Databaskopplingen
<%...%>
<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("../../db/databas.mdb")&";"
Set news = Server.CreateObject("ADODB.Recordset")
Addera = "SELECT * FROM artiklar WHERE id = " &Request.QueryString("visa")
news.Open Addera, Conn, 1, 2
%>
Tacksam för all hjälp jag kan få :stud
Compusa Medlem sedan jan. 2002 3 327 inlägg Du får göra en update efter att du hämtat artikeln. Plussa på värdet i kolumnen läst med 1.
peppar Medlem sedan dec. 2001 873 inlägg Lägg till ett fält i fält i tabellen som använder för att lagra det antal gånger artikeln visats. Varje gång du hämtar artikeln med din ovanstående kod tar du värdet från det "antal gånger visat" fältet och plusar det med ett.
Sedan tar du det nya värdet och uppdaterar "antal gånger visats" fältet med det nya värdet...
red/ shicshh! To slow... :)
V Vinnaren Medlem sedan sep. 2005 833 inlägg har provat med
<%
x = Request.QueryString("visa")
Conn.Execute("update artiklar set last = last + 1 where id = " & CLng(x))
%>
men ingenting sparas i databasen :S
@nders Medlem sedan juni 2000 32 967 inlägg Se till att fältinnehållet är 0 innan du försöker dig på att lägga på 1.
NULL + 1 kanske inte blir så bra.
Går ju att skriva:
last = COALESCE(last, 0) + 1
@nders Medlem sedan juni 2000 32 967 inlägg Mja, eventuellt. Jag är dock osäker på om COALESCE finns i Jet SQL. Kanske får man då skriva så här för Access:
last = IIF(last IS NULL, 1, last+1)
mvh