[ASP] Constante Array

Pagina: 1
Acties:

  • IWriteCode
  • Registratie: Juli 2000
  • Laatst online: 09-07 11:51

IWriteCode

Less = more

Topicstarter
Graag zou ik binnen mijn asp pagina's gebruik maken van een constante array waar gebruikersnivo's instaan:
code:
1
2
3
UserLevelNames(0) = "Gast"
UserLevelNames(1) = "Gebruiker"
UserLevelNames(2) = "Admin"

En dat ik deze dan kan gebruiker als:
code:
1
  Gebruikersnivo: <%=UserLevelNames(UserLevel)%>

Echte constante array zijn volgens mij binnen asp / visual basic niet mogelijk (iets als: const UserLevelNames(3) = ("Gast","Gebruiker","Admin")) dus dacht ik, dan definieer ik mijn constanten als:
code:
1
2
3
const UserLevelNames(0) = "Gast"
const UserLevelNames(1) = "Gebruiker"
const UserLevelNames(2) = "Admin"

Maar dan krijg ik de melding:
code:
1
2
3
4
5
6
Expected '=' 

/inc_xxx.asp, line 2 

const UserLevelNames(0) = "Gast"
----------------^

Iemand een elegante oplossing voor mijn probleem? Mijn array definieren als variable en deze vullen beschouw ik niet als een elegante oplossing. Hier zal het waarschijnlijk wel op neer komen, maar ik doe graag iets anders, vandaar mijn post.

Less = more


Verwijderd

Kan je niet "gewoon" gebruik maken van een enumerator ?

  • IWriteCode
  • Registratie: Juli 2000
  • Laatst online: 09-07 11:51

IWriteCode

Less = more

Topicstarter
Uhh? En dat doet?
* IWriteCode is eigenlijk een Delphi ontwikkelaar die voor de hobby wat ASP knutselt...

Less = more


  • Crazy D
  • Registratie: Augustus 2000
  • Laatst online: 14-08 12:38

Crazy D

I think we should take a look.

Volgens mij kun je in asp geen enums maken? Maar je kunt er "gewone" constanten van maken, ala
Const LEVEL_GAST = 0
etc
Of een functietje die een int wilt, en teruggeeft wat je in je array wilt stoppen. Of je neemt een normale array en spreekt met jezelf af dat ie constant is ;)

Exact expert nodig?


Verwijderd

Sorry, dacht dat het om ASP.NET ging...

  • IWriteCode
  • Registratie: Juli 2000
  • Laatst online: 09-07 11:51

IWriteCode

Less = more

Topicstarter
Ja, maar dat had ik zelf ook al bedacht, maar ik heb gewoon een stel constanten, en die wil ik dan ook als contanten kunnen gebruiken.
Als ik daarvoor functies ga maken, dan help ik het hele idee van constanten om zeep :'(

Less = more


Verwijderd

Maak je gebruik van een database ?
Misschien een tabel gebruikernivo...?

  • IWriteCode
  • Registratie: Juli 2000
  • Laatst online: 09-07 11:51

IWriteCode

Less = more

Topicstarter
Tja, maar dan heb ik nog meer overhead. Ik wil juist constanten gebruik om die op een vaste plaats te definieren om zo ruimte en processortijd te besparen.

Less = more


  • IWriteCode
  • Registratie: Juli 2000
  • Laatst online: 09-07 11:51

IWriteCode

Less = more

Topicstarter
Maar ik vrees dat het dan toch een vorm van een globale variable gaat worden (Yikes)

Less = more


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 20-08 11:40

gorgi_19

Kruimeltjes zijn weer op :9

Jamal schreef op 10 april 2003 @ 10:47:
Tja, maar dan heb ik nog meer overhead. Ik wil juist constanten gebruik om die op een vaste plaats te definieren om zo ruimte en processortijd te besparen.
ruimte en processortijd besparen, en dan een weak typed taal als ASP gaan gebruiken? Volgens mij maakt dit kleine beetje extra overhead ook niet significant uit.

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
(Zoals gezegd): Gebruik een functie:
ASP:
1
2
3
4
5
6
Gebruikersnivo: <%=UserLevelNames(UserLevel)%>

Function UserLevelNames(intWichLevel)
  vUserLevels = Array("Gast", Gebruiker", Admin", .., ...)
  UserLevelNames = vUserLevels(intWichLevel)
End Function


Of :
ASP:
1
2
3
4
5
6
7
8
Gebruikersnivo: <%=UserLevelNames(UserLevel)%>

Function UserLevelNames(intWichLevel)
  Select Case intWichLevel
     case 0: UserLevelNames = "Gast"
     case 1: UserLevelNames = "Gebruiker"
     case else UserLevelNames = "Admin"
End Function

Je kunt nu dus gewoon gebruik maken van je "virtuele" constante...

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • IWriteCode
  • Registratie: Juli 2000
  • Laatst online: 09-07 11:51

IWriteCode

Less = more

Topicstarter
Daar heb je misschien een punt, maar aan dat asp / access verhaal zit ik vast. Maar ik wil gewoon een soort contante array hebben.
Conclusie van dit hele verhaal lijkt dus idd, het is niet mogelijk :( Zonde, en dan zal ik idd een minder fraaie oplossing moeten kiezen.
Iedereen in elk geval bedankt voor de suggesties / opmerkingen.

Less = more


  • Gert
  • Registratie: Juni 1999
  • Laatst online: 05-12-2025
code:
1
2
3
4
Dim array( 2 )
array( 0 ) = "a"
array( 1 ) = "b"
array( 2 ) = "c"


Dit is gewoon heel erg standaard :o

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 21:27

Creepy

Tactical Espionage Splatterer

Gert schreef op 10 April 2003 @ 11:37:
code:
1
2
3
4
Dim array( 2 )
array( 0 ) = "a"
array( 1 ) = "b"
array( 2 ) = "c"


Dit is gewoon heel erg standaard :o
Alleen jammer dat dit geen array van constanten is! ;)

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


  • Crazy D
  • Registratie: Augustus 2000
  • Laatst online: 14-08 12:38

Crazy D

I think we should take a look.

Een functie zoals al genoemd is redelijk constant. Je kunt 'm niet wijzigen (naja tenzij je de functie zelf aanpast, maar dat geldt voor "const"anten ook). En je gebruikt m op zich ook hetzelfde als een gewone array... what's the big deal?
En je kunt m net als de "const"anten 'm gewoon op een vaste plek plaatsen: in een include file :)

Exact expert nodig?


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Het mooie als je 'm in een functie gooit is dat je de waardes niet kunt aanpassen vanuit code (OMDAT 'ie in een functie zit). Tenzij je idd de functie aanpast, maar dat heb je dus idd ook als je de constanten aan past...

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij

Pagina: 1