webForumDet fria alternativet
Logga in / Bli medlem

Problem med utskiften av array

ASP

4 svar · 259 visningar · startad av jimpa

Medlem sedan jan. 2001361 inlägg
Trådstart#1

Hej,

Håller på med att forum. Koden nedan skriver ut först Forumkatgorin och sedan tillhörande forum. Så långt inga problem :) Utan problemet är när ett forum innehåller fler än en moderator, då skrivs forumet ut lika många gånger som det finns moderator. Jag vill att varje moderator ska separeas med ett komma.

Så här skrivs det ut nu
----------
Kategori1
----------
Forumnamn1 . ModeratorNisse
Forumnamn1 - ModeratorKalle
Forumnamn1 - ModeratorLasse
---------
Kategori2
Forumnamn2 - ModeratorLars
Forumnamn2 - ModeratorAnders

osv....

Jag vill att det ska bli
----------
Kategori1
----------
Forumnamn1 . ModeratorNisse,ModeratorKalle,ModeratorLasse
---------
Kategori2
---------
Forumnamn2 - ModeratorLars,ModeratorAnders

Usch.. vad dåligt jag förklarar, är det nån som förstår?
Koden ser ut så här:

Dim RS, arrRecs, i, j, TmpID

SQL = "SELECT fCategories.*, Forums.*, fModerator.*, Members.* FROM (((fCategories LEFT JOIN Forums ON fCategories.CategoryID = Forums.fCatID) LEFT JOIN fModerator ON (Forums.ForumID = fModerator.mForumID)) LEFT JOIN Members ON (fModerator.mMemberID = Members.MemberID)) ORDER BY fCategories.CatName, Forums.fName ASC"
Set RS = Conn.Execute(SQL) 

If RS.EOF Then 
RS.Close : Set RS = Nothing 
Conn.Close : Set Conn = Nothing
Response.Write "" 
 
Else 

arrRecs = RS.GetRows() 
RS.Close : Set RS = Nothing 
Conn.Close : Set Conn = Nothing 
TmpID = 0
xTmp = 0
  %>
  <table border="0" cellpadding="0" cellspacing="0" width="100%" height="79">
    <tr>
      <td width="100%" colspan="5" height="14"></td>
    </tr>
    <tr>
      <td background="../img/bg_list.jpg" width="3%" height="21"><span CLASS="WhiteSub">&nbsp;</span></td>
      <td background="../img/bg_list.jpg" width="60%" height="21"><span CLASS="WhiteSub">&nbsp;Forum</span></td>
      <td background="../img/bg_list.jpg" width="10%" height="21" align="center"><span CLASS="WhiteSub">&nbsp;Trådar</span></td>
      <td background="../img/bg_list.jpg" width="10%" height="21" align="center"><span CLASS="WhiteSub">&nbsp;Inlägg</span></td>
      <td background="../img/bg_list.jpg" width="17%" height="21" align="center"><span CLASS="WhiteSub">&nbsp;Moderator</span></td>
    </tr>
    <%
   for i = 0 to ubound(arrRecs,2)
       if TmpID <> clng(arrRecs(0,i)) then
    %>
    <tr>
      <td bgcolor="#E7E7E7" height="18"></td>
      <td colspan="4" bgcolor="#E7E7E7" height="18"><span CLASS="BlueSub"><%=arrRecs(1,i)%></span></td>
    </tr>
    <%
			TmpID = clng(arrRecs(0,i))
          for j = i to ubound(arrRecs,2)
              if TmpID <> clng(arrRecs(4,j)) then exit for
    %>
    <tr>
      <td align="center" valign="top"><b>»</b></td>
      <td><a CLASS="BlackSub" href="forum.asp?ForumID=<%=arrRecs(3,j)%>"><%=arrRecs(5,j)%></a><br><%=arrRecs(6,j)%></td>
      <td align="center" valign="top"><b><%=arrRecs(8,j)%></b></td>
      <td valign="top" align="center"><b><%=arrRecs(9,j)%></b></td>
      <td valign="top" align="center"><a href="../members/member.asp?memberID=<%=arrRecs(13,j)%>"><%=arrRecs(14,j)%></a></td>
    </tr>
    <%       	
          next
          end if
   next
End If
%>
  </table>
Medlem sedan mars 20015 287 inlägg
Medlem sedan jan. 2001361 inlägg
#3

Vart ska jag fylla i det i min kod?

Medlem sedan jan. 2001361 inlägg
#4

Tror jag blir tokig på detta, har provat allt snart.
Är det ingen som vet hur man implementerar en if-sats så att forumet skrivs ut en gång även om det finns fler än en moderator

Medlem sedan mars 20015 287 inlägg
#5

Du gör väl iofs redan nu en liknande manöver i din kod, vad det gäller kategorierna.
Anledningen till att jag inte skriver om din kod är för att jag tycker det är väldigt svårt att se vad som är vad iom att du använder en array som inte är direkt självförklarande.

262 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
121 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)