webForumDet fria alternativet

Nu har jag trasslat in mig(trådar)

ASP

4 svar · 154 visningar · startad av His Divine Shadow

Medlem sedan sep. 20004 079 inlägg
Frågan#1

Tog en paus på dom här tråd affärerna och började igen ikväll, jag har lite problem med koden, den visar inte svaren och tråd nivåerna korrekt, det är bäst jag lägger in hela koden så ni kan se:

<!--#include file="../connect.asp"-->
<%
Topic1 = Request.QueryString("Topic")
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open forum
SQL = "SELECT * FROM Posts WHERE '"& Topic1 &"' LIKE Topic AND Status = '1' Order by Date DESC"
set RS = conn.execute(SQL)

SQL3 = "SELECT * FROM Categories WHERE '"& Topic1 &"' LIKE ID"
set RS3 = conn.execute(SQL3)
%>
<html>
	<head>
	</head>
	<body>
		<center>
			<table width="100%" cellpadding="1" cellspacing="0" border="0">
				<tr>
					<td>
						<font face="Arial" size="4"><i>
								<%=RS3("Category")%>
							</i></font>
					</td>
					<td align="right">
						<a href="Post.asp?Topic=<%=Topic1%>&Status=1" target="Message"><img Border="0" src="Images\Newpost.jpg"></a>
					</td>
				</tr>
				<% Do until RS.EOF %>
				<tr>
					<td colspan="2">
						<font face="arial,tahoma" size="2"><img src="images/post.jpg">&nbsp; <a href="Message.asp?ID=<%=RS("ID")%>" target="Message">
								<%=RS("Subject")%>
							</a>&nbsp;-&nbsp;<%=RS("Author")%>&nbsp;<font face="arial,tahoma" size="1" color="<% if datediff("h",Datum1,now()) < 24 then %>Red<%ELSE%>BLue<%END IF%>">(<%=RS("Date")%> )</font>
							<br>
							<%
intId = RS("ID")
call getLoop(intId)
%>
					</td>
				</tr>
				<%
				RS.Movenext
				loop
				Conn.Close
				%>
			</table>
		</center>
	</body>
</html>
<%
sub getLoop(intId)
intI = intI + 5
strSQL = "select * from Posts where parent = '"& intId &"'"
set rs2 = conn.execute(strSQL)
while (not rs2.eof)
call getLoop(rs2("ID"))
%>
<img src="images/threader.jpg" width="<%=intI%>" height="2"> <font face="arial,tahoma" size="2">
	<img src="images/reply.jpg">&nbsp; <a href="Message.asp?ID=<%=RS2("ID")%>" target="Message">
		<%=RS2("Subject")%>
	</a>&nbsp;-&nbsp;<%=RS2("Author")%>&nbsp;<font face="arial,tahoma" size="1" color="<% if datediff("h",Datum1,now()) < 24 then %>Red<%ELSE%>Blue<%END IF%>">(<%=RS2("Date")%> )</font>
	<br>
	<%
rs2.movenext
wend
rs2.close
end sub

Set RS = Nothing
Set Conn = Nothing
%>
Medlem sedan sep. 20004 079 inlägg
#2

Jag tror problemet är hur RS("ID") definieras.
intId = RS("ID")
Om jag fattat det rätt så blir intId här, samma värde för hela tråden, alltså ID värdet för den ursprungliga posten, inte svaret till den, detta p.g.a. loopen inte är korrekt här och inget nytt värde definieras för intId efter varje gång som getLoop(intId) är klar.

------------------
Sprit löser inga problem. Men det gör inte mjölk heller.

T-bird 1200; GeForce 256 32MB; WinNT4/XP; 512MB RAM; Dialup

Medlem sedan sep. 20004 079 inlägg
#3

Tja, det funkade inte...
Ingen som vet hur jag ska få intId att definieras korrekt?
Alltså, uppdateras efter varje loop?

------------------
Sprit löser inga problem. Men det gör inte mjölk heller.

T-bird 1200; GeForce 256 32MB; WinNT4/XP; 512MB RAM; Dialup

Medlem sedan sep. 20004 079 inlägg
#4

buuhuuu!
*bump*

------------------
Sprit löser inga problem. Men det gör inte mjölk heller.

T-bird 1200; GeForce 256 32MB; WinNT4/XP; 512MB RAM; Dialup

Medlem sedan sep. 20004 079 inlägg
#5

Ingen som har en ide eller nånting att säga till om?
Är det nått annat som ni skulle vilja se för att veta mera?
Ska jag säga vilken del av koden som vad?

------------------
Sprit löser inga problem. Men det gör inte mjölk heller.

T-bird 1200; GeForce 256 32MB; WinNT4/XP; 512MB RAM; Dialup

254 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)