Overview:
The Server Object has seven (7) Methods, one (1) Property, zero (0) Events, and zero (0) Collections.
List of Methods:
Create an instance of an Object Execute( ) Server.Execute("fileName.asp")
Executes an outside file (effect is similar to SSI) GetLastError( ) Server.GetLastError()
Returns location and description of the last ASP error HTMLEncode( ) Server.HTMLEncode("some String")
Encodes string to HTML characters MapPath( ) Server.MapPath("\\virtualFolder")
Converts virtual path to physical path Transfer( ) Server.Transfer("fileName.asp")
Transfers execution out of one page and into another URLEncode( ) Server.URLEncode("some String")
Encodes string to URL standards
Below is the script for Lesson 14.
<%@LANGUAGE="JavaScript"%> <HTML> <BODY> <%=Server.URLEncode("Hello, this string is URL Encoded!")%> <BR><BR> Now let's see a reprint of Script14a.asp. I did not type it manually. Instead, I let Server.CreateObject( ) do all the work.<BR> <STRONG> <% Server.ScriptTimeout=10 var ASPScriptObject = Server.CreateObject("Scripting.FileSystemObject"); var myPath=Server.MapPath("\\") + "\\Section04\\script14a.asp" var AspScript = ASPScriptObject.OpenTextFile(myPath); var outputScript=""; while(!AspScript.AtEndOfStream) { outputScript += AspScript.ReadLine() + "\r"; } outputScript = new String(outputScript); outputScript=Server.HTMLEncode(outputScript) AspScript.Close(); outputScript = "<PRE>" + outputScript + "</PRE>"; Response.Write(outputScript) %> </STRONG> </BODY> </HTML>
Click Here to run the script in a new window.
I demonstrated four methods in the script14.asp. We'll take them from top to bottom.
Explaining the Script:
Server.URLEncode() does exactly what you think it does. It takes a string and encodes it to RFC 1738 standards. That's more than you ever wanted to know about Server.URLEncode(), isn't it?
Next we have Server.CreateObject(). In this case I created an instance of the FileSystem Object. The most common objects that you will instanciate are ADODB.Recordset, Scripting.FileSystemObject, Scripting.Dictionary, MSWC.AdRotator, MSWC.BrowserType, MSWC.NextLink, and MSWC.ContentRotator. There are many good resources on all of these created Objects. Most of them are beyond the scope of this web site.
Next on the list is Server.MapPath(). Looking back at script14.asp, do you see the double slashes (\\) in the MapPath argument? That's not an accident. We have to use escape characters in JavaScript.
The last Method I demonstrate is Server.HTMLEncode(). It converts HTML flags into non-HTML equivalents.
The Lone Property:
Server has one property: ScriptTimeout. It sets the maximum number of seconds allowable for script execution. If the script execution exceeds that time, then it times out. The user gets an ugly message but at least the Web Server can quit executing your darned greedy script and go about other business.