Vraag & Antwoord

Webprogrammeren & scripting

*.js en ASP

5 antwoorden
  • Hallo, Ik ben bezig met het maken van een website waar vier verschillende types gebruikers gedefineerd zijn. Elk van deze gebruiker heeft zijn eigen menu. Dit menu is gemaakt met een DHTML builder (*.js). Maar nu zit ik met het volgende probleem. Hoe kan ik er voor zorgen dat bijvoorbeeld wanneer een fleetmanger inlogt, dat deze dan het *.js menu krijgt die voor dit type gebruiker bestemd is. Ik denk zelf dat dit al in het login pagina gedefinieerd moet staan welk javascript menu er geladen moet worden voor deze gebruiker. Maar ik weet niet precies hoe ik dit voor elkaar kan krijgen. Hieronder heb ik een gedeelte van de ASP code afgebeeld: Set oNodeList = oXMLIn.GetElementsByTagname("USERTYPE") oNodeList.reset Set oCurrNode = oNodeList.NextNode() Session("*****_USERTYPE") = oCurrNode.Text 'Request("name") Set oNodeList = oXMLIn.GetElementsByTagname("USERCODE") oNodeList.reset Set oCurrNode = oNodeList.NextNode() Session("*****_USERCODE") = oCurrNode.Text Set oNodeList = oXMLIn.GetElementsByTagname("ISDRIVER") oNodeList.reset Set oCurrNode = oNodeList.NextNode() Session("*****_ISDRIVER") = oCurrNode.Text Set oNodeList = oXMLIn.GetElementsByTagname("ISFLEETMANAGER") oNodeList.reset Set oCurrNode = oNodeList.NextNode() Session("*****_ISFLEETMANAGER") = oCurrNode.Text If (Session("*****_USERTYPE") = "CUSTOMER") Then Response.Redirect("***pagina.asp?login=true") Else Response.Redirect("menu.asp") End If Response.End Else 'error in financials... Response.Write("Gebruiker/wachtwoord combinatie niet gevonden") Response.End End If Else Response.Write("Geen reactie vanuit ******") Response.End End If %> In de tekst hierboven heb ik enkele namen veranderd in wat sterretjes. Aangezien hier een bedrijfsnaam moet staan. Een Fleetmanager (beheerder) moet het volgende menu te zien krijgen: \beheerder\stmenu.js Hoe kan ik dit het beste aanpakken? Daniel
  • Je kan op basis van de rol het juiste bestand toevoegen aan de response. In pseudocode: [code:1:d4ba9cc698] If Rol_A Then bestand = "menu1.js" Else If Rol_B Then bestand = "menu2.js" End If Response.Write "<script src='" & bestand & "' type='text/javascript'></script>" [/code:1:d4ba9cc698] [size=9:d4ba9cc698](Maar in het geval van deze keuze is het makkelijker om de naam van de rol op te nemen in de bestandsnaam van het menu. Dat bespaart je wat if-then-else constructies.)[/size:d4ba9cc698] Of de inhoud van een menu-bestand inlezen via het FileSystemObject en de tekst rechtstreeks toevoegen aan de pagina. [code:1:d4ba9cc698] ' jsTekst is een variabele die gevuld is via het FSO Response.Write "<script type='text/javascript'>" & jsTekst & "</script>" [/code:1:d4ba9cc698] Of het js-bestand dynamisch genereren. [code:1:d4ba9cc698] <script src="menu.js.asp" type="text/javascript"></script> [/code:1:d4ba9cc698] Dit asp bestand geeft dan alleen js-code terug die is toegespitst op de rol. Meer dan genoeg mogelijkheden dus. Uiteraard ook in de pagina's die je aanroept via het menu nog even controleren op de rol; ik neem tenminste aan dat de pagina's die niet beschikbaar zijn voor een bepaalde rol ook afgeschermd moeten zijn voor de overige gebruikers.
  • Hallo, Ik heb al enige hulp gehad met het aanroepen van *.js menu bestanden vanuit ASP. Maar nu het volgende. In de website gebruik ik een iframe om daar mijn login pagina in te laden (ASP). Bij het inloggen wordt er bepaald welk menu er geladen moet worden. Alleen hoe krijg ik het zo dat het menu buiten het iframe geladen wordt? Daniel Bolt
  • Na een login kan je de complete 'site' herladen; dus menu, overige content en inhoud iframe. Indien nodig kan je waarden (bijv de juiste menu-file, bron voor iframe) in de Session bijhouden en zo je pagina weer opbouwen. Hoe de rest van je pagina eruit ziet weet ik niet, dus je zal even wat moeten proberen wat het best werkt. Makkelijkste optie lijkt mij om je login-form te laten posten met als target de hoofdpagina (en dus niet [i:e4fb7c5960]in[/i:e4fb7c5960] je iframe). p.s. : [quote:e4fb7c5960="danielbolt"]Ik heb al enige hulp gehad met het aanroepen van *.js menu bestanden vanuit ASP.[/quote:e4fb7c5960] Als dit betekent dat je ruim voor mijn antwoord al via andere wegen een oplossing had gekregen (of zelf hebt gevonden), dan zou ik het wel correct vinden om dat even te melden in het topic.
  • [quote:43d0ba454d] Als dit betekent dat je ruim voor mijn antwoord al via andere wegen een oplossing had gekregen (of zelf hebt gevonden), dan zou ik het wel correct vinden om dat even te melden in het topic. [/quote:43d0ba454d] Mijn excuses, ik was vergeten te melden dat ik met één van jou oplossingen verder ben gegaan! Annie bedenkt! Dus ik moet mijn gehele pagina opnieuw opbouwen. Oke, misschien is dat wel de juiste oplossing. ik ga het direct even proberen. Daniel[/code]

Beantwoord deze vraag

Weet jij het antwoord op deze vraag? Registreer of meld je aan met je account

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.