Frågor kans ställas i denna tråden.
Detta är en samling script som gör det möjligt att flytta dina texter ifrån själva HTML-dokumentets struktur för att ha dom i en separat fil, vilket gör det avsevärt enklare att redigera även för dom som inte kan HTML.
Det hela går ut på att du lägger texterna i egenskapade taggar t.ex:
<font size="1" face="Verdana, Arial, Helvetica, sans-serif">Kod:<font size="1" face="Verdana, Arial, Helvetica, sans-serif" color="#006666">[Links_Bread]
Detta är en massa text om min länksida...
[/Links_Bread]
Eftersom jag är förespråkare av XML, så har jag gjort så att dina taggar måste vara case-sensitive. ;)
Du kan alltså ha en tagg som hete [Text] och en som heter [tExt] och dom kommer att tolkas som olika taggar.
Genom detta script kan du lätt byta ut dina texter dynamiskt utan att kladda till sidan med så att den blir oläsbar.
backbone.asp - Alla funktioner i en fil.
<%
'** Öppnar och återger filens innehåll **'
Function ReadFile(file)
Set fso = CreateObject("Scripting.FileSystemObject")
strPath = Server.MapPath(".\") & "\" & file
ReadFile = fso.OpenTextFile(strPath, 1).ReadAll
Set fso = Nothing
End Function
'** Hämtar text mellan angivna taggar **'
Function getText(strString,strTag,bolRemChr13)
'** Tolkar taggen **'
strFirstChar = Left(strTag,1)
strLastChar = Right(strTag,1)
strTagContents = Mid(strTag,2,Len(strTag)-2)
strEndTag = strFirstChar & "/" & strTagContents & strLastChar
'** Skapar RegExp-objektet **'
Set RE = New RegExp
RE.Global = false
RE.IgnoreCase = false
RE.Pattern = "(\"&strFirstChar&strTagContents&"\"&strLastChar&"){1}(.|\n)+(\"&strFirstChar&"/"&strTagContents&"\"&strLastChar&"){1}"
'Response.Write "(\"&strFirstChar&strTagContents&"\"&strLastChar&"){1}(.|\n)+(\"&strFirstChar&"/"&strTagContents&"\"&strLastChar&"){1}"
Set MM = RE.Execute(strString)
For each M in MM
strTmp = M
Next
strTmp = Replace(strTmp,strTag,"")
strTmp = Replace(strTmp,strEndTag,"")
If InStr(strTmp,vbcrlf) AND bolRemChr13 Then strTmp = Mid(strTmp,2)
getText = Trim(strTmp)
End Function
'** Byter radbrytningar mot <br> **'
Function br(strC)
br = Replace(strC,vbcrlf,"<br>")
End Function
%>
default.asp - Din sida som texterna skall in i.
<!--#include file="backbone.asp"-->
<%
'** Läser in filen, ändra filens namn till det din fil heter **'
strC = ReadFile("texter.txt")
'** Strängen som skall sökas, taggen, ta bort första radbrytningen? **'
Response.Write br(getText(strC,"[Text_om_asp]",true))
%>
Utifrån ovanstående kod läser jag in filen texter.txt.
I anropet av en tagg anger jag först själva texten som skall sökas (den som jag hämtade ur filen texter.txt), sedan vad startataggen ser ut som (sluttaggen tolkas av scriptet och behövs inte som argument), och sisst anger du true eller false beroende på om du vill ta bort de onödiga radbrytningen i början av taggen eller inte.
Alltså:
getText(texterna,taggen,true/false)
br(string) omvandlar alla radbrytningar till <br>
Lycka till! :)
Mvh, Vide
------------------
Vide rox = new Vide();
rox.learn("C#");
webeye.nu
[Redigerat av Vide den 05 jul 2001]