Учусь программировать на perl'e и вот
такая проблема: при вызове функции что-то
случается, причем в самой функции не выполняется
даже первый оператор. С синтаксисом ( судя по
perl -c forum.cgi ) все в порядке.
sub postdecode
{
PrintLog ( "here in\n" ); # до сюда почему-то не доходит
my $post = @_;
$post =~ s/\+/ /g;
$post =~ s/
/<BR>/g;
$post =~ s/%([0-9A-Ha-h]{2})/pack('C',hex($1))/ge;
return $post;
}
.....
sub ProcessInputPost
{
PrintLog ( "IN PrecessInputPost\n" );
my $data = <STDIN>;
PrintLog ( "Before the call\n");
# тут все и обрывается
$data = postencode ( "$data" );
PrintLog ( "After the call\n");
.....
}
В логе получаю :
IN ProcessInputPost
Before the call
и все
думал, что может быть это из-за того, что обявляю
переменные как "my" , но , когда поменял на local
ничего не изменилось.
несомненно поискал бы в инете решение проблемы,
да вот сформулировать не так просто в воисковике...
Буду очень благодарен, если кто-нибудь поможет.