in reply to symbolic ref error

The error is here:

{$_[2]}{$_[0]}{$_[1]}

I don't know what that is supposed to be. However, you might want to consider reformatting this and actually naming your variables. You'll notice the syntax error is here, but it's still much easier to read:

my ($foo, $bar, $baz, $quux) = @_; if ($bar == 1) { push @{ {$baz}{$foo}{$bar} }, $quux; }

Cheers,
Ovid

New address of my CGI Course.