"Horace Franklin Jr." wrote: > Help! > > I need help using %hashes to receive input from the form below. > > What changes would I make to the syntax of the commented lines > below to do this?. > > > my $form = <<E_FORM; > <h3>Hello!</h3> > <form action="$url" method="post"> <!--Don't quote keywords like POST > # <p><b>My name is</b>: <input type="text" name="name"/></p> > # <p><b>My E-mail is</b>: <input type="text" name="email"/></p> > <p><b>Message</b>:</p> > # <p><textarea cols="30" rows="6" wrap="virtual" name="message"></p> > <p>Type your message here. > </textarea> > <input type="submit"></p> > </form> > E_FORM > > $form;
Hi Horace, You really need to understand the difference between Perl and HTML. Those lines are not commented. In HTML, a comment begins <!-- and ends -->. Perl and HTML are completely different languages, used in completely different settings. Perl can be used to generate HTML, though. You do need to start with good texts on HTML, on CGI, and on Perl. At least one for each. In brief, though, when the user clicks the button--which will have no text, since you have not given the submit input a value parameter--the browser will send a POST request to the given URL. The url will ahve the form values encoded in it like: http://my_isp.com/~my_user/cgi-bin/my_script.cgi?name=Horace+Franklin+Jr%2A&email=my_email%40my_isp.com You Perl program will then read the part following ? from STDIN. Your job, or that of the module you use will be to read it, split the query lin on & first, tpo separate the key/pairs, then split each pair on = to get the name and value for that pair. Generally the keys will be clean, since you or the web-page writer can control that. The values though, will. have to be unescaped, first by using the tr function to replace each '+' with ' ', then by pack()ing each hex sequence with the character equivalent of its hex value. For each pair, one it has been separated and cleaned into it's name and value portions, can be entered to the hash like. $cgi_return{$name} = $value; Having written that all out, I can understand why many would prefer to just use a module. Joseph -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]