如何为本地开发的html设置session

如何为本地开发的html设置session,第1张

设置Session方法:直接赋值即可

<?PHP

    Session_Start()

    $_SESSION["name"]="这是我的session!"

?>

2.删除Session方法:

<?php

    session_start()

    session_unset()

    session_destroy()

?>

3. 设置Session跟开发环境没关系,本地、远程服务器,不影响

那个什么java2000纯粹是做广告的。

下面接着回答问题。

----------华丽的分割线-----------------

服务器跟踪用户状态有好几种方法,其中一种就是,服务器保持session,给客户端一个sessionid,客户端每次发送请求时,会把这个sessionid提交给服务器(这是浏览器干的事),服务器根据这个sessionid找到相应的session,如果你用的jsp,jsp引擎(比如tomcat)会吧这个session作为一个实例变量放到jsp页面里,你可以直接使用。如果是html文件,jsp引擎会直接发送给客户端html文件的内容。

客户端的js访问cookie的方法只能访问存储在客户端的cookie(使用js或session的cookie存储的)。

讲解完毕,下面开始分析楼主的问题

-----------极度华丽的分割线----------

首先,你的首页上有个form,用来提交用户名和密码。如果你把首页换成html页面,完全可以,不过要在其他地方接收用户名和密码(比如logon.jsp)。form的action设为logon.jsp。很简单。

完毕

怎样在html页面中取得session中的值?

方法如下:

1.首先呢session的key-value都是存在server的,浏览器HTML页面是没有办法直接取得session中的值,只有在html里能通过js拿到jesessionid之类的东西。

1.1、数据量如果小,可以考虑放到cookie里,传到客户端,html里用js就可以拿到。

1.2、如果数据量大,可以考虑单独做一个jsp或servlet,根据传来的session的key,返回序列化的session的值,比如json之类的。html里用js通过ajax获取。这种方式复杂了点,多一次远程访问,但是灵活方便。

如:<input type="text" value='<%#Session["username"]%>'>

2.或者得通过后台才能获取,session是存在服务器端的,如果你用cookie的话,可以通过js获取。

比如:写个webservice ajax获取你要的session值 或者 利用利用模板语言输出。

3.用response.sendRedirect("a.html?param=hello")用下面的JS方法

如:var v=getUrlParameter('param')

function getUrlParameter( name ){

name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]")

var regexS = "[\\?&]"+name+"=([^]*)"

var regex = new RegExp( regexS )

var results = regex.exec(window.parent.location.href )

if( results == null )return "" else {

return results[1]

}

}

以上几种方法在html页面中取得session中的值.


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11595534.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存