ID: 9606
Updated by: sniper
Reported By: [EMAIL PROTECTED]
Old-Status: Open
Status: Duplicate
Bug Type: *Session related
Operating system: 
PHP Version: 4.0.4pl1
Assigned To: 
Comments:

duplicate of #8676

Previous Comments:
---------------------------------------------------------------------------

[2001-03-07 18:22:17] [EMAIL PROTECTED]
Here is a sample code that produces totally random results.
Elements of container become integers, switch places or even
become objects from other script run on the server before
when saving and restoring sessions.

///////////////example//////////////////////////////////////
class elt {
     var $a; var $b; var $c;

     function elt($a, $b, $c) {
          $this->a=$a; $this->b=$b; $this->c=$c;
     }
     
     function print_elt() {
          echo htmlspecialchars($this->a.' '.$this->b.' '.$this->c).'
<br> ';
     }
     
}

class container {
     var $arr;


     function container() {
          $this->arr=array();
     }

     function put($elt) {
          $num=sizeof($this->arr);
          $this->arr[$num]=$elt;
          $this->arr['num_'.$num]=&$this->arr[$num];
     }

     function get_by_num($num) {
          return $this->arr[$num];
     }

     function get_by_text($num) {
          return $this->arr['num_'.$num];
     }
}

session_register('x');
if (isset($x)) {
     $tmp=$x->get_by_num(0); $tmp->print_elt();
     $tmp=$x->get_by_text(0); $tmp->print_elt();
     $tmp=$x->get_by_num(1); $tmp->print_elt();
     $tmp=$x->get_by_text(1); $tmp->print_elt();
     $tmp=$x->get_by_num(2); $tmp->print_elt();
     $tmp=$x->get_by_text(2); $tmp->print_elt();
}
else {
     $x=new container;
     $x->put(new elt(1, 2, 3));
     $x->put(new elt('aaa', 'bbb', 'ccc'));
     $x->put(new elt('x', 'y', 'z'));
}
////////////end of example//////////////////////////////////

I use precompiled Debian packet (at the moment I'm writing
this 4.0.4pl1-5) with modules xml, pgsql, ldap and imap. As
server I use apache (Debian packet version 1.3.14-2.3)
Here is my ini file:

//////////////////php.ini///////////////////////////////////
engine   = On
short_open_tag = On
asp_tags  = Off
precision  = 14
y2k_compliance = Off
output_buffering = Off
output_handler  =  
implicit_flush  = Off 
allow_call_time_pass_reference = On 
safe_mode  = Off
safe_mode_exec_dir =
safe_mode_allowed_env_vars = PHP_     
safe_mode_protected_env_vars = LD_LIBRARY_PATH  
disable_functions =        
highlight.string = #DD0000
highlight.comment = #FF8000
highlight.keyword = #007700
highlight.bg  = #FFFFFF
highlight.default = #0000BB
highlight.html  = #000000

expose_php = On 
max_execution_time = 30
memory_limit = 8M

error_reporting = E_ALL & ~E_NOTICE  
display_errors = On
display_startup_errors = Off
log_errors  = Off
track_errors = Off 
warn_plus_overloading = Off

variables_order  = "EGPCS" 
register_globals = On  
register_argc_argv = On  
post_max_size  = 8M  
gpc_order   = "GPC" 

magic_quotes_gpc = On  
magic_quotes_runtime= Off  
magic_quotes_sybase = Off  

auto_prepend_file =
auto_append_file =

default_mimetype = "text/html"

include_path =                   
doc_root  =     
user_dir  =     
enable_dl  = On    
file_uploads = On    

upload_max_filesize = 2M

allow_url_fopen = On

[Syslog]
define_syslog_variables = Off

[mail function]
SMTP   = localhost   
sendmail_from = [EMAIL PROTECTED]

[Debugger]
debugger.host = localhost
debugger.port = 7869
debugger.enabled = False

[Logging]
[Java]

[SQL]
sql.safe_mode = Off

[ODBC]
odbc.allow_persistent = On
odbc.check_persistent  =  On
odbc.max_persistent = -1
odbc.max_links   = -1
odbc.defaultlrl = 4096 
odbc.defaultbinmode =  1 

[MySQL]
mysql.allow_persistent = On 
mysql.max_persistent = -1
mysql.max_links   = -1
mysql.default_port  =  
mysql.default_socket =  
mysql.default_host  =  
mysql.default_user  =  
mysql.default_password =  

[mSQL]
msql.allow_persistent = On 
msql.max_persistent  = -1 
msql.max_links   = -1 

[PostgresSQL]
pgsql.allow_persistent = On 
pgsql.max_persistent = -1 
pgsql.max_links   = -1 

[Sybase]
sybase.allow_persistent = On 
sybase.max_persistent = -1 
sybase.max_links  = -1 
sybase.min_error_severity = 10 
sybase.min_message_severity = 10 
sybase.compatability_mode = Off 

[Sybase-CT]
sybct.allow_persistent = On  
sybct.max_persistent = -1  
sybct.max_links   = -1  
sybct.min_server_severity = 10 
sybct.min_client_severity = 10 

[bcmath]
bcmath.scale = 0 

[browscap]

[Informix]
ifx.default_host  =  
ifx.default_user  =  
ifx.default_password  =  
ifx.allow_persistent  = On 
ifx.max_persistent  = -1 
ifx.max_links   = -1 
ifx.textasvarchar  = 0 
ifx.byteasvarchar  = 0 
ifx.charasvarchar  = 0 
ifx.blobinfile   = 0 
ifx.nullformat   = 0 

[Session]
session.save_handler      = files   
session.save_path         = /tmp    
session.use_cookies       = 1       
session.name              = PHPSESSID  
session.auto_start        = 0       
session.cookie_lifetime   = 0       
session.cookie_path       = /       
session.cookie_domain     =         
session.serialize_handler = php     
session.gc_probability    = 1       
session.gc_maxlifetime    = 1440    
session.referer_check     =         
session.entropy_length    = 0       
session.entropy_file      =         
session.cache_limiter     = nocache 
session.cache_expire      = 180     
session.use_trans_sid     = 1 

url_rewriter.tags         =
"a=href,area=href,frame=src,input=src,form=fakeentry"

[MSSQL]
mssql.allow_persistent  = On 
mssql.max_persistent  = -1 
mssql.max_links    = -1 
mssql.min_error_severity = 10 
mssql.min_message_severity = 10 
mssql.compatability_mode =  Off 

[Assertion]

[Ingres II]
ingres.allow_persistent  = On 
ingres.max_persistent  = -1 
ingres.max_links   = -1 
ingres.default_database  =  
ingres.default_user   =  
ingres.default_password  =  

[Verisign Payflow Pro]
pfpro.defaulthost   = "test.signio.com" 
pfpro.defaultport   = 443 
pfpro.defaulttimeout  = 30 

[Sockets]
sockets.use_system_read  = On 

extension=imap.so
extension=ldap.so
extension=pgsql.so
extension=xml.so
/////////////////end of php.ini/////////////////////////////


---------------------------------------------------------------------------



ATTENTION! Do NOT reply to this email!
To reply, use the web interface found at http://bugs.php.net/?id=9606&edit=2


-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]

Reply via email to