By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
431,852 Members | 2,152 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 431,852 IT Pros & Developers. It's quick & easy.

Object Expected Error - Cookie check script

P: n/a
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.toGMTString() : "" ) +
( ( 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>

Jan 12 '06 #1
Share this Question
Share on Google+
1 Reply


P: n/a
JRS: In article <11**********************@g14g2000cwa.googlegroups .com>
, dated Thu, 12 Jan 2006 07:07:23 local, seen in
news:comp.lang.javascript, St***********@gmail.com posted :
// set time, it's in milliseconds
var today = new Date();
today.setTime( today.getTime() );
One wonders what that line is intended for.
/*
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;
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.
var expires_date = new Date( today.getTime() + (expires) );


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

You probably don't need a second Date Object -
D.setTime(D.getTime()+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.demon.co.uk/> - w. FAQish topics, links, acronyms
PAS EXE etc : <URL:http://www.merlyn.demon.co.uk/programs/> - see 00index.htm
Dates - miscdate.htm moredate.htm js-dates.htm pas-time.htm critdate.htm etc.
Jan 12 '06 #2

This discussion thread is closed

Replies have been disabled for this discussion.