Rob Richardson wrote:
> 
> Hello again.

Hello,

> None of this is working.
> 
> John Krahn suggested:
> >     push @{$trainsList{$trainDate}}, @trainData;
> (note the curly brackets on the outside).  This gave me the following
> error:
> 
> Can't locate object method "trainList" via package "trainDate" (perhaps
> you forgot to load "trainDate"?) at
> c:\INDIGO~1\HTDOCS\CREW\CALENDAR.CGI line 242, <SCHEDULE> line 1.
> 
> Beau Cox suggested:
> 
> >  push @( $trainsList{$trainDate} }, $trainRef;
> In this line, the @ is followed by a parenthesis while the comma is
> preceded by a curly bracket.  I presumed they both should have been
> parentheses.  When I try it, I get:
> syntax error at c:\INDIGO~1\HTDOCS\CREW\CALENDAR.CGI line 244, near
> "@($trainsList"
> syntax error at c:\INDIGO~1\HTDOCS\CREW\CALENDAR.CGI line 259, near "}"
> I have no idea why this construct should cause Perl to be confused
> about the closing bracket at the close of my program.
> 
> If I try it without brackets or parentheses:
> >  push @$trainsList{$trainDate}, $trainRef;
> 
> I get:
> Type of arg 1 to push must be array (not hash slice) at
> c:\INDIGO~1\HTDOCS\CREW\CALENDAR.CGI line 244, near "$trainRef;"
> 
> What's going on?  How can I push my reference into an array to which I
> only have access through a reference?

It looks like you are having problems with references and complex data
structures (and maybe error messages as well.)  Perl includes a lot of
documentation to explain all these things, usually through the perldoc
program.  From a commmand line prompt try running these commands:

perldoc perlreftut
perldoc perlref
perldoc perldata
perldoc perldsc
perldoc perllol
perldoc perldiag



John
-- 
use Perl;
program
fulfillment

-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to