[Cascavel-pm] Remover elemento de array em arquivo..

eden edencardim em gmail.com
Quarta Agosto 1 06:51:45 PDT 2007


On 8/1/07, Rafael Lebrão Martins <rafamv1 em ig.com.br> wrote:
> Preciso de uma ajuda!!!!!
> A variável "@user", linha 19,  recebe os valores de um outro
> código(Pesq.pl).. Esses valores são enviados quando o usuário marca os
> checkbox no
> código "pesq.pl". O problema é que quando os usuários marcam mais de um
> checkbox, apenas o valor do primeiro é excluido no
> arquivo "users" -> '/arquivos/usuarios/users'. Para tentar resolver o
> problema, criei um array com os valores de "usuario"
> na linha 19, no entanto, não consigo fazer o código verificar cada elemento
> e exclui-lo..Na linha 22 deixei /$user[0]/ só
> para não dar erro na hora de executar o código..

Se tá dando erro de execução é porque existe algum problema no programa.

> Resumindo, preciso remover
> do arquivo "users" todos os valores que forem
> selecionados nos checkbox do código "pesq.pl"..

Sua lógica só verifica o primeiro elemento de @user, então ele só está
removendo o primeiro usuário.

Você precisa fazer algo assim:

use warnings;
use strict;
use List::MoreUtils;

my @lista_antiga = pegar_lista_usuarios();
my @excluir_usuarios = param('users');
my @lista_nova = grep {my $user = $_; none {$user eq $_}
@excluir_usuários} @lista_antiga;

-- 
Eden Cardim
Instituto Baiano de Biotecnologia
Núcleo de Biologia Computacional e Gestão de Informações Biotecnológicas
Laboratório de Bioinformática


Mais detalhes sobre a lista de discussão Cascavel-pm