|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Alexander Lunkov 2:5055/201.26 17 Jul 2002 19:27:19 To : All Subject : процедуры --------------------------------------------------------------------------------
Странное что-то творится. То ли я руки погнул, то ли perl глючит. Есть,
значит, скрипт с такими строчками:
require 'proc.cgi';
my %uinfo = get_user_info($userid);
while ((my $key, my $value) = each(%uinfo)){print "$key => $value<br>"}
В proc.cgi есть подпрограмма:
sub get_user_info{
my $userid = shift @_;
my $file = glob("$path/$userid.*");
my (%user_info, $key, $value);
if (-e "$file"){
open FH, "<$file";
my @tmp = <FH>;
close FH;
for my $i(0..$#tmp){
($key, $value) = split(/ => /,$tmp[$i]);
chomp $value;
$user_info{$key} = $value;
}
}
return %user_info;
}
В браузер результат не выводится. Хэш %uinfo не заполняется. Hо если руками
запускать скрипт с теми тремя строчками, то результат выводится (консоль). В том
же скрипте (proc.cgi) есть процедура, которая юзает get_user_info и она
работает:
sub get_user_pass{
my $userid = shift @_;
my %user_info = get_user_info $userid;
return $user_info{pass1}
}
Что выпрямить?
Sincerely yours, Alex
--- Linux - suxx, FreeBSD - rulez!
* Origin: Люди всегда будут такими, какими делают их женщины. (2:5055/201.26)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/169933d359ee3.html, оценка из 5, голосов 10
|