Using perl Syntax Highlighting
sub obtener_categorias{
my($cliente) = @_;
my $categorias = "../".$cliente."/db/categorias.txt";
my @loop_data = ();
my %loop;
@categorias = kread($categorias,1,0);
foreach $registro(@categorias){
$registro =~ s/\n//g;
($id,$nombre,$privacidad) = split(/\|\|/, $registro);
if ($privacidad == 0){
#$categorias{'CATEGORIA'} = $nombre;
#$categorias{'IDCATEGORIA'} = $id;
$loop{CATEGORIA} = $nombre;
$loop{IDCATEGORIA} = $id;
# push(@loop_data, \%categorias);
push(@loop_data, \%loop);
}
}
print "<pre>";
print Dumper( @loop_data );
print "</pre>";
return @loop_data;
my($cliente) = @_;
my $categorias = "../".$cliente."/db/categorias.txt";
my @loop_data = ();
my %loop;
@categorias = kread($categorias,1,0);
foreach $registro(@categorias){
$registro =~ s/\n//g;
($id,$nombre,$privacidad) = split(/\|\|/, $registro);
if ($privacidad == 0){
#$categorias{'CATEGORIA'} = $nombre;
#$categorias{'IDCATEGORIA'} = $id;
$loop{CATEGORIA} = $nombre;
$loop{IDCATEGORIA} = $id;
# push(@loop_data, \%categorias);
push(@loop_data, \%loop);
}
}
print "<pre>";
print Dumper( @loop_data );
print "</pre>";
return @loop_data;
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4
EL Data::Dumper me arroja esto:
- Código: Seleccionar todo
$VAR1 = {
'CATEGORIA' => 'Punto 9',
'IDCATEGORIA' => '9'
};
$VAR2 = $VAR1;
$VAR3 = $VAR1;
$VAR4 = $VAR1;
$VAR5 = $VAR1;
$VAR6 = $VAR1;
$VAR7 = $VAR1;
$VAR8 = $VAR1;
$VAR9 = $VAR1;
$VAR10 = $VAR1;
$VAR11 = $VAR1;
Solamente me muestra el último valor obtenido del fichero, el punto9 en este caso.
Y cuando lo utilizo de esta forma:
Using perl Syntax Highlighting
sub obtener_categorias{
my($cliente) = @_;
my $categorias = "../".$cliente."/db/categorias.txt";
my @loop_data = ();
my %loop;
@categorias = kread($categorias,1,0);
foreach $registro(@categorias){
$registro =~ s/\n//g;
($id,$nombre,$privacidad) = split(/\|\|/, $registro);
if ($privacidad == 0){
#$categorias{'CATEGORIA'} = $nombre;
#$categorias{'IDCATEGORIA'} = $id;
$loop{CATEGORIA} = $nombre;
$loop{IDCATEGORIA} = $id;
# push(@loop_data, \%categorias);
push(@loop_data, %loop); #AQUI SOLO QUITO EL / DE PASAR POR REFERENCIA
}
}
print "<pre>";
print Dumper( @loop_data );
print "</pre>";
return @loop_data;
my($cliente) = @_;
my $categorias = "../".$cliente."/db/categorias.txt";
my @loop_data = ();
my %loop;
@categorias = kread($categorias,1,0);
foreach $registro(@categorias){
$registro =~ s/\n//g;
($id,$nombre,$privacidad) = split(/\|\|/, $registro);
if ($privacidad == 0){
#$categorias{'CATEGORIA'} = $nombre;
#$categorias{'IDCATEGORIA'} = $id;
$loop{CATEGORIA} = $nombre;
$loop{IDCATEGORIA} = $id;
# push(@loop_data, \%categorias);
push(@loop_data, %loop); #AQUI SOLO QUITO EL / DE PASAR POR REFERENCIA
}
}
print "<pre>";
print Dumper( @loop_data );
print "</pre>";
return @loop_data;
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4
El Data::Dumper me arroja esto. Ahí esta bien, me arroja todas las categorías, pero me da error en el HTML::Template:
- Código: Seleccionar todo
$VAR1 = 'CATEGORIA';
$VAR2 = 'Punto 10';
$VAR3 = 'IDCATEGORIA';
$VAR4 = '10';
$VAR5 = 'CATEGORIA';
$VAR6 = 'Punto 11';
$VAR7 = 'IDCATEGORIA';
$VAR8 = '11';
$VAR9 = 'CATEGORIA';
$VAR10 = 'Punto 1';
$VAR11 = 'IDCATEGORIA';
$VAR12 = '1';
$VAR13 = 'CATEGORIA';
$VAR14 = 'Punto 2';
$VAR15 = 'IDCATEGORIA';
$VAR16 = '2';
$VAR17 = 'CATEGORIA';
$VAR18 = 'Punto 3';
$VAR19 = 'IDCATEGORIA';
$VAR20 = '3';
$VAR21 = 'CATEGORIA';
$VAR22 = 'Punto 4';
$VAR23 = 'IDCATEGORIA';
$VAR24 = '4';
$VAR25 = 'CATEGORIA';
$VAR26 = 'Punto 5';
$VAR27 = 'IDCATEGORIA';
$VAR28 = '5';
$VAR29 = 'CATEGORIA';
$VAR30 = 'Punto 6';
$VAR31 = 'IDCATEGORIA';
$VAR32 = '6';
$VAR33 = 'CATEGORIA';
$VAR34 = 'Punto 7';
$VAR35 = 'IDCATEGORIA';
$VAR36 = '7';
$VAR37 = 'CATEGORIA';
$VAR38 = 'Punto 8';
$VAR39 = 'IDCATEGORIA';
$VAR40 = '8';
$VAR41 = 'CATEGORIA';
$VAR42 = 'Punto 9';
$VAR43 = 'IDCATEGORIA';
$VAR44 = '9';
Software error:
HTML::Template->output() : fatal error in loop output : HTML::Template : Attempt to get nonexistent parameter 'punto 10' - this parameter name doesn't match any declarations in the template file : (die_on_bad_params set => 1) at C:/Perl/site/lib/HTML/Template.pm line 3068
at E:\O'Telch\Sitios web\bitacora\riocauca\index.pl line 22
Bueno, ¿cómo puedo solucionar este problema?