Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic
 
PerlMonks  

Re: HTTP::Form and invalid radio button values

by PodMaster (Abbot)
on Dec 19, 2003 at 08:10 UTC ( #315766=note: print w/replies, xml ) Need Help??


in reply to HTTP::Form and invalid radio button values

Modifying your code so I can run this ... I get Illegal value 'invalid_value' for field 'new_animals' at C:/Perl/site/lib/WWW/Mechanize.pm line 541 (you should've mentioned the error message you got).

So I crack open WWW/Mechanize.pm and see this is resulting from a ->value call on a form.

So I check the HTML::Form docs for value and read If the input only can take an enumerated list of values, then it is an error to try to set it to something else and the method will croak if you try.

So what do I do, that's right, I bust out Data::Dumper and discover (via ->find_input)

$VAR1 = bless( { 'seen' => [ 1, 0 ], 'menu' => [ undef, 'baboon' ], 'multiple' => 'multiple', 'name' => 'new_animals', 'current' => 0, 'size' => '10', 'type' => 'option', 'value_names' => [ 'off', 'baboon' ] }, 'HTML::Form::ListInput' );
Can you guess what I'd try next?

I hope this has been informational :)

update: on a sidenote, for testing purposes I was using the cookie.cgi file from the CGI.pm distribution (i was not calling anyone a baboon)

MJD says "you can't just make shit up and expect the computer to know what you mean, retardo!"
I run a Win32 PPM repository for perl 5.6.x and 5.8.x -- I take requests (README).
** The third rule of perl club is a statement of fact: pod is sexy.

Replies are listed 'Best First'.
Re: Re: HTTP::Form and invalid radio button values
by cees (Curate) on Dec 19, 2003 at 13:50 UTC
    Modifying your code so I can run this ... I get Illegal value 'invalid_value' for field 'new_animals' at C:/Perl/site/lib/WWW/Mechanize.pm line 541 (you should've mentioned the error message you got).

    You're right, I should have included the error message. I did mention that HTML::Form performed as advertized, but I see now that it was not very clear.

    So what do I do, that's right, I bust out Data::Dumper and discover (via ->find_input). Can you guess what I'd try next?

    You want me to play with the class data directly??? I guess I may need to resort to that, but that would make my code brittle. I guess HTML::Form is stable enough that it's internal class data will probably not change in the future, but that is somethng I can not guarantee... I guess it if does happen my test will just fail, and I will be notified that there is a problem and can hunt it down, so it's not terrible.

    Thanks

    - Cees

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://315766]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others meditating upon the Monastery: (6)
As of 2019-12-11 14:50 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found

    Notices?