first: it is perlmonks best practice to enclose your code in the "< code >" "< /code >" parameters (without the spaces between arrows and the word code)
second: why don't you actually try to fill out the form on the page with LWP::UserAgent or WWW::Mechanize? I recently did a tutorial about WWW::Mechanize that explains this. I would personally just 'GET' the login page, fill out the forms and submit them. WWW::Mechanize has this.