静态页面利用JS读取cookies记住用户信息
更新时间:2008年08月03日 16:42:04 作者:
很多网站、博客都采用生成技术把网页生成html静态页面了,以利于搜索引擎的索引排名,减轻服务器负担。
静态页面由于其稳定性快速性,的确给SE、用户及站长带来了方便。但有时,需要记住用户的信息,如用户留下评论后,下一次再来,就要记住该用户的信息,不必再次输入。
这对用户来说,可以提高他们的归属感,熟悉感。如何实现呢?
首先,我们需要在用户提交评论后,给客户端赋予几个相关的cookies值,这个很简单,直接在评论提交页面进行赋值就可以了,asp下的cookies简单赋值方式采用下面的这样的语句:
response.cookies("username")="name"
response.cookies("username").expires=Date+30
通过以上asp程序中的cookies赋值,我们成功在用户客户端写入我们网站的用户cookies信息。下面要做的就是如何在静态页html读取这个cookies,并且显示在用户面前。因为是生成了html,我们无法再利用asp程序读取这个cookies,需要通过js读取这个cookies,并赋予到想对应的input值里。
利用js读取cookies并赋值的代码如下:
<script type="text/javascript">
//js获取cookie
var acookie=document.cookie.split("; ");
function getck(sname)
{//获取单个cookies
for(var i=0;i<acookie.length;i++){
var arr=acookie[i].split("=");
if(sname==arr[0]){
if(arr.length>1)
return unescape(arr[1]);
else
return "";
}}
return "";
}
//给相应的form里的input赋值
document.form_name.input_name.value=getck("username");
</script>
这样,在静态页面中就可以成功的从客户端的系统里读取我们曾经赋值过的cookies信息,并展示出来了。是不是很简单,呵呵。如果你有其他看法,欢迎与我一起讨论。
这对用户来说,可以提高他们的归属感,熟悉感。如何实现呢?
首先,我们需要在用户提交评论后,给客户端赋予几个相关的cookies值,这个很简单,直接在评论提交页面进行赋值就可以了,asp下的cookies简单赋值方式采用下面的这样的语句:
复制代码 代码如下:
response.cookies("username")="name"
response.cookies("username").expires=Date+30
通过以上asp程序中的cookies赋值,我们成功在用户客户端写入我们网站的用户cookies信息。下面要做的就是如何在静态页html读取这个cookies,并且显示在用户面前。因为是生成了html,我们无法再利用asp程序读取这个cookies,需要通过js读取这个cookies,并赋予到想对应的input值里。
利用js读取cookies并赋值的代码如下:
复制代码 代码如下:
<script type="text/javascript">
//js获取cookie
var acookie=document.cookie.split("; ");
function getck(sname)
{//获取单个cookies
for(var i=0;i<acookie.length;i++){
var arr=acookie[i].split("=");
if(sname==arr[0]){
if(arr.length>1)
return unescape(arr[1]);
else
return "";
}}
return "";
}
//给相应的form里的input赋值
document.form_name.input_name.value=getck("username");
</script>
这样,在静态页面中就可以成功的从客户端的系统里读取我们曾经赋值过的cookies信息,并展示出来了。是不是很简单,呵呵。如果你有其他看法,欢迎与我一起讨论。
相关文章
随机提取Access/SqlServer数据库中的10条记录的SQL语句
随机提取Access/SqlServer数据库中的10条记录的SQL语句...2006-07-07ASP XMLDom在服务器端操作XML文件的主要方法和实现
我曾经测试过不用数据库,把网站的会员信息,商品数据信息,交易信息,网站定制信息全部存放在三个xml文件中,运行结果十分正常,感觉上比数据库快多了,不过没有作测试,不能确定。2010-02-02asp中的rs.open与conn.execute的区别说明
不管是rs.open sql,conn还是conn.execute(sql) [这里的SQL是delete,update,insert]执行以后都会返回一个关闭的记录集2011-01-01
最新评论