webForumDet fria alternativet

Räkna antal svar i ett forum!

ASP

4 svar · 173 visningar · startad av KoTTeN

Medlem sedan sep. 20011 722 inlägg
Frågan#1

Tjenare!
Har sökt lite på hur man fixar så att man kan se hur många som svarat på ens inlägg i ett forum, men jag fattar inte ett piss... Nå me Select Count(*), men nä de går inte in i mitt huvud alls...

Om jag säger att min kod till forumet ser ut så här:

<% 'Öppnar databasen %>

<%	Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&server.mappath("data\prat.mdb")
	Set RecSet = Server.CreateObject("ADODB.Recordset") %>

<% 'Visa forum och dess inlägg %>
<% If Request.QueryString("prat") = "" Then %>

<%	Show = "SELECT * FROM inlagg WHERE Forumnamn = '" & Request.QueryString("forumid") & "' ORDER BY ID DESC"
	RecSet.Open Show, Connect, adOpenStatic, adLockOptimistic %>
	
<tr>
	<td width="43%">Rubrik</td>
	<td width="20%">Författare</td>
	<td width="15%">Datum</td>
	<td width="7%">Svar</td>
	</tr></table><BR>

<TABLE WIDTH="100%" BORDER="0" CELLSPACING="0" CELLPADDING="0">

<%	Do While Not RecSet.EOF %>

	<tr >
	<td width="43%"><a href="default.asp?prat=open&id=<% =RecSet("ID") %>"><% =RecSet("Rubrik") %></a></td>
	<td width="20%"><% =RecSet("Namn") %></a></td>
	<td width="15%"><% =RecSet("Datum") %></td>
	<td width="7%">???</td>
	</tr>

<% RecSet.MoveNext %>
<% Loop %>
</table>

Någon snäll själ som vill hjälpa mig med vad och hur man fixar detta???

Medlem sedan dec. 200012 464 inlägg
#2

Alla inlägg i ett forum:

Show = "SELECT COUNT(*) as antal FROM inlagg WHERE Forumnamn = '" & Request.QueryString("forumid") & "' ORDER BY ID DESC"
set rs = connect.execute(show)
response.write "Antal inlägg i detta forum " & rs("antal")

Om du vill veta antal svar på ett visst inlägg så beror det på hur dina tabeller är definierade. Hur vet man att ett inlägg är svar på ett annat inlägg?

------------------
essentitia preter non sans multiplicandum

Medlem sedan sep. 20011 722 inlägg
#3

Alla inlägg har ett id som räknare. Tex 134. Sen finns det ett speciellt fält som heter SvarsID, där alla svar lagrar samma nummer som trådens id är. Så alla svar till inlägg 134 har SvarsID 134.

Medlem sedan dec. 200012 464 inlägg
#4

Ok

Show = "SELECT COUNT(*) as antal FROM inlagg WHERE svarsid = 134 and Forumnamn = '" & Request.QueryString("forumid") & "' ORDER BY ID DESC"
set rs = connect.execute(show)
response.write "Antal svar på inlägget " & rs("antal")

eller du kanske har svarsid i en variabel.

------------------
essentitia preter non sans multiplicandum

Medlem sedan mars 20014 214 inlägg
#5

Vet inte om ddet är såhär du vill ha det men det finns ett annat sätt.

Du kan skapa ett nytt fält där du varje gång ett inlägg postas, lägger till 1. Sedan hämtar du bara det värdet, bär du ska visa.

279 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
141 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
142 ms — ändringar (db)