When you think ASP, think...
Recent Articles xml
All Articles
ASP.NET Articles
Related Web Technologies
User Tips!
Coding Tips
spgif spgif

Sample Chapters
JavaScript Tutorials
MSDN Communities Hub
Official Docs
Stump the SQL Guru!
XML Info
Author an Article
spgif spgif
ASP ASP.NET ASP FAQs Feedback topnav-right
Print this page.
User Tip: Use includes and Variables for Links

From Stephen V.:

Although there are many tools that facilitate searching and replacing links in pages, as a fan of the "code it by hand" school of ASP programming, I tend to prefer a more hands on approach of linking to other pages.

The basic idea is to create an include file (or application variables if need be) that contains a listing of all pages on the server and a variable assigned to each. This is useful in case the page gets moved, renamed, deleted, etc. The basic idea is this (i'm assuming you are using a server side include in this code example):

Create a links.inc file:

dim objLinks set objLinks = Server.Createobject("Scripting.Dictionary") objLinks.add "HomePage","/default.asp" objLinks.add "Feedback","/forms/feedback.asp"

Then in your main page text:

<a href="<%=objLinks.item("Feedback")%>">FeedBack</a>

This methodology has the following advantages over using a GUI editor to do this:

    1) For sites with large files or large numbers of files, particularly when working from an off-site location, changing the reference is much faster.
    2) If you are in development phase and will later be changing the entire url of the page, you could modify the include file to include the "path to this section" and just change that at production time.
    3) Much more easily integrated into some sort of content tree / database solution. I am currently developing a web site that uses this approach, with two dictionary (actually I am currently using application variables but might change later) objects - one to obtain the path given a "title", and one to do the exact opposite. Then at the top of each page, I show the "path to this section" ala CNet/Yahoo:

    Home - Developer Area - ASP - pagename

    The beauty of this is that I don't actually have to hand code *anything* in each individual page itself to show the path. I just put an include at the top and it will figure out the path without requiring the author to do anything.

A small snippet of code for this might look as follows:

(the include page) dim myTitle 'Will store my page name dim myParents 'the container nodes of the tree myTitle = objRevLinks.item(Request.Servervariables("URL")) myParents = getPath (myTitle) ... response.write(myParents & ":" & myTitle)

Eventually I'll probably create a com scriptlet, etc., all much easier because in development phase I used variablenames for links.

ASP.NET [1.x] [2.0] | ASPFAQs.com | Advertise | Feedback | Author an Article