You are viewing a plain text version of this content. The canonical link for it is here.
Posted to embperl@perl.apache.org by Frank Wesemann <f....@fotofinder.net> on 2006/04/20 00:03:23 UTC

Hashes in %udat

Hello list,
I have two embperl Pages, which both alter %udat.
The changes in %udat are only reflected by the page that does the update
when i change/insert hashes to udat. I didn't find anything in the
archive about this.

These are the pages:

page1.ep:
        <html>
        [*
           $udat{'lists'}->{'list1'}->{'key1'} = $fdat{'in'};
           print Data:::Dumper::Dumper ( \%udat );
        *]
        </html>
        
page2.ep:
        <html>
        [*
           $udat{'lists'}->{'list1'}->{'key2'} = $fdat{'in'};
           print Data:::Dumper::Dumper ( \%udat );
        *]
        </html>
        
If I first call page1.ep?in=something it prints as expected:
	"$VAR1 = {
		'lists' => { 'list1' => { 'key1' => 'something' }}

If I then call page2?in=someotherthing it prints:
	"$VAR1 = {
		'lists' => { 'list1' => { 'key2' => 'someotherthing' }}

so key2 is missing in this %udat.

Repeatedly changing the values is reflected in the respective pages but
they never see the values from the other page.

I found a workaround in changing something in the first Level of %udat.
If I add a $udat{'ptime'} = time() in the pages, than they both see the
other values too. So they both print:

"$VAR1 = {
	'lists' => { 
		     'list1' => { 'key1' => 'something',
				  'key2' => 'someotherthing' }
		    }
	}

Am I missing something
Is this a bug? 

regards
frank



---------------------------------------------------------------------
To unsubscribe, e-mail: embperl-unsubscribe@perl.apache.org
For additional commands, e-mail: embperl-help@perl.apache.org