?
Solved

Including a file in ASP

Posted on 2002-04-22
7
Medium Priority
?
233 Views
Last Modified: 2013-11-18
Hi all...

I'm making a website in ASP (I used to work with PHP, in PHP the solution for my problem is the INCLUDE(filename) function) and I have a problem.

I want to insert the text of an other file into a ASP page.

i.e.:

index.asp
---------
<!--#include file="read.function.asp"-->
<html>
<head></head>
<body>
<%
strMenu = "create.asp"
Response.Write(ReadDisplayFile(strMenu) %>
</body>
</html>

This is the code of read.function.asp

read.function.asp
-----------------
<%
     Function ReadDisplayFile(FileToRead)
          strFileToRead = Server.Mappath(FileToRead)
          Set fs = CreateObject("Scripting.FileSystemObject")
          Set strThisFile = fs.OpenTextFile(strFileToRead, 1, False, TristateMixed)
          strTemp = strThisFile.ReadAll
          strThisFile.Close
          set strThisFile = nothing
          set fs = nothing
          ReadDisplayFile = strTemp
     end Function
%>

This is the code of create.asp

create.asp
----------
<html>
<head></head>
<body>
<form method="post" action="index.asp">
 <table>
  <tr>
   <td>Name:</td>
   <td><input type="text" name="first_name"></td>
  </tr>
 </table>
</form>
<% Response.Write("test") %>
</body>
</html>

Now, if I load index.asp in my browser...I see the form, but not the printout of <% Response.Write("test") %>.
So, the ASP-code is not parsed.

I also tried this
<% testje = """test.asp""" %>
<% Response.Write("<!--#include file="& testje & "-->") %>

but the include file-statement doesn't work when I use a variable...

Does anybody have a solution? I need this so bad...thank you very very much if you can help me...

Thanks...
0
Comment
Question by:RoB
7 Comments
 
LVL 19

Expert Comment

by:webwoman
ID: 6960115
You can't use a variable. Includes are done before the ASP is parsed, so there's no variable to use.

The include should definitely parse correctly, make sure that it's in the same directory as the main file. Also, you might want to rename it -- take out the . in the filename. I suspect that may be causing problems.
0
 
LVL 5

Expert Comment

by:harwantgrewal
ID: 6960121
is your asp is working I mean check the source of the page it display the asp tag that means your ASP is not parsing check iis

harry
0
 
LVL 7

Expert Comment

by:daniel_c
ID: 6960181
Just curious, why do you have to read the file?
Why don't just redirect to the ASP file?

Change this to your index.asp file:

<!--#include file="read.function.asp"-->
<html>
<head></head>
<body>
<%
strMenu = "create.asp"
Response.Redirect strMenu
'Response.Write(ReadDisplayFile(strMenu))
%>
</body>
</html>

HTH,

^_^
0
What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

 
LVL 6

Expert Comment

by:ebosscher
ID: 6960239
I'm willing to hazard a guess.

The browser will not see the ASP as ASP because it is output, you are sending the new page directly to the browser window, the browser is not calling the ASP through IIS, and so IIS sees no need to parse the page it is receiving.  I could be wrong, but that SEEMS like what it is doing.

I would suggest not streaming pages that require interpritation by the server, the server probably sees these as a text stream, and not as an ASP.

Regards,

Evan
0
 
LVL 11

Accepted Solution

by:
ASPGuru earned 240 total points
ID: 6960527
hi RoB,

if you have Win2k you can use:
Server.Execute testje

ASPGuru
0
 
LVL 33

Expert Comment

by:knightEknight
ID: 6960604
try this:

testje MUST be a fully qualified URL: http://server/path/file.inc

<%
 Response.Buffer = True

 RePost(testje)  'note: this must be a fully qualified URL

 Function RePost( postURL )  'instead of redirecting, repost the form data

   Dim objXMLHTTP, xml
   Set xml = Server.CreateObject("Microsoft.XMLHTTP")
   xml.Open "POST", postURL, False
   xml.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
   xml.Send "" & Request.Form &"&"& Request.QueryString &"&"& Request.Cookies
   Response.Write xml.responseText
   'RePost = ""&xml.responseText
   Set xml = Nothing

 End Function
%>
0
 

Author Comment

by:RoB
ID: 6960778
Thank you very much mate...

RoB
0

Featured Post

Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction Since I wrote the original article about Handling Date and Time in PHP and MySQL several years ago, it seemed like now was a good time to update it for object-oriented PHP.  This article does that, replacing as much as possible the pr…
Without even knowing it, most of us are using web applications on a daily basis.  In fact, Gmail and Yahoo email, Twitter, Facebook, and eBay are used by most of us daily—and they are web applications. We generally confuse these web applications to…
The viewer will learn how to dynamically set the form action using jQuery.
HTML5 has deprecated a few of the older ways of showing media as well as offering up a new way to create games and animations. Audio, video, and canvas are just a few of the adjustments made between XHTML and HTML5. As we learned in our last micr…
Suggested Courses

621 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question