05. november 2006 - 23:34Der er
10 kommentarer og 1 løsning
Variable gemt i tekst fil
Hej
På min asp side har jeg lavet en variabel der hedder kunde. Den skifter indhold afhængig hvilken kunde webside man er inde på.
Jeg har en tekst der så siger "Velkommen til websiden for <%= kunde %>". Det virker fint og den skriver kundens navn på websiden.
Men nu vil jeg gerne have den tekst ud og ligge i en tekst fil, og så hive den ind på websiden fra tekst filen. Men hvis jeg ligger teksten ud i tekst filen (på samme måde som den står i ASP filen, dvs. med <%= kunde %>) så skriver den ikke kunde variablen når jeg kører websiden. Den kommer ikke med en fejl, den undlander simpelthen bare at skrive noget der hvor kunde variablen står.
Hvordan kan jeg bruge sådan en variabel fra en tekst fil?
Jeg kan godt finde ud af at læse og tekst fra en tekst fil via fso, jeg kan bare ikke få den til at kalde en variable som står i tekstfilen, jf. mit spm. ovenfor.
Jeg har heller ikke kundenavnet liggende i en txt fil, kundenavnet ligger netop i en db som du forslår. Og når kunden logger ind henter jeg det relevante kundenavn ud fra databasen og gemmer i en variable.
Problemet opstår når jeg har en tekst (f.eks. velkommen teksten). Den vil jeg gerne ligge i en txt fil, så admin senere kan rette i denne velkommen tekst via et adm modul. Men hvis jeg henter txt filen ind via fso, så kan jeg ikke få den til at hente min kunde variable. Normalt henter jeg den ved at skrive <%= kunde %> i min html kode. Den asp kode har jeg så indsat i txt filen sammen med resten af velkommen teksten, men det virkede ikke.
Men hvis jeg includer txt filen istedet for at indklæse den via fso virker det.
ok, kan godt se hvad du siger, men du kunne alternativt gøre et af to:
1) Gemme konfigurationssettings i web.config filen. Det betyder at du kan lave et lille smart interface til administratorne (specielt vil det være stærkt hvis du laver et rollebaseret web-site). Det betyder at du på din velkommenside kan have:
Dette er lavet udfra asp.net 2.0. Hvis du bruger en tidligere version er jeg ikke sikker, men det jeg ville gøre er det andet jeg kan foreslå:
2) Lav en database med tekster til dit website. Jeg har det selv på en del web-sites jeg har lavet (er nu gået over til metode 1), og det jeg har gjort er at jeg har lavet en standarddatabase, en connection i web.config og så en class, der har en funktion der returnere en tekst. Det kan f.eks. være en funktion der hedder GetText.
Funktionen skal returnere en string. Så kan man bruge den på alle de websider man har, og en forside kan man f.eks. skrive:
<%=(GetText("velkommen")%>
Så har man en Sql-sætning der hedder:
String sql= "Select * from texts where ID='"+Velkommen+"'";
Jeg er sikker på at det virker bedre end at hente filer.
Jeg laver gerne et eksempel til dig når min datter er lagt i seng.
Mange tak for dine indlæg. Jeg er dog ikke helt så skarp i ASP at jeg kan følge med i alt du skriver :-) Derudover bruger jeg blot ASP og ikke ASP.NET.
Men som sagt, jeg har fået det til at virke nu, ved at include tekstfilen istedet for at bruge fso, så du behøver ikke bruge mere tid på det.
Men tak for dine indlæg.
Mvh
Martin
Synes godt om
Ny brugerNybegynder
Din løsning...
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.