การแทนที่แท็กเทมเพลตเมื่อ FSO สร้างไฟล์ HTML แบบคงที่เป็นปัญหาที่ลำบากเสมอ อย่างน้อยนั่นคือสิ่งที่ฉันคิดว่าอย่าสร้างเทมเพลตโปรด! ฉันเห็นวันนี้ว่ามีวิธีแก้ปัญหานี้
ตัวอย่างเช่นหน้าดัชนีปกติและใช้รหัส ASP เพื่อเรียกเนื้อหาในฐานข้อมูลสร้างหน้าอื่นของ makehtml.asp เพิ่มฟิลด์ textarea โดยสมมติว่ามันเป็น name = "body", call index.asp ออกใน textarea เช่น::
<textareaname = "body"> <!-#includit file = "index.asp"-> </textarea> รวม textarea นี้ไว้ในแบบฟอร์มและสร้างวัตถุ FSO ในหน้าแบบฟอร์มการรับและสร้างไฟล์ index.html ดังนี้!
การคัดลอกรหัสมีดังนี้:
-
filename = "../ index.html"
ifrequest ("body") <> "" แล้ว
setfso = server.createObject ("Scripting.FilesYstemObject")
setFout = fso.createTextFile (Server.mappath ("" & filename & "")))
fout.writerequest.form ("body")
fout.close
setFout = ไม่มีอะไร
setfso = ไม่มีอะไร
endif
-
ด้วยวิธีนี้ไฟล์ index.html จะถูกสร้างขึ้นและไม่จำเป็นต้องใช้แม้แต่เทมเพลต เพียงอ่านไฟล์ ASP ที่ใช้ภายใต้สถานการณ์ปกติลงใน Textarea ยังไม่พบปัญหา! แน่นอนว่าหลักฐานคือเซิร์ฟเวอร์ต้องรองรับ FSO