站长百科 | 数字化技能提升教程 数字化时代生存宝典
首页
数字化百科
电子书
建站程序
开发
服务器
办公软件
开发教程
服务器教程
软件使用教程
运营教程
热门电子书
WordPress教程
宝塔面板教程
CSS教程
Shopify教程
导航
程序频道
推广频道
网赚频道
人物频道
网站程序
网页制作
云计算
服务器
CMS
论坛
网店
虚拟主机
cPanel
网址导航
WIKI使用导航
WIKI首页
最新资讯
网站程序
站长人物
页面分类
使用帮助
编辑测试
创建条目
网站地图
站长百科导航
站长百科
主机侦探
IDCtalk云说
跨境电商导航
WordPress啦
站长专题
网站推广
网站程序
网站赚钱
虚拟主机
cPanel
网址导航专题
云计算
微博营销
虚拟主机管理系统
开放平台
WIKI程序与应用
美国十大主机
编辑“
PHP-COOKIE和会话
”
人物百科
|
营销百科
|
网赚百科
|
站长工具
|
网站程序
|
域名主机
|
互联网公司
|
分类索引
跳转至:
导航
、
搜索
警告:
您没有登录。如果您做出任意编辑,您的IP地址将会公开可见。如果您
登录
或
创建
一个账户,您的编辑将归属于您的用户名,且将享受其他好处。
反垃圾检查。
不要
加入这个!
<span style="text-align:center; border:1px solid #000; float:right; padding:6px;"><strong>导航:</strong> [[PHP#PHP教程|上一页]] | {{template:开发语言导航}}</span> <div style="clear:both;"></div> ==使用CooKie== ===设置CooKie=== [[cookie]]是[[服务器]]在用户的机器上存储信息的一种方式。利用这种方式,站点可以在访问期间记住或跟踪用户。一些人对cookie心存疑虑,因为它们认为cookie允许服务器知道太多的事情。不过,cookie只能用于存储提供給服务器的信息,因此,与大多数其它在线技术相比,cookie的安全性并不差。<br> 关于cookie要理解的最重要的事情是,必须在任何其它信息之前把它们从服务器发送给客户,万一服务器试图在WEB浏览器已经接收到HTML之后发送cookie,就会导致一条错误信息,并且不会发送cookie。<br> 通过setcookie函数发送cookie:<br> setcookie(name,value);<br> 例:sertcookie('first_name','Larry');//把cookie发送到[[浏览器]]时,带有名字first_name和值Larry.<br> 与在[[PHP]]中使用任何变量时一样,在给cookie命名时,不要使用空白或标点符合,但是,要特别注意使用正确的大小写字母。 ===访问CooKie=== 设置好cookie后,要从cookie中检索一个值,只需要把合适的cookie名称用作键来引用$_COOKIE超全局数组,例如,从如下代码建立的cookie中检索一个值:<br> setcookie('username','Trout');<br> 将使用$_COOKIE['username']获得这个值。 ===设置CooKie参数=== 尽管只把名称和值传递给setcookie()函数就足够了,还应该知道其它可用的参数,该函数还可以带有最多另外4个参数,其中每一个都会改变cookie的定义。<br> setcookie('name','value',expiration,'path','domain',secure);<br> 到期时间(expireation)参数用于设置cookie存在的精确限定的时间长度,从新纪元(1970年1月1日)起所经过的秒数表示。如果没有设置它,cookie将持续起作用,直到用户关闭了浏览器,通常情况下,通过在当前时刻上增加特定的分钟数或小时数来确定到期时间,可以使用time()函数获取当前时间,下面一行代码将把cookie的到期时间设置为当前时间后1小时:setcookie('name','value',time()+3600.'/admin/');<br> 最后,安全值规定只应该通过安全的HTTPS连接来发送cookie,1表示必须使用安全的链接,0表示标准连接也不错.<br> setcookie('name','value',time()+3600,'/admin/',' ',1);<br> 与带有参数的所有函数一样,必须俺顺序传递setcookie()值,要跳过任何参数,可以使用NULL或空字符串,到期时间和安全这两个值都是整数,因此,不能使用引号括住它们。 ===删除CooKie=== 如何删除一个cookie,虽然,关闭用户的浏览器时或者在到达日期/时间时cookie会自动到期,但是,有时你希望手动删除cookie,例如,在具体注册用户和登录能力的WEB站点内,可能希望在用户注销时删除任何cookie。<BR> 尽管setcookie()函数可以带6个参数,实际上只有一个参数是必须的,如果发送一个包含名称但没有值的cookie,其效果就相当于删除现在的同名cookie,例如,要创建first_name的cookie,使用如下代码:<br> setcookie('first_name','Larry');<br> 要删除first_name的cookie,可以编写如下代码:<br> setcookie('first_name');<br> 一种附加的预防措施是,你还可以把到期日期设置成过去的某个日期:<br> setcookie('first_name','',time()-300); ==使用会话== ===设置会话变量=== 使数据可供web站点上的多个页面使用的另一种方法是使用会话,会话假定数据存储在服务器上,而不是在web浏览器上,会话标识富用于定位特定用户的记录(会话数据)。这个会话标识符通常通过cookie存储在用户的web浏览器中,但是,敏感的数据本身--如用户的ID,姓名等,总是保存在服务器上。<br> 关于会话的最重要的规则是,将会使用它们的每个页面首先都必须调用session_start()函数,这个函数告诉PHP开启一个新的会话,或者访问一个现有的会话。<BR> 第一次使用session_start()函数时,它会试图发送一个cookie,名称为PHPSESSID(会话名称),由于试图发送一个cookie,所以在把任何数据发送到Web浏览器之前,必须先调用seesion_start(),这与使用setcookie()和header()这两个函数时的情况一样。一旦启用了会话,就可以使用以下语句把值注册到会话中:<br> $_SESSION['key']='value';<br> $_SESSION['name']='Jessica';<br> $_SESSION['id']=48; ===访问会话变量=== 一旦启动了会话,并向期注册了变量,就可以创建将访问这些变量的其它脚本,为了执行该操作,每个脚本首先必须再次使用session_start()来启动会话。<br> 这个函数将允许当前脚本访问以前启动的会话(如果它可以读取cookie中存储的PHPSESSID值),或者创建一个新的会话(如果不能读取这个值)这种情况下,它将不能访问存储的值,因为将会创建新的会话,引用会话变量,可以使用$_SESSION['var'],就像你引用任何其它数组一样。 ===删除会话变量=== ===更改会话行为=== ==会话和CooKie== ===更改会话CooKie=== ===使用不带CooKie的会话=== [[category:PHP教程]]
摘要:
请注意,您对站长百科的所有贡献都可能被其他贡献者编辑,修改或删除。如果您不希望您的文字被任意修改和再散布,请不要提交。
您同时也要向我们保证您所提交的内容是您自己所作,或得自一个不受版权保护或相似自由的来源(参阅
Wordpress-mediawiki:版权
的细节)。
未经许可,请勿提交受版权保护的作品!
取消
编辑帮助
(在新窗口中打开)
本页使用的模板:
模板:开发语言导航
(
编辑
)