ID:               27050
 Updated by:       [EMAIL PROTECTED]
 Reported By:      design at laneforestproducts dot com
-Status:           Feedback
+Status:           No Feedback
 Bug Type:         Session related
 Operating System: Windows 2000
 PHP Version:      5.0.0b3 (beta3)
 New Comment:

No feedback was provided. The bug is being suspended because
we assume that you are no longer experiencing the problem.
If this is not the case and you are able to provide the
information that was requested earlier, please do so and
change the status of the bug back to "Open". Thank you.




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

[2004-01-27 15:56:54] [EMAIL PROTECTED]

Please try using this CVS snapshot:

  http://snaps.php.net/php5-latest.tar.gz
 
For Windows:
 
  http://snaps.php.net/win32/php5-win32-latest.zip



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

[2004-01-27 11:03:02] design at laneforestproducts dot com

Yes, I am using php 5... Don't worry, it only exists in our dev sandbox
=) But I am very excited at this new turn for php!

About Kill Session: I meant to close your browser and then reload the
page to get a new session, thus firing the creation of a new lfp_user
object. I would expect a new phpsessid to be generated, and the
lfp_guid to be found on the client's box when the object is
instantiated. Instead, the lfp_guid cookie is never found. The print_r
is there as the lazy approach to actually checking your cookies: you
can open the page then refresh to explode the cookie array onto your
screen, although I suppose lfp_user does some echo's too.

Thanks for the quick response! ~Andrew

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

[2004-01-26 20:10:51] [EMAIL PROTECTED]

First of all, are you really using PHP 5? Have you tried PHP 4.3.4 ?

And what do you mean with 'kill session' ??


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

[2004-01-26 11:16:22] design at laneforestproducts dot com

Description:
------------
With the code below, the expected function is that a returning user
with the 'lfp_guid' cookie will be recognized when the cookie is read.
However, the lfp_guid is never found  again after creation and a new
lfp_guid is created at the beginning of each session. 


Reproduce code:
---------------
class lfp_user {
        var $guid;
        function lfp_user() {
                if (isset($_COOKIE['lfp_guid'])) {
                        $this->guid =$_COOKIE['lfp_guid'];
                } else {
                        $this->guid = md5(uniqid(rand(0,1)*100,true));
                        
setcookie("lfp_guid",$this->guid,time()+60*60*24*365*2,"","127.0.0.1",true);
                }

                echo "LFP_USER.constructor: _COOKIE['lfp_guid']==
'".$_COOKIE['lfp_guid']."'<br>";
                echo "LFP_USER.constructor: GUID == ".$this->guid."<br>";
                
                //echo isset($_COOKIE['lfp_guid'])."<br>";
        } // end constructor
} // end class
session_start();
if (empty($_COOKIE['PHPSESSID'])) {                     
                $_SESSION['lfp_user'] = new lfp_user(); 
}       
// kill session and reload page again to see nothing in cookie:
print_r($_COOKIE);

Expected result:
----------------
Since the lfp_guid cookie is actually set on the user's machine,
$_COOKIE would access this list and store it in the new object.


Actual result:
--------------
A new lfp_guid is created and set on the user's machine no matter what.


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


-- 
Edit this bug report at http://bugs.php.net/?id=27050&edit=1

Reply via email to