#48630 [Bgs]: cookie not set if $domain is given as input

From: Date: Sat, 11 Jul 2009 12:01:58 +0000
Subject: #48630 [Bgs]: cookie not set if $domain is given as input
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-139621@lists.php.net to get a copy of this message
 ID:               48630
 User updated by:  sigurdne at online dot no
 Reported By:      sigurdne at online dot no
 Status:           Bogus
 Bug Type:         Session related
 Operating System: ubuntu 9.04
 PHP Version:      5.3CVS-2009-06-21 (snap)
 New Comment:

Ah - my bad.
Thanks for looking into it.


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

[2009-07-10 18:25:37] jani@php.net

Well, you're trying to set domain to something that isn't a domain. 
Please check the manual: http://php.net/setcookie and 
http://curl.haxx.se/rfc/cookie_spec.html and 

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

[2009-07-10 11:16:14] sigurdne at online dot no

<?php
	/*
	* A test for session_set_cookie_params and setcookie as mentioned in
	* http://bugs.php.net/bug.php?id=48630
	*/

	$cookiename  = 'cookiename';
	$cookievalue = $_COOKIE[$cookiename] + 1;
	$cookietime  = time() + 3600;
	$path        = '/';
	$domain      = $_SERVER['HTTP_HOST']; // this one includes the port if
given (example:127.0.0.1:8080).
	$secure      = false;
	$httponly    = true;	

	session_set_cookie_params(0, $path, $domain, $secure, $httponly);
	setcookie($cookiename, $cookievalue, $cookietime,$path,
$domain,$secure, $httponly);

	echo '$_SERVER[SERVER_PORT]: ' . $_SERVER['SERVER_PORT'].
'</br></br>';
	echo 'cookie_params:';
	_debug_array(session_get_cookie_params());

	echo 'cookie: ';
	_debug_array($_COOKIE);

	function _debug_array($var = '')
	{
		echo '<pre>';
		print_r($var);
		echo '</pre>';	
	}
?>

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

[2009-07-09 20:54:46] jani@php.net

Please provide a proper reproducing script we can test with anywhere. 
One that starts with <?php and ends with ?> :)

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

[2009-07-01 19:23:47] sigurdne at online dot no

Found out:
It fails if the SERVER_PORT (the "listen" setting in httpd.conf) is
anything but 80.

Applies to all versions from 5.2.6 to 5.3.0 (those are the versions I
have tested)

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

[2009-06-25 12:41:12] jani@php.net

Does it work with PHP 5.2.10 ?

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

The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
    http://bugs.php.net/48630

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



Thread (9 messages)

« previous php.bugs (#139621) next »