webForumDet fria alternativet

?do=ut problem!

4 svar · 250 visningar · startad av PappaMuppen

PappaMuppenMedlem sedan aug. 200368 inlägg
#1

Hej hej.
Har lite problem när jag ska länka till en artikel som samtidigt ska +a på med 1 i klick när man klickar på länken. Har fått ihop denna kod. Men den fungerar inte riktigt. Någon som har ett bättre förslag?

<%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("artiklar.mdb")

Set RecSet = Server.CreateObject("ADODB.Recordset")
SQL = "SELECT \* FROM forum Where Email = 'webbutveckling' ORDER BY Datum DESC"
RecSet.Open SQL, Connect, adOpenStatic, adLockOptimistic

%>
<body><table width="100%">
<tr>
<td>
<b>Webbutveckling</b></td><td align="right"><b>Läst</b></td></tr></table>
<% IF RecSet.EOF then %>
<table><tr><td>
För tillfället finns det inga artiklar i denna kategorin.</td></tr></table>
<%
ELSE
Do until RecSet.EOF
%>

<table width="100%"><tr><td width="75"><%=RecSet("DATUM")%></td><td> <a href="las.asp?id=<%=RecSet("ID")%>?do=ut&id=<%=RecSet("ID")%>"><%=RecSet("RUBRIK")%></A></td><td align="right"><%=RecSet("KLICK")%></td></tr>

<%
If Request.QueryString("do")= "ut" Then
Set RecSet=Conn.Execute("SELECT * From forum WHERE id=" & Request.Querystring("ID"))
Conn.Execute("UPDATE forum SET KLICK=KLICK+1 WHERE ID=" & Request.Querystring("ID"))
Response.Redirect("las.asp?id=RecSet("ID")")
End If

x=x+1
Recset.MoveNext
Loop
RecSet.Close
End If
%>

solbulleMedlem sedan mars 20014 998 inlägg
#2

kanske...

<body><table width="100%"> 
<tr> 
<td> 
<b>Webbutveckling</b></td><td align="right"><b>Läst</b></td></tr></table>
<% 
Set Connect = Server.CreateObject("ADODB.Connection") 
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("artiklar.mdb") 

Set RecSet = Server.CreateObject("ADODB.Recordset") 
SQL = "SELECT * FROM forum Where Email = 'webbutveckling' ORDER BY Datum DESC" 
RecSet.Open SQL, Connect, 3, 3

IF RecSet.EOF then %> 
<table><tr><td> 
För tillfället finns det inga artiklar i denna kategorin.</td></tr></table> 
<% 
ELSE 
Do until RecSet.EOF 
%> 

<table width="100%"><tr><td width="75"><%=RecSet("DATUM")%></td><td> <a href="las.asp?id=<%=RecSet("ID")%>?do=ut&id=<%=RecSet("ID")%>"><%=RecSet("RUBRIK")%></A></td><td align="right"><%=RecSet("KLICK")%></td></tr> 

<% 
Recset.MoveNext 
Loop 
End If 
RecSet.Close
Connect.Close

If Request.QueryString("do")= "ut" Then 
Conn.Execute("UPDATE forum SET KLICK=KLICK+1 WHERE ID=" & Request.Querystring("ID")) 
Response.Redirect "las.asp?id=" & Request.Querystring("ID") 
End If 
%>

PS. Använd kodtaggarna.

PappaMuppenMedlem sedan aug. 200368 inlägg
#3

Nu får jag ett annat felmeddelande:

Error Type:
ADODB.Recordset (0x800A0E7D)
Operation is not allowed on an object referencing a closed or invalid connection.

Jag ska visa hela koden för er.

<% Response.Buffer = True %>
<!--#include file="adovbs.inc" -->
<html>
<head>
<title>Artiklar</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="/webzone/style.css">
</head>
<%
Set Connect = Server.CreateObject("ADODB.Connection") 
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("artiklar.mdb")

	Set RecSet = Server.CreateObject("ADODB.Recordset")
	SQL = "SELECT * FROM forum Where Email = 'webbutveckling' ORDER BY Datum DESC"
	RecSet.Open SQL, Connect, adOpenStatic, adLockOptimistic
%>
<body><table width="100%"> 
<tr> 
<td> 
<b>Webbutveckling</b></td><td align="right"><b>Läst</b></td></tr></table>
<% 
Set Connect = Server.CreateObject("ADODB.Connection") 
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("artiklar.mdb") 

Set RecSet = Server.CreateObject("ADODB.Recordset") 
SQL = "SELECT * FROM forum Where Email = 'webbutveckling' ORDER BY Datum DESC" 
RecSet.Open SQL, Connect, adOpenStatic, adLockOptimistic 

IF RecSet.EOF then %> 
<table><tr><td> 
För tillfället finns det inga artiklar i denna kategorin.</td></tr></table> 
<% 
ELSE 
Do until RecSet.EOF 
%> 

<table width="100%"><tr><td width="75"><%=RecSet("DATUM")%></td><td> <a href="las.asp?id=<%=RecSet("ID")%>?do=ut&id=<%=RecSet("ID")%>"><%=RecSet("RUBRIK")%></A></td><td align="right"><%=RecSet("KLICK")%></td></tr> 

<% 
Recset.MoveNext 
Loop 
End If 
RecSet.Close
Connect.Close

If Request.QueryString("do")= "ut" Then 
Conn.Execute("UPDATE forum SET KLICK=KLICK+1 WHERE ID=" & Request.Querystring("ID")) 
Response.Redirect "las.asp?id=" & Request.Querystring("ID") 
End If 
%>

</table>
<p>
<!----------- Nästa Kategori ----------->
 <table width="100%"><tr><td><b>Intervjuer</b></td></tr></table>
<% 
	Set RecSet = Server.CreateObject("ADODB.Recordset")
	SQL = "SELECT * FROM forum Where Email = 'intervjuer' ORDER BY Datum DESC"
	RecSet.Open SQL, Connect, adOpenStatic, adLockOptimistic

If RecSet.EOF Then %>
<table><tr><td>
För tillfället finns det inga artiklar i denna kategorin.</td></tr></table>
<ul>
<ul>

<% Else

Do Until RecSet.EOF %>

<table width="100%"><tr><td width="75"><%=RecSet("DATUM")%></td><td>  <a href="las.asp?id=<%=RecSet("ID")%>"><%= RecSet("RUBRIK")%></A></td><td align="right"><%= RecSet("KLICK")%></td></tr>

<%
RecSet.MoveNext
Loop
RecSet.Close
End If %>
</table>
<p>
</ul></ul>
<!----------- Nästa Kategori -----------><table><tr><td><b>Recensioner</b></td></tr></table>
<% 
	Set RecSet = Server.CreateObject("ADODB.Recordset")
	SQL = "SELECT * FROM forum Where Email = 'recentioner' ORDER BY Datum DESC"
	RecSet.Open SQL, Connect, adOpenStatic, adLockOptimistic

If RecSet.EOF Then %>

<table width="100%"><tr><td>För tillfället finns det inga artiklar i denna kategorin.</td><td align="right"><%= RecSet("KLICK")%></td></tr></table>
<ul>
<ul>

<% Else

Do Until RecSet.EOF %>

<table width="100%"><tr><td width="75"><%=RecSet("DATUM")%></td><td>  <a href="las.asp?id=<%=RecSet("ID")%>"><%= RecSet("RUBRIK")%></A></td><td align="right"><%= RecSet("KLICK")%></td></tr>

<%
RecSet.MoveNext
Loop
RecSet.Close
End If %>
</table>
</ul></ul>
<p>
<!----------- Nästa Kategori ----------->
<table width="100%"><tr><td><b>Övriga artiklar</b></td></tr></table>
<% 
	Set RecSet = Server.CreateObject("ADODB.Recordset")
	SQL = "SELECT * FROM forum Where Email = 'ovriga' ORDER BY Datum DESC"
	RecSet.Open SQL, Connect, adOpenStatic, adLockOptimistic

If RecSet.EOF Then %>

<font size="1" face="Verdana">För tillfället finns det inga artiklar i denna kategorin.</font>
<ul>
<ul>

<% Else

Do Until RecSet.EOF %>

<table width="100%"><tr><td width="75"><%=RecSet("DATUM")%></td><td>  <a href="las.asp?id=<%=RecSet("ID")%>"><%= RecSet("RUBRIK")%></A></td><td align="right"><%= RecSet("KLICK")%></td></tr>

<%
RecSet.MoveNext
Loop
RecSet.Close
End If %>
</table>
</ul></ul>
<!----------- Slut på kategorier ----------->
  
</body>

Hoppas någon kan lösa detta.

Jesper TMedlem sedan nov. 20017 058 inlägg
#4

Tycker att det ser ut som att du har en strulig databasstruktur. Att öppna och stänga databasen så många gånger får sidan att bli seg. Tänk om, är mitt tips.

solbulleMedlem sedan mars 20014 998 inlägg
#5

Du kan ju iofs börja med att klippa bort den första öppningen av db.

Genererad på 390 ms · cache AV · v20260730165559-full.f96bc7eb