Vamos supor que temos um BD assim:
1|Gabriel|ghpnet@ig.com 2|Prix|cgimasters@lalala.com 3|Giovani|Stonerock@lala.com
então criamos o seguinte script
#!/usr/bin/perl print "Content-type: text/html\n\n"; # Aqui pomos o caminho do perl e o header use CGI; $cgi = new CGI; # Chamamos o modeulo para capturar dados dos formulario $acao = $cgi->param("acao"); # variavel da ação do script if($acao eq ""){ # se $acao for vazio, mostra os registros do bd para escolher qual deletar open(BD,"dados.txt"); @bd=<BD>; close(BD); # colocamos os dado do bd numa array foreach (@bd){ chomp; ($id,$nome,$email) = split(/\|/,$_); print "Nome: $nome [<a href=\"?acao=apagar&id=-$id\">apagar</a>]<br>"; } # separamos o bd e criamos o link para escolher qual dado apagar } if($acao eq "apagar"){ #form que apaga a id $idx = $cgi->param("id"); #pega a id a ser apagada open(BD,"dados.txt"); @bd=<BD>; close(BD); # colocamos os dado do bd numa array foreach (@bd){ chomp; ($id,$nome,$email) = split(/\|/,$_); if($idx ne $id){ # se a id escolhida for diferente da do bd, é colocada numa array push(@bd2,"$id|$nome|$email"); } # se for igual, nao faz nada } open(BD2,">dados.txt"); #abre o bd para gravar os dados foreach $linha(@bd2){ #poe cada linha do bd em $linha print BD2 "$linha\n"; #grava $linha no bd } close(BD2); #fecha o bd print "A id <b>$idx</b> foi apagada com sucesso!"; #mostra msg avisando }
Espero que isso ajude em algo
abraços