Hello and welcome to our community! Is this your first visit?
Register
Enjoy an ad free experience by logging in. Not a member yet? Register.
Results 1 to 2 of 2
  1. #1
    New to the CF scene
    Join Date
    Feb 2007
    Posts
    3
    Thanks
    0
    Thanked 0 Times in 0 Posts

    ?Cookie Coding problem?

    Hello,

    I was wondering if anyone could help me figure out why my coding is not setting the cookie
    as it should. I've checked write permission issues, and that doesnt seem to be it. Its not even
    trying to place the cookie and failing, just not writing it at all. As this is for a shopping cart
    program, it is slightly essential to have the cookie set for anyone to add items to their cart.

    Below is the code portions that deal with session creation and cookie set/get.

    Thanks
    TimmyC


    //CCGetCookie @0-705AF8CB
    function CCGetCookie($parameter_name)
    {
    global $HTTP_COOKIE_VARS;
    return isset($HTTP_COOKIE_VARS[$parameter_name]) ? $HTTP_COOKIE_VARS[$parameter_name] : "";
    }
    //End CCGetCookie

    //CCSetCookie @0-1E0B074A
    function CCSetCookie($parameter_name, $param_value)
    {
    setcookie ($parameter_name, $param_value, time() + 3600 * 24 * 366);
    }
    //End CCSetCookie




    //CCGetSession @0-9BBC6D71
    function CCGetSession($parameter_name)
    {
    global $HTTP_SESSION_VARS;
    return isset($HTTP_SESSION_VARS[$parameter_name]) ? $HTTP_SESSION_VARS[$parameter_name] : "";
    }
    //End CCGetSession

    //CCSetSession @0-0F088E96
    function CCSetSession($param_name, $param_value)
    {
    global $HTTP_SESSION_VARS;
    global ${$param_name};
    if(session_is_registered($param_name))
    session_unregister($param_name);
    ${$param_name} = $param_value;
    session_register($param_name);
    $HTTP_SESSION_VARS[$param_name] = $param_value;
    }
    //End CCSetSession

    Thanks for your help with this,

    TimmyC:

  • #2
    Senior Coder CFMaBiSmAd's Avatar
    Join Date
    Oct 2006
    Location
    Denver, Colorado USA
    Posts
    3,108
    Thanks
    2
    Thanked 326 Times in 318 Posts
    The HTTP_xxxxx_VARS are depreciated and are disabled by default in the later PHP versions using the register_long_arrays setting.

    Also, if your code outputs content prior to your session_start() or any code that sets a cookie, your session/cookie will not be set.

    For both of the above problems, either check your server log for errors or put the following in after your first opening <?php tag -
    PHP Code:
    ini_set ("display_errors""1");
    error_reporting(E_ALL); 
    Edit: Also, using the session_register and related functions is depreciated and don't work when register_globals are off.
    If you are learning PHP, developing PHP code, or debugging PHP code, do yourself a favor and check your web server log for errors and/or turn on full PHP error reporting in php.ini or in a .htaccess file to get PHP to help you.


  •  

    Posting Permissions

    • You may not post new threads
    • You may not post replies
    • You may not post attachments
    • You may not edit your posts
    •