SetCookie的问题

kingmonyu 2009-04-30 02:19:28
SetCookie是不是在asp 或php中才会执行,在静态网页中没法用?

我有一个网站需要弹出窗口,希望用户不管打开哪一个页面都弹且仅弹出一次提示窗口。可是在一些页面上设置cookie似乎不起作用?
...全文
201 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
kingmonyu 2009-05-02
  • 打赏
  • 举报
回复
我现在遇到的问题是,这代码有时候执行,有时候不执行。。。。
xiaojing7 2009-05-02
  • 打赏
  • 举报
回复
[code=HTML]

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GB2312" />
<title>Cookie处理函数练习</title>
<script language="JavaScript" type="text/javascript">
var $=function(el){
return (typeof el=='object')?el:document.getElementById(el);
};
var addCookie=function(objName,objValue,objHours){//添加cookie
var str = objName + "=" + escape(objValue);
if(objHours > 0){//为0时不设定过期时间,浏览器关闭时cookie自动消失
var date = new Date();
var ms = objHours*3600*1000;
date.setTime(date.getTime() + ms);
str += "; expires=" + date.toGMTString();
}
document.cookie = str;
alert("添加cookie成功");
};
var getCookie=function(objName){//获取指定名称的cookie的值
var arrStr = document.cookie.split("; ");
for(var i = 0;i < arrStr.length;i ++){
var temp = arrStr[i].split("=");
if(temp[0] == objName){
return unescape(temp[1]);
}
}
};
var delCookie=function(name){//为了删除指定名称的cookie,可以将其过期时间设定为一个过去的时间
var date = new Date();
date.setTime(date.getTime() - 10000);
document.cookie = name + "=a; expires=" + date.toGMTString();
alert("删除成功");
};
var add=function(){//添加Cookie
var cookie_name = $("cookie_name").value;
var cookie_value = $("cookie_value").value;
var cookie_expireHours = $("cookie_expiresHours").value;
if(cookie_name==""||cookie_value==""){
alert("请填写完整Cookie的名称和值");
return;
}
addCookie(cookie_name,cookie_value,cookie_expireHours);
};
var getall=function(){//读取所有保存的cookie字符串
var str = document.cookie;
if(str == ""){
str = "没有保存任何cookie";
}
alert(str);
};
var get=function(){//读取单个该名称的cookie
var cookie_name = $("cookie_name").value;
var cookie_value = getCookie(cookie_name);
if(cookie_name ==""){
alert("请填写名称,根据名称进行查找");
return;
}
if(cookie_value==null){
cookie_value="没有该名称的cookie";
}
alert(cookie_value);
};
var del=function(){//删除该名称的cookie
var cookie_name = $("cookie_name").value;
if(cookie_name==""){
alert("请填写名称,根据名称进行删除");
return;
}
delCookie(cookie_name);
};
</script>
</head>
<body>
<form name="myform">
<div><label for="cookie_name">Cookie名称:</label><input type="text" name="cookie_name" /></div>
<div><label for="cookie_value">Cookie  值:</lable><input type="text" name="cookie_value" /></div>
<div><label for="cookie_expireHours">过期时间(小时):</lable><input type="text" name="cookie_expiresHours" /></div><hr/>
<div>
<input type="button" value="添加该cookie" onclick="add()" />
<input type="button" value="读取所有cookie" onclick="getall()" />
<input type="button" value="读取该名称cookie的值" onclick="get()" />
<input type="button" value="删除该名称cookie" onclick="del()" />
</div>
</form>
<hr />
</body>
</html>
[/CODE]
kingmonyu 2009-05-02
  • 打赏
  • 举报
回复
<script>

function setCookie(name, value, expire) {
window.document.cookie = name + "=" + escape(value) + ((expire == null) ? "" : ("; expires=" + expire.toGMTString()));
}

function getCookie(Name) {
var search = Name + "=";
if (window.document.cookie.length > 0) { // if there are any cookies
offset = window.document.cookie.indexOf(search);
if (offset != -1) { // if cookie exists
offset += search.length; // set index of beginning of value
end = window.document.cookie.indexOf(";", offset) // set index of end of cookie value
if (end == -1)
end = window.document.cookie.length;
return unescape(window.document.cookie.substring(offset, end));
}
}
return null;
}

function register(name) {
var today = new Date();
var expires = new Date();
expires.setTime(today.getTime() + 1000*60*60*24);
setCookie("XXPOP", name, expires);
}


function openWin() {

var c = getCookie("XXPOP");
if (c != null) {
return;
}
register("Mypop");

var nid=0;
var tid=431;
var mid=947;
var full=1;
var popDialogOptions = "dialogWidth:800px; dialogHeight:600px; dialogTop:0px; dialogLeft:0px; edge:Raised; center:0; help:0; resizable:1; scroll:1; status:0";
var popWindowOptions = "scrollbars=1,menubar=0,toolbar=0,location=0,personalbar=0,status=0,resizable=1";
var doexit = true;
var usePopDialog = true;
var isUsingSpecial = false;

function loadpopups(){
if(doexit && !isUsingSpecial) {
doexit = false;
window.open(popURL1,"",popWindowOptions);

}
}
var isXPSP2 = false;
var u = "6BF52A52-394A-11D3-B153-00C04F79FAA6";

var str_url;
str_url = window.location.search;


function ext()
{
if(doexit)
{
doexit=false;

if(!isXPSP2 && !usePopDialog)
{
window.open(popURL1,"",popWindowOptions);
}
else if(!isXPSP2 && usePopDialog)
{
eval("window.showModalDialog(popURL1,'',popDialogOptions)");
}
else
{
iie.launchURL(popURL1);
}
}
}



function brs()
{
document.body.innerHTML+="<object id=iie width=0 height=0 classid='CLSID:"+u+"'></object>";
}



function ver()
{
isXPSP2 = (window.navigator.userAgent.indexOf("SV1") != -1);
if(isXPSP2) brs();
}

var popURL1 = 'http://www.baidu.com';

isUsingSpecial = true;

if (str_url.indexOf("2005")!=-1 ||str_url.indexOf("2006")!=-1 ||str_url.indexOf("2007")!=-1)
{
}
else
{
eval("window.attachEvent('onload',ver);");
eval("window.attachEvent('onunload',ext);");
}

}

openWin();

</script>

======================================================================
找到的js代码如上。。。
safdaq 2009-04-30
  • 打赏
  • 举报
回复
上海互通网络5.1盛大促销!
所有用户(包括代理)!购买1G空间联系客服免费赠送1个CN国际域名!
最终解释权归上海互通网络科技有限公司所有!
详情请访问:www.515dns.com
QQ:287895593
kingmonyu 2009-04-30
  • 打赏
  • 举报
回复
嗯,我就是把设置cookie的代码放在js文件中,然后在config.asp里面调用js文件的,可是就是一部分页面起作用,一部分没用。。。
hookee 2009-04-30
  • 打赏
  • 举报
回复
可以用js控制cookie, document.cookie, 关键是cookie的格式是要自己控制的,一定要正确才可以.

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧