AspGerman Wiki

Bearbeiten

Ausgangsproblem:

  • Inhalte von Includedateien werden von einem Nicht-Entwickler gepflegt
  • einfaches Tool zur Pflege der Include-Seiten war gefordert - Frontpage war gegeben
  • das Ganze simpel und übersichtlich (eher keine Datenbank)

Bearbeiten

Lösung

Die folgende kleine Sub Prozedur, Embedfile, liest eine ganze HTML Datei ein und extrahiert den Inhalt zwischen und und gibt sie aus.

Sub EmbedFile(sFilename)
  Dim fso, f, s, iWriteFlag
  Const CFORREADING = 1
  Const CVBTEXTCOMPARE = 1
  Set fso = CreateObject("Scripting.FileSystemObject")
  Set f = fso.OpenTextFile(Server.MapPath(sFilename), CFORREADING)
  Do While Not f.AtEndOfStream
    s = f.ReadLine
    if instr(1, s, "<body", CVBTEXTCOMPARE) > 0 then
      iWriteFlag = true    
    elseif instr(1, s, "</body", CVBTEXTCOMPARE) > 0 then
      iWriteFlag = false
    else
      if iWriteFlag Then
        response.write s & vbcrlf
      End If
    End If
  Loop
  f.close
End Sub

Aufruf etwa über

<% EmbedFile "seite.htm" %>

oder bei Pfadangaben den Web-Pfad verwenden (nicht physikalische Pfade). Also normale Schrägstriche.

<% EmbedFile "../verzeichnis/seite.htm" %>

ScrewTurn Wiki version 2.0.33. Some of the icons created by FamFamFam.