---
title: "rekursiv kod"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/114946-rekursiv-kod"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Eclipse"
published: "2004-11-02T15:41:42.000Z"
updated: "2004-11-04T12:13:04.000Z"
replies: 7
views: 577
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/114946-rekursiv-kod"
---

# rekursiv kod

## #1 — Eclipse, 2004-11-02T15:41Z

```
SQL = "SELECT a.intID, a.intParentID, a.strName, a.strURL, a.bolView " _ 
& ", b.intID, b.intParentID, b.strName, b.strURL, b.bolView " _
& ", c.intID, c.intParentID, c.strName, c.strURL, c.bolView " _
& " FROM (([catalogueSE] as a " _
& " LEFT JOIN [catalogueSE] as b on b.intParentID = a.intID) " _
& " LEFT JOIN [catalogueSE] as c on c.intParentID = b.intID) " _
& " ORDER BY a.strName, b.strName, c.strName;"

Resultat:
ID: 3 Name: Abbacadabra ParentID: 0 Add to this menu
ID: 5 Name: add me ParentID: 3 Add to this menu
ID: 1 Name: ddd ParentID: 0 Add to this menu
ID: 2 Name: krabban ParentID: 0 Add to this menu
ID: 4 Name: krabban nummer tre ParentID: 0 Add to this menu
ID: 6 Name: zzz ask me mooore!! ParentID: 5 Add to this menu
```

Denna koden finns och fungerar.

Jag undrar nu hur jag kan få detta att fungera ihop med Dtree??

```
d = new dTree('d');
d.add(0,-1,'Produktkatalog');
[b]d.add(1,0,'Elborstar', '/admin/catalogueSE/index.asp');[/b]
d.add(2,0,'Borsthållare', '/admin/catalogueSE/index.asp');
d.add(3,0,'Släpringar', '/admin/catalogueSE/index.asp');
d.add(4,0,'Lindningstråd', '/admin/catalogueSE/index.asp');
d.add(5,0,'Impregneringslack', '/admin/catalogueSE/index.asp');
d.add(6,0,'Ingjutningsmassa', '/admin/catalogueSE/index.asp');
d.add(7,0,'Kondensatorer', '/admin/catalogueSE/index.asp');
d.add(8,0,'Termokontakter', '/admin/catalogueSE/index.asp');
d.add(9,0,'Termistorer', '/admin/catalogueSE/index.asp');
[b]d.add(10,1, 'Silvergrafitborstar','/v2/se_products/silvergraphite/index.asp');[/b]
d.add(11,2, 'Borsthållare','/v2/se_products/brushholders/index.asp');
d.add(12,3, 'Släpringar','/v2/se_products/sliprings/index.asp');
d.add(13,4, 'Lindningstråd','/v2/se_products/winding/index.asp');
d.add(14,5, 'Impregneringslack','/v2/se_products/lack/index.asp');
d.add(15,6, 'Ingjutningsmassa','/v2/se_products/lack/index.asp');
d.add(16,7, 'Startkondensatorer','/v2/se_products/start/index.asp');
d.add(17,8, 'Termokontakter','/v2/se_products/termokontakter/index.asp');
[b]d.add(18,1, 'Koppargrafitborstar','/v2/se_products/coppergraphite/index.asp');[/b]
d.add(19,7, 'Driftkondensatorer','/v2/se_products/drift/index.asp');
[b]d.add(20,1, 'Elektrografitborstar','/v2/se_products/electrographite/index.asp');[/b]
d.add(21,7, 'Elektrolytkondensatorer','/v2/se_products/elektrolyt/index.asp');
d.add(22,7, 'Belysningskondensatorer','/v2/se_products/belysning/index.asp');
document.write(d);
```

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

## #2 — Jesper T, 2004-11-02T17:41Z

Den behöver inte vara rekursiv ifrån databasen, den fixar det i js-scriptet. Se till att id och parentid hamnar rätt så hamnar de rätt.
Denna funkar finfint för mig:

```
Sub dtree(objConn, SQL, parentid)
Dim rs, strSQL
Set rs = objConn.Execute(SQL)
	
	Do Until rs.EOF																											  
		Response.Write "d.add("& rs(0) &","& rs(1) &",'"& rs(2) &"','"& rs(3) &"');"& vbcr
	rs.Movenext
	Loop
rs.close : set rs = nothing 
objConn.close : set objConn = nothing	
End sub
SQL="Select id, parentid,strName,strUrl from tabell order by strName"
dTree objConn,SQL,0
```

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

## #3 — Eclipse, 2004-11-03T08:54Z

Hmmm!!

Din kåd är ju mycket bättre än den jag har...!? Tror jag!!

Det fungerade jättebra! Jag förstår dock inte riktigt *hur* det fungerar, men det kan jag leva med!

\*\*\*
Jag undrar, hur gör du ditt administrativa gränssnitt? Jag menar, för att lägga till, redigera och ta bort rubriker?

Man kan ju tänka sig att man har textlänkar på något vis...

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

## #4 — Jesper T, 2004-11-03T10:23Z

> **Eclipse skrev:**
>
> Jag undrar, hur gör du ditt administrativa gränssnitt? Jag menar, för att lägga till, redigera och ta bort rubriker?
> 
> Man kan ju tänka sig att man har textlänkar på något vis...

Det känns ju som en hel vetenskap, vad menar du?

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

## #5 — Eclipse, 2004-11-03T12:19Z

Man måste manipulera rubrikerna på nåt vis, men jag har löst det nu, rätt snyggt dessutom.

Jag är inte färdig, men om du vill kan jag föklara.

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

## #6 — Eclipse, 2004-11-03T12:24Z

```
SQL = "SELECT a.intID, a.intParentID, a.strName, a.strURL, a.bolView " _ 
	& " FROM [" & myTable & "] as a " _
	& " ORDER BY a.strName;"
set mySQL = Conn.Execute(SQL)
IF NOT mySQL.EOF THEN listMyMenu = mySQL.GetRows()

***

' ## LOOP THROUGHT MENUS
IF IsArray(listMyMenu) THEN
	myRow = listMyMenu
	FOR j = 0 TO UBound(myRow,2)
		response.write "d.add(" & myRow(0,j) & "," & myRow(1,j) & ",'" & myRow(2,j) & "', '" _
		& request.serverVariables("PATH_INFO") & "?ID=" &myRow(0,j) & "');" & vbCRLF 
	NEXT
END IF
```

kåden genererear sidor i stil med:
/admin/catalogueSE/index.asp?ID=6

och utifrån det kan man redigera post med ID 6. Man kan lägga till och ta bort osv.

I just detta fallet ska jag ladda upp PDF:er som kopplas till varje rubrik, men det kan ju lika gärna vara bilder, text eller vad som helst!

Det var väldigt lite kod för att få väldigt mycket gjort, måste jag säga. Snubben som skrev D-tree visste nog vad han gjorde!

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

## #7 — Eclipse, 2004-11-03T15:37Z

Jag har implementerat menyn på webbplatsen, men vissa rubrikval blir ju markerade på varje sida på något slags mer eller mindre omotiverad sätt.

Kan man bli av med det på något vis!? Via kod...??

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

## #8 — Jesper T, 2004-11-04T12:13Z

```
d = new dTree('d');
[b]d.config.useSelection= false;[/b]
d.add(0,-1,'Tree example','javascript: void(0);');
d.add(1, 0,'Node 1','javascript:void(0);');

......

document.write(d);
```

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/114946-rekursiv-kod
