私は古いコードを継承しています。これは、MySQLデータベーステーブルからカテゴリのリストを取得します。私はそれらに多レベルのサポートを追加する任務があります。私はほぼ完了しましたが、何らかの理由で、実際にアプリを試してみるとエラーになります。なぜこのエラーが発生し続けるのですか?
誤差がある(あなたもhttp://detyams.ru/?cat=1でそれを見ることができます):
/usr/local/lib/perl5/site_perl/mach/5.18/のARRAYのリファレンスとして未定義の値を使用することはできません私はそこにDBIメソッドを使用してのいくつかの例を見てきた2231
sub catlist
{
my $self=shift;
state $sth=$self->db->prepare(q/SELECT c.cat_id,c.cat_name,COUNT(pn.p_id) as cnt from category c
LEFT JOIN price_new pn ON (pn.cat_id=c.cat_id) GROUP BY pn.cat_id WHERE c.parent_id=?/);
$sth->execute(0);
my @catlist=$sth->fetchall_arrayref({}); # <- this call leads to the failure in the deep of DBI code.
foreach my $item (@catlist)
{
$sth->execute($item->{cat_id});
$item->{children}=$sth->fetchall_arrayref({});
}
return @catlist;
}
DBI.pmライン2074、ライン(のようなhttp://www.perlmonks.org/?node_id=284436#loh)は、すべては私のコードと一致してあるように思われます。
これらのダウンボートは何ですか? – ZzZombo