http://qs1969.pair.com?node_id=179288


in reply to Populating the form

I am assuming you want to show this form on a browser with some values filled in. To do this, you will need to modify the stuff returned from the get($url) call (in the $html variable). There seem to be two approaches I can think of to do this.

If the form file is in your control, you can put in special tags (like $$USERID$$) and simply do a pattern match "substitution" to replace them with your values. Hence the form file will contain:

<input type=text name=userid value="$$USERID$$">

And you will use something like (untested!):

$userid="123"; $html =~ s/\$\$USERID\$\$/$userid/g;

And it becomes

<input type=text name=userid value="123">

There are HTML Template libraries that can help you do this and much much more. So try reusing those rather than coming up with your own replacement scheme if this is a sizeable project.

If the form is not in your control, you will need to parse the form (using module like HTML::Parser or HTML::TokeParser) to find the "input" tags and then switch the value parameter with ones of your own choice. There are examples in the documentation (man pages and Internet sites) that you can use.

-- termix