Loading ...
Sorry, an error occurred while loading the content.

CGI::Session

Expand Messages
  • Greg Oliver
    I have a script that uses CGI::Session to store a hash.. I cannot figure out how to get the has data back from the session. The script follows, as well as
    Message 1 of 1 , Dec 2, 2003
    • 0 Attachment
      I have a script that uses CGI::Session to store a hash.. I cannot
      figure out how to get the has data back from the session. The script
      follows, as well as the stored session data.

      SCRIPT:
      #!c:\\perl\\bin\\perl.exe
      use DBD::ODBC;
      use DBI;
      use CGI;
      use CGI::Session;
      $dsn = 'driver=Microsoft Access Driver (*.mdb);dbq=c:\\ustor.mdb';
      $dbh = DBI->connect("dbi:ODBC:$dsn", '','') or die "$DBI::errstr\n";
      $sth = $dbh->prepare("SELECT * from draws");
      $sth->execute;
      $data = $sth->fetchall_hashref("transaction");
      $cgi = new CGI;
      $sid = $cgi->cookie("CGISESSID") || undef;
      $session = new CGI::Session(undef, $sid, {Directory=>'/tmp'});
      $session->param( "ARRAY", $data );
      %vars = (
      "greg" => "1_day",
      "kam" => "2_day",
      );
      $session->clear( ["testentry"] );
      $session->param( "DATA", \%vars );
      $database = "c:\\ustor.mdb";
      $cookie = $cgi->cookie(CGISESSID => $session->id);
      print $cgi->header( -cookie=>$cookie );
      print "<PRE>\n";
      $array_ref = $session->param("DATA") || [];
      $array = $session->param("ARRAY") || [];
      #print @{$array}{1}{draw_date};
      foreach $key ( keys %{$array_ref} ) {
      print "@{$array_ref}{greg}\n";
      print "$key\n";
      }
      print join "\n", %{$array_ref};
      print join "\n", %{$array};
      print "$cookie\n";
      print $#results;
      print join "\n", @results;

      STORED DATA:
      $D = {"_SESSION_ETIME" => undef,"_SESSION_ID" =>
      "96d75e3bde92904036bd199ef53abc48","ARRAY" => {1 => {"draw_date" =>
      "2003-11-13 00:00:00","draw_remaining" => 100000,"draw_requested" =>
      10000,"sub" => 10,"submitted" => "2003-11-13 00:00:00","transaction" =>
      1,"draw_paid" => 5000},2 => {"draw_date" => "2003-12-02
      00:00:00","draw_remaining" => 75000,"draw_requested" => 15000,"sub" =>
      25,"submitted" => "2003-12-02 00:00:00","transaction" => 2,"draw_paid"
      => 12000}},"_SESSION_REMOTE_ADDR" => "127.0.0.1","_SESSION_CTIME" =>
      "1070398637","_SESSION_ATIME" => "1070398637","DATA" => {"kam" =>
      "2_day","greg" => "1_day"},"_SESSION_EXPIRE_LIST" => {}}

      Thanks for any help -

      Greg Oliver



      --
      Reporting bugs: http://perl.apache.org/bugs/
      Mail list info: http://perl.apache.org/maillist/modperl.html
    Your message has been successfully submitted and would be delivered to recipients shortly.