22. juli 2005 - 01:02Der er
7 kommentarer og 1 løsning
struktur til varegrupper / menu
Hej eksperter ;)
Jeg har et lille problem, jeg håber nogen kan hjælpe med...
Jeg har en database med varegrupper, der indeholder 3 felter: ItemGroupID (Autonumrering) ItemGroupName (Navn på varegruppe) ItemSubGroup (Ref. ItemGroupID på den gruppe denne er en undergruppe af)
Ideen med det er, at jeg vil (med 1 URL variabel) have mulighed for ubegrænset antal undergrupper
eksempel: ItemGroumName (ItemGroupID,ItemSubGroup) Følgende Gruppeliste skulle så kunne fremkaldes ved en URL variabel: Group=5
en udsøgning på den valgte gruppe herefter søge baglens gennem referencefeltet, og finde de forskellige grupper den valgte gruppe er en del af. Og til sidst søge den anden vej igen, hvor man "åbner" de forskellige relevante grupper og viser undergrupper.
Ja du skal lave en rekursiv søgning for at finde alt Du kan se et eksempel på en rekursiv søgning i forbindelse med tråde i debat indlæg her http://www.html.dk/scripts/asp/00015/ Det kan give dig en ide til hvordan du skal gøre, da du i princippet skal gøre det samme. Det eneste er at dine felter er lidt anderledes og det skal selvfølgelig rettes til derefter :o)
I teorien er det præcist det jeg skal have lavet... Men den skal bare kun "åbne" de tråde der har relevans.
eks. Hvis gruppekaldet er stationær (6,5) , skal den kun åbne grupperne Hardware,Computere,IBM. Der skal den ikke vise mig alle undergrupperne i software og hvad der ellers måtte være...
Jeg har fået den til at trække de grupper den skal bruge, og lægge dem i et array. Herefter burde det være præcis som dit første link. Men jeg får bare blank skærm Hvorfor ?
<!--#include file="Connections/SWshop.asp" --> <% Dim GroupRS Dim GroupRS_numRows GroupArray = Request.QueryString("Group") MainGroupVar = Request.QueryString("Group") Do until MainGroupVar = 0
Set GroupRS = Server.CreateObject("ADODB.Recordset") GroupRS.ActiveConnection = MM_SWshop_STRING GroupRS.Source = "SELECT SW_ItemGroups.ItemGroupID, SW_ItemGroups.ItemSubGroup FROM SW_ItemGroups WHERE (((SW_ItemGroups.ItemGroupID)=" & MainGroupVar & ")) " GroupRS.CursorType = 0 GroupRS.CursorLocation = 2 GroupRS.LockType = 1 GroupRS.Open() GroupRS_numRows = 0 GroupArray = (GroupRS.Fields.Item("ItemSubGroup").Value) & "," & GroupArray MainGroupVar = (GroupRS.Fields.Item("ItemSubGroup").Value) GroupRS.Close() Set GroupRS = Nothing Loop GroupArray = Split(GroupArray,",") Dim StructureRS Dim StructureRS_numRows arrID = "" arrSUB = "" arrNAME = "" For n = Lbound(GroupArray) to Ubound(GroupArray)
Set StructureRS = Server.CreateObject("ADODB.Recordset") StructureRS.ActiveConnection = MM_SWshop_STRING StructureRS.Source = "SELECT SW_ItemGroups.ItemGroupID, SW_ItemGroups.ItemGroupName, SW_ItemGroups.ItemSubGroup FROM SW_ItemGroups WHERE (((SW_ItemGroups.ItemSubGroup)=" & GroupArray(n) & ") AND ((SW_ItemGroups.FirmaID)='1000')) ORDER BY SW_ItemGroups.ItemGroupName " StructureRS.CursorType = 0 StructureRS.CursorLocation = 2 StructureRS.LockType = 1 StructureRS.Open()
function SubCheck(intID) For m = 1 to Ubound(arrID) If Cint(arrSUB(m)) = Cint(intID) Then Groups = Groups & "<ul><li>" & arrNAME(m) & SubCheck(arrID(m)) & "</li></ul>" End if Next end function
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.