o script apresenta um formulário caso não tenha recebido email
o script envia o email caso tenha recebido o email
Onde o script manipula strings? Localize no código fonte.
Cuidado! Os scripts podem ter falha de segurança
#!/usr/bin/perl -w
#-----------------------------------------
# script mandamail.cgi
# autor: Jorge Kinoshita
# entrada $nome - destinatario
# objetivo:
# 1. enviar email contendo seu proprio codigo para o destinatario.
# 2. fazer o aluno parar para pensar em como funciona um CGI-script
# Preparado para a palestra: Linux - Os Primeiros Passos - 18 de Marco de 2000
# Encontra-se em http://www.pcs.usp.br/cgi-bin/mandamail.cgi
#-----------------------------------------
use CGI qw(:standard);
my $nome = param("nome");
print header() . start_html("Exemplo de um CGI") . h1("Exemplo de CGI") ;
if ($nome) {
chomp $nome;
if ($nome =~ /^[\w\.]+@[\w\.]+$/) {
print p("enviei o arquivo mandamail.cgi para $nome");
system("mail -s \"ViaLinuxis - script mandamail.cgi\" $nome autor: Jorge Kinoshita");
print p("objetivo: ilustrar CGI-script na palestra Linux - Os primeiros passos");
print hr() . start_form();
print p("Este script envia o codigo de si mesmo para o destinatario que voce preencher abaixo.");
print p("O objetivo eh fazer voce pensar em como funciona o tratamento de formularios na internet.");
print p("digite seu email: " . textfield("nome", ""));
print p("obs: Nao tenha medo: nao estou sequer gravando seu email, como voce pode ver por si mesmo ao estudar o fonte deste script");
print end_form() . hr();
}