CGI.pm
Originalförfattare | Lincoln Stein |
---|---|
Utvecklare | Lee Johnson |
Stabil frisättning | 4.21 / 2015-06-22 |
Plattform | Perl |
Typ | Perl-modul för CGI |
Hemsida |
CGI.pm är en stor och en gång mycket använd Perl-modul för programmering av Common Gateway Interface (CGI) webbapplikationer , vilket ger ett konsekvent API för att ta emot och bearbeta användarinmatning. Det finns också funktioner för att producera HTML- eller XHTML -utdata, men dessa är nu inte underhållna och ska undvikas. CGI.pm var en kärnmodul i Perl men har tagits bort från och med v5.22 av Perl. Modulen skrevs av Lincoln Stein och underhålls nu av Lee Johnson.
Exempel
Här är en enkel CGI-sida, skriven i Perl med CGI.pm (i objektorienterad stil):
#!/usr/bin/env perl använder strikt ; använd varningar ; använd CGI ; min $cgi = CGI -> ny ; print $cgi -> header ( 'text/html') ; print << "EndOfHTML" ; <! DOCTYPE html > <html> <head> <title> En enkel CGI- sida </title> < meta http - equiv = "Content-Type" content = "text/html; charset=iso-8859-1" /> < / head> <body> <h1> En enkel CGI- sida </h1> < form method = "post" enctype = "multipart/form-data" > Namn: < input type = "text" name = "name" />< br / > Ålder: < input type = "text" name = "age" /> <p> < input type = "submit" name = "Skicka!" value = "Skicka!" /> </form> < hr /> EndOfHTML if ( my $name = $cgi -> param ( 'name' ) ) { print "Ditt namn är $name.<br />" ; } if ( min $age = $cgi -> param ( 'age' ) ) { print "Du är $age years old." ; } skriv ut '</body></html>' ;
Detta skulle skriva ut ett mycket enkelt webbformulär, fråga efter ditt namn och ålder, och efter att ha skickats in, visa formuläret igen med namn och ålder som visas under. Detta exempel använder sig av CGI.pms objektorienterade förmågor; det kan också göras genom att anropa funktioner direkt, utan $cgi-> , men de nödvändiga funktionerna måste importeras till namnutrymmet för skriptet som kräver åtkomst till dessa funktioner:
#!perl använder strikt ; använd varningar ; använd CGI qw/ :standard / ; print header ( 'text/html' ); # ... HTML-utdata samma som ovanstående exempel if ( my $name = param ( 'name' ) ) { print "Ditt namn är $name.<br />" ; } if ( my $age = param ( 'age' ) ) { print "Du är $age years old." ; } skriv ut '</body></html>' ;
Obs: i många exempel används $q , förkortning för query, för att lagra ett CGI-objekt.
Se även
externa länkar