---
title: "Hjälp - Macces menyscript"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/89837-hjälp-macces-menyscript"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "timedia"
published: "2003-11-06T16:08:18.000Z"
updated: "2003-12-10T07:28:58.000Z"
replies: 14
views: 574
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/89837-hjälp-macces-menyscript"
---

# Hjälp - Macces menyscript

## #1 — timedia, 2003-11-06T16:08Z

Har lite svårt att börja anpassa Macces menyscript (ligger i scriptbanken). Nu skrivs hela innehållet ut precis som set står i db, men hur gör jag om jag t.ex. vill göra Artnr till en länk? 

Vet att detta är ett stort tungt script, men jag vill försöka göra en webbshop av detta. . eller är det dumt? 

```
<%Dim  intParentId,strParentId,arrLinks,intGrpId,Sublink,strClass,strBullet,qstLnkId,qstParentId,strPid

qstLnkId		=		Request.Querystring("lnkid")
qstParentId		=		Request.Querystring("parid")
scriptname		=		Request.ServerVariables("SCRIPT_NAME")
arrLinks		=		GetRows("SELECT page_id,parent_page_id,linktext FROM tbl_links ORDER BY orderid ")
intGrpId		=		1 'de länkar som ska vara på nivå ett är barn till grupp 1 (alltså parent_page_id i databasen är =1)

	

If Len(qstParentId)<1 AND IsArray(arrLinks) THEN ' om man inte har querystring så öppnas den första länken automatiskt
	For I = 0 To Ubound(arrLinks,2)
		qstLnkId =  arrLinks(0,I)
		qstParentId =arrLinks(0,I)
		IF intGrpId = arrLinks(1,I) THEN Exit For
	Next
END IF	

Response.Write "<HTML><HEAD><STYLE TYPE=""text/css"">"&VbCrlf
Response.Write ".catlink      {color: #3A3A3A; font-family: verdana,arial; font-size: 10px; text-decoration: none;}"&VbCrlf
Response.Write ".sublink      {color: #3A3A3A; font-family: verdana,arial; font-size: 10px; text-decoration: none;}"&VbCrlf
Response.Write ".catlinkactive{color: #000000; font-family: verdana,arial; font-size: 10px; text-decoration: none; Font-weight:bold;}"&VbCrlf
Response.Write ".sublinkactive{color: #000000; font-family: verdana,arial; font-size: 10px; text-decoration: none; Font-weight:bold;}"&VbCrlf
Response.Write "</STYLE></HEAD><BODY>" & VbCrlf

Response.Write "<table border='0' width='100%'><tr><td width='29%' valign='top' align='left'>"

If IsArray(arrLinks) Then
  Response.Write "<br><br><TABLE border='0' cellspacing='0' cellpadding='1' width='100%' align='center'>"&VbCrlf		
	Call LinkTree(intGrpId,0)
  Response.Write "</TABLE>"
ELSE
	 Response.Write "Finns inga länkar"&VbCrlf	
END IF

arrArtiklar = GetRows("SELECT Artnr, Namn5, Storlek, Storlektyp, Farg, Ant_forp, Ovrigt FROM varor Where page_id="&qstLnkId)
Response.Write "</td>"

Response.Write "<td width='71%' valign='top' align='left'>"
If IsArray(arrArtiklar) THEN

Response.Write("<br><TABLE border=0><tr><td>Art.nr</td><td>Namn</td><td>Storlek</td><td>S-typ</td><td>Färg</td><td>Antal/pack</td><td>Beställ</td></tr>")

For u = 0 To Ubound(arrArtiklar,2)
Response.Write("<TR>")
	For m = 0 To Ubound(arrArtiklar,1)	
	Response.Write("<TD bgcolor='#C0C0C0'>"&arrArtiklar(m,u)&"</a></TD>")
	Next
Response.Write("</TR>")		
	Next
	Response.Write("</TABLE>")
END IF

Response.Write "</td></tr></table></BODY></HTML>"

Sub LinkTree(intParent,intIndent) :	Dim X,Z
		For X = 0 To Ubound(arrLinks,2)		
			If arrLinks(1,X) = intParent AND (Cstr(arrLinks(1,X))=Cstr(intGrpId) OR instr(","&qstParentId&",",","&intParent&",")>0) Then
			strPid=""
				Response.Write VbCrlf & "<TR><TD bgcolor='#ffffff'>"	
				For Z = 1 To intIndent									  
				  Response.Write("<img src='1px.gif' width='6' height='8' align='left'>")				 
				Next			
				IF intIndent=0 then 
				 Sublink=arrLinks(0,X)	
					 IF cstr(qstLnkId)  =  cstr(arrLinks(0,X)) THEN 
					 strClass  =  "catlinkactive"
					 strBullet =  "<img src='icon-active-dot.gif' border=0 align='left'>"
					 ELSE 
					 strClass  =  "catlink"
					 strBullet =  "<img src='icon-inactive-dot.gif' border=0 align='left'>"
					 END IF
				ELSE							
				For Z = 1 To intIndent : strPid=strPid&split(qstParentId,",")(Z-1) & "," : next
				 Sublink=strPid & arrLinks(0,X)
					 IF cstr(qstLnkId)  =  cstr(arrLinks(0,X)) THEN 
					 strClass  =  "sublinkactive"
					 strBullet =  "<b>- </b>"'kan även vara bild som ovan
					 ELSE 
					 strClass  =  "sublink"
					 strBullet =  "- "
					 END IF
				END IF				
				Response.Write("<a href='"&scriptname&"?lnkid="&arrLinks(0,X) &"&parid="&Sublink&"' class='"&strClass&"'>"&VbCrlf)	
				Response.Write(strBullet & arrLinks(2,X)& "</a></TD></TR>"&VbCrlf)
			
				Call LinkTree(arrLinks(0,X),intIndent + 1)			
			End If
		Next 
End Sub

Function GetRows(ByVal SQL)
		Dim arrRecords, rs	
		Set Connection = Server.CreateObject("ADODB.Connection")
		Connection.Open ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.Mappath("..\sys\dbgam.mdb"))		
		Set rs = Connection.Execute(SQL)
		If Not rs.BOF Or Not rs.EOF Then
			arrRecords = rs.GetRows()
		ELSE
			arrRecords = ""
		End If		
		rs.Close
		Set rs = nothing
		Connection.Close
		Set Connection = nothing
		GetRows = arrRecords 
End Function

%>
```

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

## #2 — timedia, 2003-11-11T15:09Z

Ingen som kan hjälpa?

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

## #3 — @nders, 2003-11-16T08:15Z

Snälla, förminska inte koden till oläsbarhet. :)

\- - - - - -

Var någonstans i koden skriver du ut Artnr som du vill ha som en länk?

\- - - - - -

Till sist: att ingen svarat i denna tråd ännu, beror på att det inte har varit möjligt. Läs mer [här](http://www.webforum.nu/showthread.php?s=&postid=743321#post743321)

Mvh

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

## #4 — atra, 2003-11-16T13:46Z

jag kan inte se 
noooooooooooooooooo
Matrix=)

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

## #5 — atra, 2003-11-16T13:47Z

vart ligger scriptbanken????
kan man ladda upp te dem???

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

## #6 — Macce, 2003-11-16T15:04Z

Kanske är det så du menar ?

GetRows("SELECT page_id,parent_page_id,linktext,**artnummer**  FROM tbl_links ORDER BY orderid ")

Response.Write("\<a href='"&scriptname&"?lnkid="&arrLinks(0,X) &"&parid="&Sublink&**"&artnr="&arrLinks(3,X)**  &"' class='"&strClass&"'\>"&VbCrlf)

mvh Macce

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

## #7 — timedia, 2003-11-18T15:11Z

tyvärr dålig på array

Till @nders:
Har förstorad koden igen :)
Förstår tyvärr inte mycket av arrays, men tror att följande kod skriver ut Artnr m.m.

```
For u = 0 To Ubound(arrArtiklar,2)
Response.Write("<TR>")
	For m = 0 To Ubound(arrArtiklar,1)	
	Response.Write("<TD bgcolor='#C0C0C0'>"&arrArtiklar(m,u)&"</a></TD>")
	Next
Response.Write("</TR>")		
	Next
	Response.Write("</TABLE>")
END IF
```

Till atra:
Scriptbanken ligger här på webforum. Se länk: <http://www.webforum.nu/forumdisplay.php?s=&forumid=148>

Till Macce:
Var nog inte precis vad jag var ute efter. I detta fall ska Artnr skicka sig själv till en annan frame med kundkorg. Typ:

```
<a href="shBasket.asp?addItem=<%=Rs.Fields("Artnr").Value%>
```

..,men det jag egentligen undrar är hur jag plockar ut värden från array så jag kan ändra dom innan dom skrivs ut?

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

## #8 — timedia, 2003-11-20T15:07Z

Inga svar :(
..så jag försöker ändra lite :)

Nu skriver den ut produkterna på en snygg tabellrad. Om jag vill skriva ut ett tomt formulärfält (där användaren skriver antal) med en 'beställ-knapp' efter varje vara. Hur skriver jag in det i befintlig kod?

```
For u = 0 To Ubound(arrArtiklar,2)
Response.Write("<TR>")
	For m = 0 To Ubound(arrArtiklar,1)	
	Response.Write("<TD bgcolor='#C0C0C0'>"&arrArtiklar(m,u)&"</a></TD>")
	Next
Response.Write("</TR>")		
	Next
	Response.Write("</TABLE>")
END IF
```

PS! Vore tacksam om någon som satt på en bra länk om arrays/getrows vidarebefodrade denna till mig. Har sökt på webforum m.m. utan att hitta nån bra info om detta.

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

## #9 — timedia, 2003-11-21T10:57Z

Ingen vet?

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

## #10 — @nders, 2003-11-21T12:06Z

@nders wrote on 2003-11-20 20:56:
Så här kanske?

```
	For m = 0 To Ubound(arrArtiklar,1)	
		Response.Write("<TD bgcolor='#C0C0C0'>"&arrArtiklar(m,u)&"</a>")
		Response.Write("<form action=""sida.asp?artikel=" & &arrArtiklar(m,u) & """ method=""post"" style=""padding: 0px; margin: 0px;"">")
		Response.Write("<input type=""text"" size=""3"" maxlength=""4"" name=""amount""><input type=""submit"" value=""OK""></form>")
		Response.Write("</TD>")
	Next
```

mvh

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

## #11 — timedia, 2003-11-21T14:37Z

Tack Anders såhär blev det: 

```
If IsArray(arrArtiklar) THEN
Response.Write("<br><TABLE border=0><tr><td>Art.nr</td><td>Namn</td><td>Storlek</td><td>S-typ</td><td>Färg</td><td>Antal/pack</td><td>Varuinfo</td><td>Fakta</td></tr>")

For u = 0 To Ubound(arrArtiklar,2)
Response.Write("<TR>")
	For m = 0 To Ubound(arrArtiklar,1)	
	Response.Write("<TD bgcolor='#C0C0C0'>"&arrArtiklar(m,u)&"</a></TD>")
	Next
		Response.Write("<TD bgcolor='#C0C0C0'>")
		Response.Write("<form mehtod='POST' action='?.asp'>")
		Response.Write("<input type='text' name='antal' size='2'>&nbsp;")
		Response.Write("<input type='submit' value='Lägg till'>")
		Response.Write("</form>")
		Response.Write ("</TD>")
Response.Write("</TR>")		
	
	Next
	Response.Write("</TABLE>")
END IF
```

..men jag har fortfarande problem med att förstå hur arrays funkar :(
Nu har jag lagt till ett fält, men om jag ville göra ett av värderna i arrArtiklar till en länk - HUR gör man det?

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

## #12 — Macce, 2003-11-21T22:08Z

Kan du utveckla frågan lite mer ?

Mvh Macce

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

## #13 — timedia, 2003-11-24T10:51Z

OK. Utvecklar frågan lite :)

I arrArtiklar hämtas Artnr:

```
arrArtiklar = GetRows("SELECT Artnr, Namn5, Storlek, Storlektyp, Farg, Ant_forp, Ovrigt FROM varor Where page_id="&qstLnkId)
```

 Sen skrivs alla poster från db ut såhär 

```
For u = 0 To Ubound(arrArtiklar,2)
Response.Write("<TR>")
	For m = 0 To Ubound(arrArtiklar,1)	
	Response.Write("<TD bgcolor='#C0C0C0'>"&arrArtiklar(m,u)&"</a></TD>")
	Next
		Response.Write("<TD bgcolor='#C0C0C0'>")
		Response.Write("<form mehtod='POST' action='?.asp'>")
		Response.Write("<input type='text' name='antal' size='2'> ")
		Response.Write("<input type='submit' value='Lägg till'>")
		Response.Write("</form>")
		Response.Write ("</TD>")
Response.Write("</TR>")		
	
	Next
	Response.Write("</TABLE>")
END IF
```

 , men frågan är alltså hur jag t.ex. kan göra en länk av Artnr?

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

## #14 — timedia, 2003-12-09T14:55Z

Ingen  :q 
Eller går det fortfarande inte att besvara tråden?  :x (bugg)

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

## #15 — Macce, 2003-12-10T07:28Z

Response.Write("\<form mehtod='POST' action='minkundvagnssida.asp?artnr="&arrArtiklar(0,u)&"'\>")

Mvh

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/89837-hjälp-macces-menyscript
