In need of help again, haven't been able to get past 2 syntax error mssgs:

Made a number of changes in my script and now can't even get it to compile:
relevant snippet follows the error mssgs, then the whole script is shown
further down.

Error Mssgs.
1. syntax error at clientdata.cgi line 71, near "}"
  (Might be a runaway multi-line "" string starting on line 69)
2. syntax error at clientdata.cgi line 75, near "}"

Snippet
...
   $dbm = tie %storedH, 'MLDM', 'client.dbm', O_CREAT|O_RDWR, 0640, $DB_HASH
                  or die "Cannot open file 'client.dbm': $!\n";

   foreach $keyouter(sort keys %dbm) {
        foreach $keyinner(keys %{$dbm{$keyouter}}){
                If ($dbm{$keyouter}{$keyinner} == "LN")
                        {
                        print "localtime($dbm{$keyouter}) \t
                               Last Name = $dbm{$keyouter}{$keyinner}\n";
                        }                                       ### <--- Line 69
                else
                        {
                        print "\t\t\t\t\tCountry   = $dbm{$keyouter}{$keyinner}\n";
                        }
                }
        };
...

?? Any ideas why this code will not compile.
?? Why doesn't,    %dbm = (%dbm, %newH);        , append %newH to %dbm? It seems to
want to over-write. (Line 44 below.)
Thanks much for your considerations. Ed

  ______________ The whole script___________________
#!/usr/bin/perl

##      clientdata.cgi

##      Test run of DB_FilE

# $TS      = time();    # LN and CN will be supplied by a form
# %visitor = (
#               $TS => {                        ## 1st appended hash
#                       LastName = LN,
#                       Country  = CN,
#                      },
#               _next appended hash here --     ## Next appended hash
#            );

  use lib '/home/sites/site61/users/esickafus/tmp';
  use lib '/home/sites/site61/users/esickafus/tmp/MLDBM-2.01/lib';
  use MLDBM qw(DB_File Storable);               # Store multi-level hash structure in
single level tied hash
  use Fcntl;                                    # to get 'em constants
  use strict ;
  use DB_File ;

  use vars qw($TS $LN $CN %newH $dbm %dbm %storedH $keyouter $keyinner ) ;

  $TS   = time();

#%visitor_bffr = (                                      # data from form:
#               'LN' => param('LN'),                    #   Last name
#               'CN' => param('CN'),                    #   Country
#               );

  $LN   = 'Washington';                                 # test value
  $CN   = 'Costa Rica';                                 #  "     "

  $newH{'TS'}           = $TS;
  $newH{'TS'}{'LN'}     = $LN;
  $newH{'TS'}{'CN'}     = $CN;

## Append %newH hash onto stored hash.

  $dbm = tie %storedH, 'MLDM', 'client.dbm', O_CREAT|O_RDWR, 0640, $DB_HASH
                  or die "Cannot open file 'client.dbm': $!\n";

  %dbm = (%dbm, %newH);

  undef $dbm;                                           # <<== Line 44
  untie %storedH;

##  SCRIPT FOR INTERROGATING STORED VISITOR DATA

##  *** Printed HoH format ***
##
##  %clientdbm =
##      Mon Apr  5 16:23:33 2002  Last Name = Sickafus
##                                Country   = USA
##
##      Tue Jan 21 15:39:02 2003  Last Name = Washington
##                                Country   = France

## Sort the stored hash on TS and print it.

   $dbm = tie %storedH, 'MLDM', 'client.dbm', O_CREAT|O_RDWR, 0640, $DB_HASH
                  or die "Cannot open file 'client.dbm': $!\n";

   foreach $keyouter(sort keys %dbm) {
        foreach $keyinner(keys %{$dbm{$keyouter}}){
                If ($dbm{$keyouter}{$keyinner} == "LN")
                        {
                        print "localtime($dbm{$keyouter}) \t
                               Last Name = $dbm{$keyouter}{$keyinner}\n";
                        }
                else
                        {
                        print "\t\t\t\t\tCountry   = $dbm{$keyouter}{$keyinner}\n";
                        }
                }
        };
   undef $dbm;
   untie %storedH;
___________End of Script ____________________________________________





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

Reply via email to