Nope, no luck. When I use something like:
Print >> End_form; Name: $q->param("name") End_form My output looks like: Name: CGI=HASH(0x6590)->param("name") I think I tried this before and that's why I didn't use CGI.pm for variable processing. But hey... I'm open to correction! -John On 12/10/02 10:31 AM, "Larry Coffin" <[EMAIL PROTECTED]> wrote: > > Well, I'm not all that familiar with the CGI.pm html generation > functions, but if they simply generate HTML elements, there should be no > reason you can't mix CGI.pm calls with your own html code. Something like: > > > --------------- > #!/usr/bin/perl > > use CGI; > $q = new CGI; > > open(OUTPUTFILE, ">&STDOUT") || die "$!"; # just for testing > > print OUTPUTFILE $q->header; > print OUTPUTFILE $q->start_html('Application'); > > print OUTPUTFILE $q->center( > $q->h2("My Company Name"), > $q->p($q->strong("Application")), > ); > > print OUTPUTFILE <<END_OF_FORM; > <form action="handle_form.cgi" method="POST"> > > .... > > </form> > END_OF_FORM > > > print OUTPUTFILE $q->end_html(); > > ---------------- > > This tested just fine for me. > > Also, your second example should work fine as well -- just use > CGI.pm for variable processing and do all the output yourself. That's how I > generally do it! > > Another little trick you can do with this "for here" print syntax > and html output is great for keeping your program code nice and indented > without affecting the way your html code is displayed: > > sub Something { > > print <<" END_OF_FORM"; # note that is a tab not spaces ... > <html> > <head> > <title>Something</title> > </head> > <body ....> > ..... > </body> > </html> > END_OF_FORM > # ... which matches the tab there at the start of the preceeding line > } > > > ---Larry > > > At 1:10 PM -0500 12/10/02, John Stokes wrote: >> Really? >> >> How could I mix something like: >> >> print OUTPUTFILE $q->start_html('Application'); >> print OUTPUTFILE $q->center( >> $q->h2("My Company Name"), >> $q->p($q->strong("Application")), >> ); >> >> print OUTPUTFILE $q->p("Applicant's Name: ",$q->b($q->param("Name")); >> >> With something like print >> End_of_form? Isn't that producing two HTML >> headers, which is illegal? >> >> ...unless I just use CGI.pm for variable processing. Hmmm. Would this work? >> >> use CGI; >> my $q = new CGI(); >> >> print OUTPUTFILE >> End_of_form >> >> <B>My Company Name</B> >> Applicant's Name: $q->param("Name") >> >> End_of_form >> >> ?? >> >> If that's a legal syntax, then that solves my problem! >> >> Thanks all! >> >> -John > > > +------------------------------------------------------------------------+ > | Larry Coffin, G.P.H. Watertown, MA | > | http://www.PointInfinity.com/lcoffin/ [EMAIL PROTECTED] | > +------------------------------------------------------------------------+ > > Hofstadter's Law: > It always takes longer than you expect, even when you take > Hofstadter's Law into account. > > > - > -- -John Stokes Computer Psychiatrist (Director of Information Technology) Church Resource Ministries [EMAIL PROTECTED] Three Pillars: Humility, Communication, Balance -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]