#!/usr/bin/perl use CGI; use strict; use imdb; my $movie = CGI::param('movie'); my $imdb = IMDB->new(); my %res = IMDB->query('title' => $movie); if ($res{best_title_1}) { select_movie(); } elsif ($res{imdb_title}) { valid_asis(); } else { fail(); } sub fail() { print "Content-type: text/html\n\n"; print "Your submission: <b>$movie</b> didn't match anything. <a href=index.cgi>Try again</a>"; } sub valid_asis() { print "Location: record.cgi?movie=$res{imdb_title}\n\n"; } sub select_movie() { my ($key, $value); print "Content-type: text/html\n\n"; print "<h1>Multiple Results</h1><br>Please select from the following:<br>"; print "<form action=record.cgi method=POST>\n"; while (($key,$value) = each %res) { if (index($key, "best_title_") != -1) { print "<input type=radio name=movie value='$value'>$value<br>\n"; } } print "<input type=submit></form><br>If you selection is not present, please try being more specific. <a href=index.cgi>Try again</a>."; }