Kan du använda
server.execute("filnamm")
?
Kräver ASP 3.0 dock.
------------------
essentitia preter non sans multiplicandum
6 svar · 209 visningar · startad av erka
Jag ska beroende på vilket språkval som skickas med i en querystring inkludera olika konstanta variablar. De har jag i filer som heter tex.
CaptionstringSE.asp
CaptionstringGB.asp
De innehåller samma konstanter (samma namn) fast med olika värden i vad de har för information beroende på vilket språk det är.
Tänkte ta ut rätt genom
<%
Dim LangID
LangId = Request.Querystring("LangID"9
If LangID = "se" Then
%>
<!--#include file='/se/captionstrings.asp' -->
<%ElseIf LangID = "gb" Then %>
<!--#include file='/gb/captionstrings.asp' -->
<%End If%>
Men det fungerar ju inte eftersom includesen läses in först innan ifsattserna och de innehåller samma namn på konstanterna så man får
Name Redifined felmeddelande.
Om jag istället lägger if sattserna och alla konstanter i en och samma include borde man väll kunna få det att fungera kanske. Men det vill jag undvika eftersom jag vill inte blanda ihop språkspecifikasidor med icke språkspecifika. Men finns det inget annat sätt, någon som har löst liknande problem på ett smart sätt
Tacksam
------------------
Real mad hiphop flavaz kickin' it right from tha street without no FEAR, Yo !
Kan du använda
server.execute("filnamm")
?
Kräver ASP 3.0 dock.
------------------
essentitia preter non sans multiplicandum
Jag har en produkt sida som hämtar data från en sqlserver. Sen för att slippa dubletter gör jag bara en fil och tar ut spårket på dvs texter etc genom en querystring med landsvärdet i.
Sen skriver jag ut massa tabeller med produktfakta och konstanta variablarna är de olika rubrikerna i kollummer, olika för vilket språk jag väljer att hämta ifrån.
Om jag tar server execute fungerar det inte eftersom jag inte får in konstanterna.
------------------
Real mad hiphop flavaz kickin' it right from tha street without no FEAR, Yo !
Det måste ju gå att lösa på något sätt, det fungerar ju inte heller om jag lägger if sattserna i includfilen, för konstanterna orsakar ju ändå felmedelandet "Name redefined".
Vad finns det för andra sätt som man kan lösa detta på, kommer inte på några själv idag typ förutom att lägga dem i en databas oxå å hämta ut det som den andra informationen
------------------
Real mad hiphop flavaz kickin' it right from tha street without no FEAR, Yo !
[Redigerat av erka den 27 sep 2001]
Server.Execute fungerar inte, jag får inga värden i konstanterna.
En lösning skulle ju vara och döpa om konstanterna och skriva typ så här
LangId = Request.Querystring("LangId")
If LangId = "gb" Then
Const RubrikGB = "Hello"
Const Rubrik2GB = "Hello again"
ElseIf LangId = "se" Then
Const RubrikSE = "Hello"
Const Rubrik2SE = "Hello again"
End If
och sen på produkt sidan få fram konstanterna genom att typ skriva nått sånnt här
<%=Rubrik"& LangID &"%>
hur skulle jag skriva en sådan ? fast ändå det är en osmidig lösning
------------------
Real mad hiphop flavaz kickin' it right from tha street without no FEAR, Yo !
[Redigerat av erka den 27 sep 2001]
en tanke som slog mig var att du kanske definerar dina grejer i varje includefil.
testa att definera dem på sidan som filerna includeras på.
vet ju ej om det fungerar men det är värt ett försök ;)
------------------
// David - Probably the best guy in the world
jo det är ju därför jag får "redifned named". Sket i konstanter å gjorde dem till vanliga variabler.
Hur kan man göra dem till konstanter egentligen ?
------------------
Real mad hiphop flavaz kickin' it right from tha street without no FEAR, Yo !