|
|
|||||||||
|
|||||||||
| |||||||||
|
|
|
| |||||||||
![]() |
|
|
«
Previous Thread
|
Next Thread
»
|
Thread Tools | Search this Thread | Rate Thread | Display Modes |
|
#1
|
|||
|
|||
|
perl & html
I never quite know what forum to go to...so forgive me in advance.
I have a form where users input text into text boxes. When they click submit the text is sent to a databsae and a cgi page is called and the user's input is displayed in a drop down box. This is my code:- print '<select name=Choice>'; while (my $ref = $sth->fetchrow_arrayref) { for (my $i = 0; $i < $numFields; $i++) { if ($i) { printf ("%s</option>",$$ref[$i]); } else { printf ("<option value=%s>",$i); } } print '<br>'; } print '</select><br><br>'; My problem is: If the user input from the html page already exists in the database i want to bring up the selection list on the CGI script with that term pre-selected??????? Does anyone have any idea how this can be done? Extremely grateful...
__________________
******* Lorraine |
|
#2
|
||||
|
||||
|
All you have to do it output "selected" into the option box and that option will be the one "selected".
Code:
<select name='poo'> <option value='foo'>Foo <option value='bar'>Bar <option value='blee'>Blee <option value='bloo' selected>Bloo </select> So figure out how to do that with your code, using some kind of conditional. Honestly, creating forms without using CGI.pm is painful. Here's a VERY easy way to do this with CGI.pm: Code:
my $ref=$sth->fetchrow_arrayref(); my $form; $form.=$q->start_form(); $form.=$q->hidden(-name=>'control',-value=>'updatestuff'); $form.=$q->popup_menu(-name=>'poo',-values=>$ref,-default=>'bloo'); $form.=$q->submit(); $form.=$q->end_form(); print $form; What a time saver! Of course, you can print the elements as you go too. |
![]() |
| Viewing: Dev Shed Forums > Programming Languages > Perl Programming > perl & html |
| Thread Tools | Search this Thread |
| Display Modes | Rate This Thread |
|
|
|
|
|