Object Expected Error - Cookie check script

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • StevePBurgess@gmail.com

    Object Expected Error - Cookie check script

    I am using a script (see below) to check if cookies are enabled on my
    website. The script seems to work but I get an Object Expected error.
    The error repor says it is at the line incidated by the *** below. Any
    ideas?

    <script type="text/javascript">

    Set_Cookie( 'test', 'none', '', '/', '', '' );

    if ( Get_Cookie( 'test' ) )
    {
    ***

    cookie_set = true;

    Delete_Cookie(' test', '/', '');
    }

    else
    {
    document.write( '<p><strong>In order to log in, your browser must
    accept cookies. At the moment, your browser is set not to accept
    cookies so you will not be able to log in.</strong><p>' );
    cookie_set = false;
    }



    function Set_Cookie( name, value, expires, path, domain, secure )
    {
    // set time, it's in milliseconds
    var today = new Date();
    today.setTime( today.getTime() );

    /*
    if the expires variable is set, make the correct
    expires time, the current script below will set
    it for x number of days, to make it for hours,
    delete * 24, for minutes, delete * 60 * 24
    */
    if ( expires )
    {
    expires = expires * 1000 * 60 * 60 * 24;
    }
    var expires_date = new Date( today.getTime() + (expires) );

    document.cookie = name + "=" +escape( value ) +
    ( ( expires ) ? ";expires=" + expires_date.to GMTString() : "" ) +
    ( ( path ) ? ";path=" + path : "" ) +
    ( ( domain ) ? ";domain=" + domain : "" ) +
    ( ( secure ) ? ";secure" : "" );
    }

    function Get_Cookie( name ) {

    var start = document.cookie .indexOf( name + "=" );
    var len = start + name.length + 1;
    if ( ( !start ) &&
    ( name != document.cookie .substring( 0, name.length ) ) )
    {
    return null;
    }
    if ( start == -1 ) return null;
    var end = document.cookie .indexOf( ";", len );
    if ( end == -1 ) end = document.cookie .length;
    return unescape( document.cookie .substring( len, end ) );
    }

    </script>

  • Dr John Stockton

    #2
    Re: Object Expected Error - Cookie check script

    JRS: In article <1137078443.919 032.197130@g14g 2000cwa.googleg roups.com>
    , dated Thu, 12 Jan 2006 07:07:23 local, seen in
    news:comp.lang. javascript, StevePBurgess@g mail.com posted :
    [color=blue]
    >// set time, it's in milliseconds
    >var today = new Date();
    >today.setTim e( today.getTime() );[/color]

    One wonders what that line is intended for.
    [color=blue]
    >/*
    >if the expires variable is set, make the correct
    >expires time, the current script below will set
    >it for x number of days, to make it for hours,
    >delete * 24, for minutes, delete * 60 * 24
    >*/
    >if ( expires )
    >{
    >expires = expires * 1000 * 60 * 60 * 24;[/color]

    If you want to change by a certain number of days, use getDate and
    setDate. If you want to change by a certain number of hours, use
    getHours and setHours. That avoids apparent or real error at Summer
    Time changes.
    [color=blue]
    >var expires_date = new Date( today.getTime() + (expires) );[/color]

    That will give an apparent error across changes in Summer Time state.

    You probably don't need a second Date Object -
    D.setTime(D.get Time()+864e5)
    or D.setTime(+D +864e5)
    though those retain the apparent error.

    --
    © John Stockton, Surrey, UK. ?@merlyn.demon. co.uk Turnpike v4.00 MIME. ©
    Web <URL:http://www.merlyn.demo n.co.uk/> - w. FAQish topics, links, acronyms
    PAS EXE etc : <URL:http://www.merlyn.demo n.co.uk/programs/> - see 00index.htm
    Dates - miscdate.htm moredate.htm js-dates.htm pas-time.htm critdate.htm etc.

    Comment

    Working...