Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > ASP .Net > ASP General > page title in a list of recently updated pages

Reply
Thread Tools

page title in a list of recently updated pages

 
 
nospam@plasticlegs.com
Guest
Posts: n/a
 
      04-19-2006
Hi there,

I'm using VBScript to display a list of the ten most recently updated
pages on my web site. Right now, the script lists the filenames and
the date modified in a given directory.

What I want to know is if there is any way to extract the page title
and display that instead of the file name? Can I use .asp and VBscript
to "delve" into the file and extract the title?

Here's the code I'm using:
<%
folder = ".\"
set fso = CreateObject("Scripting.fileSystemObject")
set fold = fso.getFolder(Server.MapPath(folder))
fileCount = fold.files.count
dim fNames(), fDates()
redim fNames(fileCount), fDates(fileCount)
cFcount = 0
for each file in fold.files
cFcount = cFcount + 1
fNames(cFcount) = lcase(file.name)
fDates(cFcount) = file.dateLastModified
next
for tName = 1 to fileCount
for nName = (tName + 1) to fileCount
if (fDates(tName) < fDates(nName)) then
buffer = fNames(nName)
dateBuffer = fDates(nName)
fNames(nName) = fNames(tName)
fDates(nName) = fDates(tName)
fNames(tName) = buffer
fDates(tName) = dateBuffer
end if
next
next
if (fileCount > 10) then
fileCount = 10
End If
Response.Write "<table border=1 width='90%'>"
for i = 1 to fileCount
Response.Write "<tr><td><a href='" & fNames(i) & "'>" &
fNames(i) & "</a></td><td>" & fDates(i) & "</td></tr>"
next
Response.Write "</table>"
%>

 
Reply With Quote
 
 
 
 
Mike Brind
Guest
Posts: n/a
 
      04-19-2006

http://www.velocityreviews.com/forums/(E-Mail Removed) wrote:
> Hi there,
>
> I'm using VBScript to display a list of the ten most recently updated
> pages on my web site. Right now, the script lists the filenames and
> the date modified in a given directory.
>
> What I want to know is if there is any way to extract the page title
> and display that instead of the file name? Can I use .asp and VBscript
> to "delve" into the file and extract the title?
>
> Here's the code I'm using:
> <%
> folder = ".\"
> set fso = CreateObject("Scripting.fileSystemObject")
> set fold = fso.getFolder(Server.MapPath(folder))
> fileCount = fold.files.count
> dim fNames(), fDates()
> redim fNames(fileCount), fDates(fileCount)
> cFcount = 0
> for each file in fold.files
> cFcount = cFcount + 1
> fNames(cFcount) = lcase(file.name)
> fDates(cFcount) = file.dateLastModified
> next
> for tName = 1 to fileCount
> for nName = (tName + 1) to fileCount
> if (fDates(tName) < fDates(nName)) then
> buffer = fNames(nName)
> dateBuffer = fDates(nName)
> fNames(nName) = fNames(tName)
> fDates(nName) = fDates(tName)
> fNames(tName) = buffer
> fDates(tName) = dateBuffer
> end if
> next
> next
> if (fileCount > 10) then
> fileCount = 10
> End If
> Response.Write "<table border=1 width='90%'>"
> for i = 1 to fileCount
> Response.Write "<tr><td><a href='" & fNames(i) & "'>" &
> fNames(i) & "</a></td><td>" & fDates(i) & "</td></tr>"
> next
> Response.Write "</table>"
> %>


Yes. You can use the Scripting.FileSystemObject to read the contents
of an asp file, and then a regular expression to get the title. Here's
one that opens a file in the same folder and finds the title. It
assumes that you will only have letters, numbers or spaces in the
title:

<%
Dim objFSO, objTextStream, strSearchOn, objMatch, colmatches, mymatch
Dim strFileName
Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
strFileName = Server.Mappath("filename.asp")
const fsoForReading = 1
Set objTextStream = objFSO.OpenTextFile(strFileName, fsoForReading)
strSearchOn = objTextStream.ReadAll
Set objRegExpr = New regexp
objRegExpr.Pattern = "<title>[\w\d\s]*<"
objRegExpr.Global = True
objRegExpr.IgnoreCase = True
set colmatches = objRegExpr.Execute(strSearchOn)
For Each objMatch in colMatches
mymatch = replace(objMatch.Value,"<title>","")
mymatch = replace(mymatch,"<","")
Next
Response.Write mymatch
objTextStream.Close
Set objTextStream = Nothing
Set objFSO = Nothing
%>

--
Mike Brind

 
Reply With Quote
 
 
 
 
nospam@plasticlegs.com
Guest
Posts: n/a
 
      04-20-2006
Thanks Mike! I was able to insert that script into my code to give me
exactly what I want! One last thing - is there any way to allow dashes
in the title?

 
Reply With Quote
 
Mike Brind
Guest
Posts: n/a
 
      04-20-2006

(E-Mail Removed) wrote:
> Thanks Mike! I was able to insert that script into my code to give me
> exactly what I want! One last thing - is there any way to allow dashes
> in the title?


Yes. Add \- to the pattern within the square brackets, so the line
should read:

objRegExpr.Pattern = "<title>[\w\d\s\-]*<"

Hyphens/Dashes need to be escaped with a backslash because it's one of
the special characters. The pattern above first looks for the text
<title>, followed by any word character or digit or whitespace or dash
appearing 0 or more times before an opened angle bracket.

If you find you need to add more options (double colons :: seem to be
the rave with some people), have a look at this article:

http://msdn.microsoft.com/library/de...ting051099.asp

--
Mike Brind

 
Reply With Quote
 
Evertjan.
Guest
Posts: n/a
 
      04-20-2006
Mike Brind wrote on 20 apr 2006 in microsoft.public.inetserver.asp.general:

> Yes. Add \- to the pattern within the square brackets, so the line
> should read:
>
> objRegExpr.Pattern = "<title>[\w\d\s\-]*<"
>


Why not more general:

"<title>[^<]*<"

?

--
Evertjan.
The Netherlands.
(Please change the x'es to dots in my emailaddress)
 
Reply With Quote
 
nospam@plasticlegs.com
Guest
Posts: n/a
 
      04-20-2006
Thanks Mike! I was able to insert that script into my code to give me
exactly what I want! One last thing - is there any way to allow dashes
in the title?

Oops, never mind, I just solved it:

Replace
objRegExpr.Pattern = "<title>[\w\d\s]*<"

With
objRegExpr.Pattern = "<title>[\w\d\s\x2D]*<"

Thanks again!

 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Friendly Urls with page title in (eg. page-title.aspx) anthonykallay@googlemail.com ASP .Net 1 04-24-2007 08:25 AM
How 2 place page title into window title using sitemap in master page? bednar.tomas@gmail.com ASP .Net 0 11-30-2006 03:17 PM
Does anyone know the title of the first ever DVD title released? (UK/US) Mikey DVD Video 12 09-23-2006 07:14 PM
Recently updated digital photo site Rich Digital Photography 10 10-09-2003 02:58 PM
Fastest way to get a the string between <title> </title> Andreas Klemt ASP .Net 1 08-10-2003 01:58 AM



Advertisments