Solved

2 content-types

Posted on 1998-11-09
5
181 Views
Last Modified: 2013-12-25
I need 2 things to happen in my CGI:
  First: if the user successfully fills in the fields, they will be prompted where to save a tab-delimited file. This is done by Content-type: text/tab-separated-values
  Second: if the user successfully fills in the fields, they will get a confirmatory thank-you message via Content-type: text/html
 
Of course, if they were not successful, they will get a text/html error message. The question is: how do you get 2 content-types to work together? Kind of like when you download a Netscape product. After you select a path to download it, you get a Thank-You message.
0
Comment
Question by:Pakfan
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
5 Comments
 
LVL 5

Expert Comment

by:aioudine
ID: 1829489
here is P-code

------- main script ------
START
IF good_input

  generate file(filename)

  output
      <HTML><TITLE></TITLE><BODY>
      <frameset rows="1,*" border=0>
      <frame name=wsg_top src="/cgi-bin/download.pl?filename" marginheight=0>
      <frame name=wsg_bot src="thankyou.html" marginheight=0>
      </frameset>
      </BODY></HTML>
ELSE
 output
     <HTML><TITLE></TITLE><BODY>
       Samethink wrong try again
    </BODY></HTML>
FI

END
--- end main script ------


---- download.pl script  -----
START
getvariable(filename)
output
<meta http-equiv="Refresh" content="0; url="http://site/downloaddir/filename">
END
--- end download script -----

0
 

Author Comment

by:Pakfan
ID: 1829490
That does not help. I need somthing more generic. The proposed anser will not fit my needs. The simple theory of how to tackle multiple content-types would help, however. I am not using frames and the tab-separated file is one the user generates based upon what they enter in the form.
0
 
LVL 11

Accepted Solution

by:
mouatts earned 150 total points
ID: 1829491
You can use multipart content type I did have an example but I can't find it. As an alternative you could transmit your thank you page first with a refresh on it which points to the URL that will force the download of you tab seperated file. This way the thank you page and the download will occur more or less at the same time.
0
 

Author Comment

by:Pakfan
ID: 1829492
I guess I should mention that like the tab-separated file, the Thank-you message is also based on user input. It will contain the contents of the tab-separated file ie. it will say something like "Thank you, this is the contents of the file you saved: ...". Hence, it cannot be a static HTML page. It must be part of the script. Feel free to use some Perl code if you think that will help.
0
 

Author Comment

by:Pakfan
ID: 1829493
Ok, since this seems to be a more difficult question than originally intended, I am providing more details. Here is the main part of the Perl script:

---------------------------------------------------------------------------------------------------------
#print "HTTP/1.0 200\n";                             # Tried this with and without the comment
print "Content-type: multipart/mixed;boundary=\"Boundary\"\n\n"; # tried this with                                                                                                                                                                                                                             # x-mixed-replace as well.

print "--Boundary\n\n";
print "Content-type: text/html\n\n";
thankyou();
success();
 
print "--Boundary\n\n";
print "Content-type: text/tab-separated-values\n\n";
success();

print "--Boundary--\n\n";
---------------------------------------------------------------------------------------------------------

0

Featured Post

Resolve Critical IT Incidents Fast

If your data, services or processes become compromised, your organization can suffer damage in just minutes and how fast you communicate during a major IT incident is everything. Learn how to immediately identify incidents & best practices to resolve them quickly and effectively.

Question has a verified solution.

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

Introduction This tutorial will give you a fast look what you can do with WhizBase. I expect you already know how to work with HTML at least, and that you understand the basics of the internet and how the internet works. WhizBase is a server-s…
This tutorial will discuss fancy secure registration forms, with AJAX technology support. In this article I assume you already know HTML and some JS. I will write the code using WhizBase Server Pages, so you need to know some basics in WBSP (you mig…
Learn the basics of lists in Python. Lists, as their name suggests, are a means for ordering and storing values. : Lists are declared using brackets; for example: t = [1, 2, 3]: Lists may contain a mix of data types; for example: t = ['string', 1, T…
In this fifth video of the Xpdf series, we discuss and demonstrate the PDFdetach utility, which is able to list and, more importantly, extract attachments that are embedded in PDF files. It does this via a command line interface, making it suitable …

729 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