(contributo di brian d foy)
Usate il modulo CGI.pm che trovate nel Perl. È veloce e facile ed
effettivamente svolge un bel po' di lavoro er garantire che le cose avvengano in
maniera corretta. Si occupano delle richieste GET, POST ed HEAD, form multipart, campi
multivalore, stringhe di interrogazione, combinazioni di messaggi del body e molte altre
cose di cui probabilmente non vorreste starci a pensare.
Niente di più semplice: il modulo CGI effettua il parsing [analisi sintattica, NdT]
dell'input e rende disponibile ogni valore attraverso la funzione param().
use CGI qw(:standard);
my $totale = param( 'prezzo' ) + param( 'spedizione' );
my @items = param( 'oggetto' ); # valori multipli, stesso nome del campo
Se volete un approccio orientato agli oggetti, CGI.pm può fare pure questo.
use CGI;
my $cgi = CGI->new();
my $total = $cgi->param( 'prezzo' ) + $cgi->param( 'spedizione' );
my @items = $cgi->param( 'oggetto' );
Potreste anche provare CGI::Minimal che è una versione leggera della stessa cosa.
Anche altri moduli del tipo CGI::*, disponibili su CPAN, potrebbero fare un lavoro migliore per voi.
Molte persone tentano di scrivere il proprio decodificatore (o copiare quello di un altro programma)
e poi incappare in una o molte problematiche di questo tipo di compito. È molto più
semplice e meno seccante usare CGI.pm.
|