---
title: "Behöver hjälp med forum koder"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/44323-behöver-hjälp-med-forum-koder"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "voigtann1"
published: "2002-05-22T11:25:34.000Z"
updated: "2002-05-22T20:10:55.000Z"
replies: 16
views: 382
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/44323-behöver-hjälp-med-forum-koder"
---

# Behöver hjälp med forum koder

## #1 — voigtann1, 2002-05-22T11:25Z

Har ett forum som ungefär ser ut så här:
\--- forums
\[ID\] - Räknare
\[Namn\] - Text
\[Topic\] - JA/NEJ
\[info\] - PM
\[forumid\] - Tal

Jag har gjort så om Topic är JA så ska den vara en rubrik annars ska den komma där FORUMID vara det ID topicen är.. hur gör man det???

Det var min första fråga.
Hur gör man så att forumet ska räkna antal SVAR och antal INLÄGG????

Permalänk: https://www.webforum.nu/p/44323

## #2 — toha, 2002-05-22T11:34Z

Första frågan: Varför inte helt enkelt bara låta Topic vara ett sträng-fält? Om det är null eller nollängd så visas id:t.

Andra frågan: Du lägger till en främmande nyckel som pekar på ett annat foruminlägg. Om det är Null (eller noll) så är det en ny tråd annars pekar det på en tråd (eller ett annat inlägg om du ska ha forumet multitrådat).

Sedan får du trixa med lite sql-frågor som jag inte kan i huvudet men du får lägga en join som joinar trådarna med dess svar. Dvs tab1.ID = tab2.ParentID. Hoppas du förstår...

Permalänk: https://www.webforum.nu/p/680594

## #3 — voigtann1, 2002-05-22T11:35Z

Fattar inte riktigt första svaret... den andra svaret ger lite mer men känns ändå lite för lite..

Permalänk: https://www.webforum.nu/p/680596

## #4 — toha, 2002-05-22T11:45Z

Tror jag missförstod dina frågor....

Med första frågan ska du alltså visa trådens rubrik om det är ett svar, eller?

Andra frågan hade du ju redan det där fältet jag sa att du skulle lägga till. **\[forumid\]** Ska se om jag kan illustrera med ett sql-uttryck. I'll be back! :)

Permalänk: https://www.webforum.nu/p/680602

## #5 — voigtann1, 2002-05-22T11:48Z

Första frågan ex:

WEBB(ID1) \<- Det är rubriken gjorde som du sa sätta den som 0
 \> ASP \<- Topics som ska vara under WEBB som har ID=1
 \> PHP \<- Topics som ska vara under WEBB som har ID=1
NY RUBRIK(ID20)
 \> Lite av varje

Permalänk: https://www.webforum.nu/p/680603

## #6 — voigtann1, 2002-05-22T12:08Z

EN FRÅGA TILL!
Jag tror jag har kommit på en lösning till det här men jag vet inte hur jag ska kunna göra det:

På forumet ska det finnas "admins" eller "Moderator" som det heter här. Jag hade tänkt mej med ett tal-system eller kanske ID system för dom som är admins där

I medlem fliken så har jag en som heter admin (tal)
hur ska jag göra så att tex Pelle är moderator på ASP och PHP medan olof är moderor för ASP bara... tack på förhand

Permalänk: https://www.webforum.nu/p/680609

## #7 — voigtann1, 2002-05-22T12:14Z

En sak till kan man får ner denna kod på något sätt?? för det blir rätt mycket rs som är öppna....

```
<%
SQL = "select * from forums"
Set RS = Databas.Execute(SQL)
Do While NOT RS.EOF
	SQL = "select count(*) AS Count_inlagg from topics where forum_id = " & RS("id")
	Set RS_count = Databas.Execute(SQL)
	SQL = "select count(*) AS Count_inlagg2 from topics where svar_id = " & RS("id")
	Set RS_count2 = Databas.Execute(SQL)
	If RS_count("count_inlagg") <> 0 then
		SQL = "select datum from topics where forum_id = " & RS("id")
		SQL = SQL & " order by datum DESC"
		Set RS_senaste = Databas.Execute(SQL)
		SQL = "select amne from topics where forum_id = " & RS("id")
		SQL = SQL & " order by datum DESC"
		Set RS_amne = Databas.Execute(SQL)
		SQL = "select skribent from topics where forum_id = " & RS("id")
		SQL = SQL & " order by datum DESC"
		Set RS_skribent = Databas.Execute(SQL)
	End if
%>
```

Permalänk: https://www.webforum.nu/p/680612

## #8 — toha, 2002-05-22T12:22Z

Kom på att du kanske vill ha med datum för inläggen. Hur som helst så tror jag att jag kom fram med ett bra sql-uttryck för att få fram inläggen som du beskrev:

```
select
	forum.ID threadID,
	*,
	(select count(f.ID) from forum f where forum.ID = f.forumid) AntalSvar
from
	forum
where
	forumid = 0

UNION

select
	f2.ID threadID,
	f1.*,
	(select count(f.ID) from forum f where f1.ID = f.forumid) AntalSvar
from
	forum f1
	INNER JOIN
	forum f2
	ON
	f1.forumid = f2.ID
where
	f1.forumid > 0
order by
	threadID
```

 

PS. Det är PL/SQL.

Permalänk: https://www.webforum.nu/p/680616

## #9 — voigtann1, 2002-05-22T12:34Z

ehh... fattar inte mycket! har aldrig använt inner join eller vad det var.....

jag kan visa min kod:

```
<%
SQL = "select * from forums"
Set RS = Databas.Execute(SQL)
Do While NOT RS.EOF
	SQL = "select count(*) AS Count_inlagg from topics where forum_id = " & RS("id")
	Set RS_count = Databas.Execute(SQL)
	SQL = "select count(*) AS Count_inlagg2 from topics where svar_id = " & RS("id")
	Set RS_count2 = Databas.Execute(SQL)
	If RS_count("count_inlagg") <> 0 then
		SQL = "select datum from topics where forum_id = " & RS("id")
		SQL = SQL & " order by datum DESC"
		Set RS_senaste = Databas.Execute(SQL)
		SQL = "select amne from topics where forum_id = " & RS("id")
		SQL = SQL & " order by datum DESC"
		Set RS_amne = Databas.Execute(SQL)
		SQL = "select skribent from topics where forum_id = " & RS("id")
		SQL = SQL & " order by datum DESC"
		Set RS_skribent = Databas.Execute(SQL)
	End if
%>

<% if rs("forumid") = "0" then %>
RUBRIKEN: <b><%=RS("namn")%></b><br>
<%else %>
 >> <a href="readforum.asp?id=<%rs("ID")"><%=RS("namn")%></a><br>
<%end if%>
```

Permalänk: https://www.webforum.nu/p/680624

## #10 — toha, 2002-05-22T12:56Z

Verkar lite jobbigt med alla de där anropen när det bara behövs ett.

Permalänk: https://www.webforum.nu/p/680635

## #11 — Gein, 2002-05-22T13:09Z

angående frågan med admins.
sätt id's för alla olika delar, inte någonstans i koden, utan på ett papper eller nånstans så att du vet vad delarna har för siffra
om du lägger till en del, ska den ha siffran som föregående hade 
\* 2

ASP = 1
PHP = 2
Perl = 4
Python = 8
etc

sen summerar man varje dels siffra för att lägga till hos administratören. Ska pelle vara admin för PHP och Perl så ska han ha rättigheten 6 ( 2+4 ).

för att sedan se vad administratören har för rättigheter:

```
admtal = Pelles_rättigheter 'i detta fall 6
tmp = 16
Dim admarray(8) 
admarray(1)=0
admarray(2)=0
admarray(4)=0
admarray(8)=0
Do until admtal < 1

tmp = tmp / 2
if int(admtal) >= tmp then
	admtal = admtal - tmp
	admarray(tmp) = 1
end if
Loop
```

kör man det så blir admarray(2) och admarray(4) satt till 1, dvs han har rättigheter där (php och perl)
svårt?, kanske finns ett smidigare sätt, men så har jag iaf löst det på ett ställe, dessutom e jag skitdålig på att förklara.. hoppas du förstår idén iaf :)

Permalänk: https://www.webforum.nu/p/680644

## #12 — voigtann1, 2002-05-22T13:14Z

JAG GER UPP SNART! argh! har inte fått något att fungera som jag vill! argh!!! klupiga koder och blääää! Behöver STOOOR hjälp med denna:

```
<%
Set Databas = Server.CreateObject("ADODB.Connection")
MdbFilePath = Server.MapPath("db/forum.mdb")
Session("dbasepath") = "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & MdbFilePath & ";"
Databas.Open Session("dbasepath")
%>
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
<!--
.mess { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10px; color: #000000; padding-top: 3px; padding-right: 3px; padding-bottom: 3px; padding-left: 3px; clip:  rect(   )}
.topic { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10px; color: #FFFFFF; padding-top: 3px; padding-right: 3px; padding-bottom: 3px; padding-left: 3px; clip: rect( ) }
a {  font-weight: bold; font-variant: normal; text-transform: capitalize; color: #000000; text-decoration: underline}
-->
</style>
</head>
<body bgcolor="#534741" text="#000000">
<table width="700" border="1px" cellspacing="0" cellpadding="0" align="center" bordercolor="#000000">
  <tr bgcolor="#1B1411"> 
    <td width="50" class="topic">&nbsp;</td>
    <td width="360" class="topic"> Forum</td>
    <td width="45" class="topic" bgcolor="#1B1411" align="center">Inl&auml;gg</td>
    <td width="45" class="topic" align="center">Svar</td>
    <td width="200" class="topic">Senaste Inlägget</td>
  </tr>
<%
SQL = "select * from forums order by ID"
Set RS = Databas.Execute(SQL)
Do While NOT RS.EOF
	SQL = "select count(*) AS Count_inlagg from topics where forum_id = " & RS("id")
	Set RS_count = Databas.Execute(SQL)
	SQL = "select count(*) AS Count_inlagg2 from topics where svar_id = " & RS("id")
	Set RS_count2 = Databas.Execute(SQL)

	SQL = "select admin from members as admin WHERE "& rs("forumid") & " > 1"
	Set rs2 = Databas.Execute(SQL)

	SQL = "select username from members as users"
	Set rs3 = Databas.Execute(SQL)

	If RS_count("count_inlagg") <> 0 then
		SQL = "select datum from topics where forum_id = " & RS("id")
		SQL = SQL & " order by datum DESC"
		Set RS_senaste = Databas.Execute(SQL)
		SQL = "select amne from topics where forum_id = " & RS("id")
		SQL = SQL & " order by datum DESC"
		Set RS_amne = Databas.Execute(SQL)
		SQL = "select skribent from topics where forum_id = " & RS("id")
		SQL = SQL & " order by datum DESC"
		Set RS_skribent = Databas.Execute(SQL)
	End if
%>

<% if rs("forumid") = "0" then %>
  <tr bgcolor="#663333"> 
    <td colspan="5" height="20"><font class="topic"><b><%=RS("namn")%></b></font></td>
  </tr>

<%else %>
  <tr bgcolor="#918781"> 
    <td class="mess" bgcolor="#C0BAB5" align="center"> [NY] </td>
    <td class="mess"><a href="forum2.asp?id=<%=RS("id")%>"><%=RS("namn")%></a><br>
      <%=RS("info")%><br>
      Forumet leds av: <b>
<%
				DO UNTIL rs3.EOF
		IF (rs2("admin") AND rs("forumid")) > 1 then
		response.write ""&rs3("username") &" - "
		else
		end if
		Rs3.MoveNext
		loop
%></b><br>
    </td>
    <td class="mess" bgcolor="#C0BAB5" align="center"> <%=RS_count("count_inlagg")-RS_count2("count_inlagg2")%> </td>
    <td class="mess" bgcolor="#C0BAB5" align="center"> <%=RS_count2("count_inlagg2")%> </td>
    <td class="mess"><%If RS_count("count_inlagg") <> 0 then Response.write RS_senaste("datum") else response.write "-"%><br>
      <b>Tråd:</b>   <%If RS_count("count_inlagg") <> 0 then Response.write RS_amne("amne") else response.write "-"%><br>
      <b>Av:</b> <%If RS_count("count_inlagg") <> 0 then Response.write RS_skribent("skribent") else response.write "-"%></td>
  </tr>

<%end if%>
  <%
set recset = nothing
Set RS_count = Nothing
Set RS_senaste = Nothing
Set RS_count2 = Nothing

RS.MoveNext
Loop
Set RS = Nothing
%>
</table>
</body>
</html>
```

Där! snälla .. börja snart gråta

Permalänk: https://www.webforum.nu/p/680648

## #13 — voigtann1, 2002-05-22T15:12Z

hjälp! suttit sedan det sista posten och har fortfarande inte listat ut hur jag ska göra..

Permalänk: https://www.webforum.nu/p/680701

## #14 — voigtann1, 2002-05-22T15:49Z

ingen som kan hjälpa mej????

Permalänk: https://www.webforum.nu/p/680719

## #15 — voigtann1, 2002-05-22T16:00Z

Har fixat med följden nu tror jag...
2 problem kvar:
1 - Moderatorer
2 - Nytt Sen Senaste gången du var här?

Permalänk: https://www.webforum.nu/p/680725

## #16 — voigtann1, 2002-05-22T19:19Z

snälla hjälp mej... har provat med "mitt binäratal" som brukade fungera men nu går det inte alls =(((

Permalänk: https://www.webforum.nu/p/680790

## #17 — voigtann1, 2002-05-22T20:10Z

jag fortsätter med problem... nu tycks det inte fungera med
svar och inlägg saken på sidan..
Kan någon hjälpa mej??? är det ingen som har gjort något sånt här innan????

Permalänk: https://www.webforum.nu/p/680830

---

Tråden på webben: https://www.webforum.nu/amne/asp/44323-behöver-hjälp-med-forum-koder
