В массиве @news - 3 записи...
Почему в результате работы функции остается только первая?
Сбой в конструкции return @news;
sub BlockSub
{
$sth = $dbh->prepare(qq{ SELECT text FROM news ORDER BY date DESC LIMIT 0 , 3});
$sth->execute();
while (my ($text) = $sth->fetchrow_array())
{
push(@news,$text);
};
$sth->finish();
return @news;
};