Go Premium for a chance to win a PS4. Enter to Win

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 225
  • Last Modified:

header problem

Without the header content-type my CGI program works!. None of the other headers (Pragma , expire) work. Please suggest a solution.
0
jas_jan
Asked:
jas_jan
1 Solution
 
julio011597Commented:
Check your web server configuration?!
0
 
icdCommented:
Hang on, a cgi with a content-type header? Do you mean the scripts first few lines have the text 'Content-type...' or do you mean the script outputs (ie prints) the text 'Content-type'? Apologies if this seems a silly question, but one never knows...

Assuming the latter, could you show us the few lines around the part of your script that outputs the text 'Content-type'.


0
 
MaDdUCKCommented:
??? how does that work? ???
0
Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
jas_janAuthor Commented:
use AnyDBM_File;
use CGI;

$size=$ENV{'CONTENT_LENGTH'};
read(STDIN,$form,$size);
@form=split(/&/,$form);
$no = 1;
foreach $val(@form)
      {
      ($name,$value)=split(/=/,$val);
      $name =~ s/%([\dA-Fa-f][\dA-Fa-f])/pack("C",hex($1))/eg;
      $value =~ s/%([\dA-Fa-f][\dA-Fa-f])/pack("C",hex($1))/eg;
      $fac{$no} = $value;
      $no++;
      }


$query = new CGI;
print "<html>";
print "<body bgcolor=biege>";
print "<center><img src=logo.gif></center>";
print "<br><h2><center><font color=red>PERL Test</font></center></h2><br><br>";
&admin($query);


sub admin{
      print "<br><h3><center>For Administrator</h3><br><br>";
      print $query->startform("POST","show.pl");
      print "<b>Duration&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:</b> ";
      print $query->textfield('time');
      print "<br><br><b>No.of Questions  :</b> ";
      print $query->textfield('noq');
      print $query->hidden('fname' , $fac{1});
      print "<br><br>",$query->submit('form1','Submit'),"</center>";
      print $query->endform;
      print $query->end_html;
      }
This is my CGI program. If I attach any header it prints it as it is. Without the headers it works. But I need pragma/Expire header desperately. Pl give me solution.
0
 
ozoCommented:
How do you attach any header?
Someting like this?
 print $query->header(-expires=>'+3d');
 print $query->start_html(-meta=>{'Pragma' =>'no-cache'});


0
 
jas_janAuthor Commented:
I attached header as follows.

print "Content-Type: text/html\r\n";
print "Expires: Sat, 30 Mar 1998 10:29:02 GMT\r\n\r\n";

Pl give me solution. It is very urgent.
0
 
jas_janAuthor Commented:
I didn't use CGI module at all. Headers didn't work even in a very simple program.
0
 
MaDdUCKCommented:
I don't follow this...You gott to be more specific.
0
 
jas_janAuthor Commented:
If I attach header as
print "Content-Type: text/html\r\n";
print "Expires: Sat, 30 Nov 1996 10:29:02 GMT\r\n\r\n";
it prints the two lines as it is. I'm desperate to use either pragma or expire header. My page has to expire immediately. Even in a very simple program the two lines are displayed in the browser. It is very urgent. Pl give me solution.
0
 
MaDdUCKCommented:
Aha,
the syntax here is wrong. You have to use:

print "Content-type: text/html\n\n";
(don't capitalize '-type')

and then after the head tag, use

print "<meta http-equiv=\"expires\" content=\"0\">\n\n";

this should work. Also, don't rely on the output of your browser because it may be cached. Either use lnyx or a text viewer to view the output, and your brain to translate it ;-)
0
 
jas_janAuthor Commented:
Sorry. I've given the correct syntax only in my program.I've referred so many books regarding this and I've used all the methods. But still it is is not working.  

0

Featured Post

Ask an Anonymous Question!

Don't feel intimidated by what you don't know. Ask your question anonymously. It's easy! Learn more and upgrade.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now