Jag kan inte se att du fyller ditt recordset med någonting. Var är din SELECT-fråga?
Frågan#1
har ett betygsättningssystem för artiklar, här är koden:
<%
'hämta vären från föregående sida, alltså betyget
artId = Request.Form("artId")
betyg = Request.Form("betyg")
besokarIP = Request.ServerVariables("REMOTE_ADDR")
cookie = Request.Cookies("betyg_" & artId)
'skapa ADO-instanser
set conn = Server.CreateObject("ADODB.Connection")
set rs = Server.CreateObject("ADODB.Recordset")
'koppla upp mot datakälla
conn.Open "DRIVER={MySQL};DATABASE=webzonen;UID=Root;PWD=;SERVER=localhost;"
rs.ActiveConnection = conn
'kolla om cookien är sann eller falsk
if cookie = "" then
cookieRated = false
else
cookieRated = true
end if
'kolla giltighet
if betyg = "" then
'Ogiltig röstning
%>
<font face="Verdana" size="2" color="black">
<h2>Felaktig röstning!</h2>
Du har inte valt något alternativ!<br><br>
<a href="javascript:history.go(-1)">Gå tillbaka</a>
</font>
<%
'Om röstningen var giltig
else
'Nu ska vi kolla så inte någon röstar två gånger genom att kolla IP
rs.Open "SELECT COUNT(*) FROM betyg WHERE ip='" & besokarIP & "' AND artId=" & artId
if rs("ip") = 0 then
if cookieRated = false then
'Besökaren har inte röstat förut så vi lägger till rösten
conn.Execute "INSERT INTO betyg(betyg, ip, artId) VALUES(" & betyg & ", '" & besokarIP & "', " & artId & ")"
Response.Cookies("betyg_" & artId) = true
Response.Cookies("betyg_" & artId).expires = Date() + 30
%>
jag får felet:
Microsoft OLE DB Provider for ODBC Drivers fel '80040e0c'
Det angavs inte någon kommandotext för kommandoobjektet.
/webzonen/betygsatt.asp, rad 142
rad 142:
if rs("ip") = 0 then
REDIGERING: la till rs.open ovan rad 142.
nu får jag bara en tom sida istället.
PS. TACK @NDERS DS.
