webForumDet fria alternativet

Special-märke i med vb-script

ASPur ASP

11 svar · 299 visningar · startad av saw

Medlem sedan mars 20011 880 inlägg
Frågan#1

Jag skulle behöva kunna göra några "special-märken" i vb-script.
Jag håller på med ett project med multi language, och därför är detta viktigt.
Jag skulle vilja ha t ex @txt1 men det godkänner inte tolken.
Nägra förslag??

Medlem sedan juni 200032 967 inlägg
#2

Vad menar du med specialmärken? Menar du att du vill ha saker som heter @txt1?

Medlem sedan mars 20011 880 inlägg
#3

Nja, till exempel, men det går ju bra med vilket tecken som helst.
Tanken är så här.
Själva applikationen skall inte innehålla någon text alls, utan dessa märken. Sen via servervariables så tar jag reda på default språk, och låter då t ex @txt1 vara lika med "Välkommen". Skulle det vara som så att default språket är engelska eller tyska, då skall @txt1 vara lika med "Welcomme" eller "Wilkomen"(tror jag det heter).
Hanteringen av språkfilerna har jag löst. Anledningen till att jag vill ha ett sådant här märke(variabel) är att jag sedan skall tillverka en editor i VB som skall leta rätt på dessa märken(variabler) och göra lite kul grejer med det.

Medlem sedan jan. 2001101 inlägg
#4

Så här eller?

Select Case Sprak
  Case "Tyska" : Innehall = Replace(Innehall, "@txt1", "Willkommen")
  Case "Svenska" : Innehall = Replace(Innehall, "@txt1", "Välkommen")
  Case "Engelska" : Innehall = Replace(Innehall, "@txt1", "Välkommen")
End Select

Men det är nog enklast att skriva hela texter i respektive språk, med tanke på grammatik osv.

Medlem sedan mars 20011 880 inlägg
#5

Nja jag tror att dekt har missuppfattat mig.
Vad som är viktigt är att jag kan göra ett eget "märke", alltså en variabel, som tolken kan godkänna, och som det är lätt att leta rätt på.
D.v.s variablarna i märket skulle jag vilja ha som:
@txt1
@txt2
@btn1
@btn2
@txtr1
osv.
Märket i detta fallet är ju @, och det efterföljande är ju variablen.
Jag skulle ju kunna tänka mig att göra:
_txt1
_txt2
_btn1
_btn2
_txtr1
men det känns bättre med @.
PROBLEMET:
Tolken vill inte veta av den typ av kompination(@text1), det är därför som jag skriver hit och fråga.
Resten, dvs hur jag får dit språkfilerna är löst och klart.

Medlem sedan jan. 2001101 inlägg
#6

Spara alla märken i en databas då, tillsammans med "översättningen". Sen loopar du och kör replace för att byta ut objRS("marke") med objRS("oversattning")

Medlem sedan mars 20011 880 inlägg
#7

Jo det är ju ett alternativ, men jag tänkte försöka helt utan databas.
Det är möjligt att jag trots allt kommer dit han att jag måste ha det men....
Jag kanske skall göra som så att jag hitta på ett kufiskt ord, som inte betyder någonting, men som ändå är lätt att hitta?

Medlem sedan okt. 20023 030 inlägg
#8

Finns inte Dictionary i ASP? Ska kolla få se om jag hittar något om det.

Medlem sedan okt. 20023 030 inlägg
#9

Du kan ju alltid göra såhär om det känns bättre. :)

Dim d
Set d = Server.CreateObject("Scripting.Dictionary")

' För att lägga till
d("@txt1") = "innehåll"
d("@txt2") = "innehåll"

' För att komma åt
Response.Write d("@txt1")
Response.Write d("@txt2")

' För att ta bort
d("@txt1") = ""
d("@txt2") = ""
Medlem sedan mars 20011 880 inlägg
#10

Jag tror inta att det kommer att fungera. Det är ju inte bara titlarna som skall med, utan hela textstycken plus namn på knappar mm.
Men tack för att du försöker.

Medlem sedan okt. 20023 030 inlägg
#11

Dictionary använder strängar vilket betyder att du kan skriva hur långa texter som helst. :)

d("s") = "v"
' Är lika rätt som
d("ngunsubgpuidsbhvuixdcbpvuiodxnuzivncdfuivbndizpufvbui") = "Jag tror inta att det kommer att fungera. Det är ju inte bara titlarna som skall med, utan hela textstycken plus namn på knappar mm. Men tack för att du försöker."
Medlem sedan maj 2000175 inlägg
#12

Templates kanske kan hjälpa dig på traven:
http://www.4guysfromrolla.com/webtech/091300-1.shtml

130 ms totalt · 3 externa anrop · v20260731065814-full.b746b907
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)