Código:
sub delete {
my @new_registros;
open (DATABASE, "<$_[0]") || &error('abrir','archivo');
my @registros = <DATABASE>;
close (DATABASE) || &error('cerrar','archivo');
foreach $registro (@registros){
$registro =~ s/\n//g;
my($id,@basura) = split(/\|\|/, $registro);
if ($id != $_[1]){
push (@new_registros,$registro);
}
}
open (DATABASE, ">$_[0]") || &error('abrir','archivo');
foreach $new_registro (@new_registros){
print DATABASE "$new_registro\n";
}
close (DATABASE) || &error('cerrar','archivo');
}
Hola, yo escribí algunos tutoriales sobre como usar bases de datos tipo texto y los uedes encontrar en
www.perlenespanol.com
En esta función la tienes que llamar pasándole 2 parámetros, uno el nombre del archivo, y otro el número id del registro a eliminar...
la idea es que el archivo esté así:
1||usuario1
2||usuario2
3||usuario3
Para usarlo sin los id me imagino que le debes hacer algo así...
Código:
foreach $registro (@registros){
$registro =~ s/\n//g;
if ($registro ne $_[1]){
push (@new_registros,$registro);
}
}
Esto va en vez de lo otro, fíjate de cambiarlo y ahora pasarle en vez del id, el nombre del usuario.
Saludos