Avatar billede mettecarsten Nybegynder
28. juni 2004 - 14:37 Der er 5 kommentarer og
1 løsning

Simpel sidetæller

Hej eksperter

Jeg vil gerne have en simpel sidetæller. I min MySQL database har jeg oprettet kolonnenavnet "hits". Jeg vil gerne have det sådan, at når siden indlæses, så hentes tallet fra "hits" og sendes tilbage med + 1. Hvordan ser koden ud? Hvilken betegnelse skal "hits" have i databasen (varchart, text ..)?

Jeg har prøvet med denne kode, men den virker ikke (er indsat allernederst på siden):

<%
Hits = rs("Hits")

Hits = Hits + 1
SQL2 = "Update selskaber set hits = " & hits
SQL2 = SQL2 & " Where id = " & id

Set rs2 = Conn.execute(SQL2)
%>

På forhånd tak.
Avatar billede tofte Juniormester
28. juni 2004 - 14:41 #1
dbstring indeholder bare din string til at connecte til databasen
Set Connection = Server.CreateObject("ADODB.Connection")
Connection.Open dbstring
connection.execute("UPDATE selskaber SET hits=hits+1 WHERE id="&id)
connection.close
set connection = nothing
Avatar billede fennec Nybegynder
28. juni 2004 - 14:43 #2
Også skal hits være et tal (Integer)
Avatar billede mettecarsten Nybegynder
28. juni 2004 - 21:04 #3
Øverst har jeg, <!--#include file="forb.asp"-->, som netop forbinder til databasen.

Lidt længere har jeg følgende sætninger:

<%

strSQL = "Select * from selskaber Where Id = " & Request.Querystring("id")

Set rs = Conn.Execute(strSQL)

%>

Hvis jeg indsætter denne linie går det galt

<%
connection.execute("UPDATE selskaber SET hits=hits+1 WHERE id="&id)
%>

Hvad mangler jeg? Derudover er ikke en datatype, som hedder "Integer"? Hvilken datatype skal "hits" være?
Avatar billede tofte Juniormester
28. juni 2004 - 22:07 #4
hvis du skriver
conn.execute("UPDATE selskaber SET hits=hits+1 WHERE id="&id)

lige efter
strSQL = "Select * from selskaber Where Id = " & Request.Querystring("id")

Set rs = Conn.Execute(strSQL)
burde det virke. Du skal selvfølgelig lige huske at sætte id = request.querystring("id"), eller hvad den nu skal være lig.

Mener at der findes en datatype som hedder INT eller SMALLINT, de burde begge kunne bruges. Hvis du ikke har flere millioner hits.
Avatar billede mettecarsten Nybegynder
28. juni 2004 - 22:25 #5
Har nu prøvet med følgende sætning:

<%

strSQL = "Select * from selskaber Where Id = " & Request.Querystring("id")

Set rs = Conn.Execute(strSQL)

conn.execute("UPDATE selskaber SET hits=hits+1 Where Id = " & Request.Querystring("id")

%>

med det virker fortsat ikke (heller ikke, hvis sidste sætning sættes mellem "strSQL ..." og "Set rs.."?

Har ændret til datatypen SMALLINT
Avatar billede mettecarsten Nybegynder
12. juli 2004 - 06:47 #6
Spg. lukket ved at give point til tofte
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester