仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1279|回复: 18
打印 上一主题 下一主题

[学习教程] PHP网站制作之对Session和Cookie的辨别与了解

[复制链接]
小女巫 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-4 00:27:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
exit来实现结束后面的PHP语句的执行,缩小调试范围,特别是数据库交互的程序,先输出个SQL语句看看,对了,再分析怎么会插入/删除不成功呢?这样对查错很有帮助。cookie|session   对Session和Cookie的辨别与了解
先说session

对SESSION的争辩好象一向没有中断过,不外幺麽能了解SESSION的人应当占90以上。但仍是讲讲,别嫌老~

有一些人同意用SESSION,有一些人不同意。但这个成绩究竟要怎样说。无妨听听我的意见,假如有毛病请不要朝丢器材,金条和硬币除外。

有些人应当晓得我是做江湖法式的,而江湖法式做看中的就是效力,但这里不谈设计,而从一些对照实践的角度看SESSION。

起首要先说SESSION是干甚么的,SESSION是可以存储针对与某一个用户的IE和经由过程其以后窗口翻开的任何窗口具有针对性的用户信息存储机制。为何要如许说。看下边先研讨SESSION是若何启动的,当翻开IE今后阅读网站后会收回一个指令恳求SESSIONID和对各个类型数据的下载允许,如图片,声响和Flash
数据实践传输内容:IE到办事器
GET / HTTP/1.1
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, */*
Accept-Language0: zh-cn
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)
Host: www.jh521.com
Connection: Keep-Alive
办事器会前往一个没有被利用的SESSIONID让IE利用,事先IE就对前往SESSIONID做存储

并同时前往相干页面的下载数据,以下:办事器到IE
HTTP/1.1 200 OK
Server: Microsoft-IIS/5.0
Date: Sun, 30 Nov 2003 16:41:51 GMT
Content-Length: 21174..Content-Type: text/html
Set-Cookie: ASPSESSIONIDCACBBBRT=IBOMFONAOJFEEBHBPIENJFFC; path=/
Cache-control: private
然后就是页面HTML代码此时这个IE法式(不是客户机)的SESSIONID就为IBOMFONAOJFEEBHBPIENJFFC而当IE在会见任何这个站点的ASP法式的时分,就会把IBOMFONAOJFEEBHBPIENJFFC发送给办事器,办事器就会晓得IBOMFONAOJFEEBHBPIENJFFC是暗示你而在办事器上设置SESSION("name")="name"完整可以当作是SESSION("IBOMFONAOJFEEBHBPIENJFFC")("name")="name"

SESSION(SESSIONID)("name")="name"
如许,SESSION就辨别开用户了。
而当办事器反应这个ID的时分会看这个ID有无被利用。假如有在换一个
归正不会让你反复,假如想摹拟或人的SESSION的ID来停止棍骗是可以的。不外要获得到对方IE传输旌旗灯号,而且在包管事先这个SESSIONID没有被作废的情形下才能够实行。

不外如果我有那工夫直接经由过程POST旌旗灯号找他NAME和PASS了。我可不费这个劲,想必一些人分明了了SESSIONID究竟是若何任务的,那末就在看看COOKIE,有人说SESSIONID就是COOKIE,依照手艺下去讲他们不属于同类,然而属于一种任务形式,用户和办事器传输公有数据.当我设置COOKIE的时分,办事器会反应给IE一个指令。IE经由过程这个收集指令生成COOKIE并寄存,在特定的时分会获得这个这个信息如在会见这个站点而且COOKID无效的时分。

那末为何要用COOKIE而不必SESSION呢
看下区分

无效工夫和存储体例 传输内容
COOKIE 可设置并在当地保存 密码信息

SESSION 在IE不封闭并办事器不超时 只要SESSIONID

当假如想让用户下次登入网站不需求输出用户名或暗码的时分就只能用COOKIE,

由于他可以保存相当长的工夫(在COOKIE纪录被删除或生效日期之前)

而SESSION就不成以,他不会保存太长工夫,并且IE在封闭后就主动排除了SESSIONID纪录

鄙人次登入的时分会恳求新的SESSIONID

而办事器想经由过程用户团体变量校验用户的形态的时分,就不克不及用COOKIE

假如用设置用户权限是USER。而IE会见的时分就把USER的密码传输到办事器。

那末假如我经由过程必定手腕,好比直接修正COOKIE纪录,把USER修正成ADMIN呢~~

就费事了。

但存储用户名和暗码或网站的配色计划如许的信息,用COOKIE是最好的


好,有点累了,在说说这个器材
Request.ServerVariables("HTTP_REFERER")

我想有一些人经由过程这个Request.ServerVariables("HTTP_REFERER")
来停止一些关头性限制,出格是凑合近程提交和不法侵入。
那末我就要提示下办事器获得的HTTP_REFERER信息完整是IE传输给办事器的,可以摹拟
并且难度不大,用不到半个小时就能够用VB做出一个针对HTTP_REFERER入侵法式。
(惋惜我本来那他没干正派工作,做WEB游戏挂机法式来的)


  咱们就开始学习动态语言的概念吧,刚一接触动态语言,可能很多人都会蒙了,怎么这乱七八糟的东西,在网页里显示的时候却是另外一码事?其实这并不算乱七八糟,你写的HTML代码不也一样是一堆堆的字符吗?毕竟,代码并不是作为直接输出的,而是经过处理的,说白了,HTML是经过HTML解析器,而PHP当然也就通过PHP解析器了,跟学习HTML一样的道理,想让任何的解析器完成操作,就必须使用它们专用的语法结构,所以PHP长相奇怪也就不足为奇了。
再现理想 该用户已被删除
沙发
发表于 2015-2-6 23:51:26 | 只看该作者
如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域,
板凳
发表于 2015-3-2 23:57:21 | 只看该作者
其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎
小妖女 该用户已被删除
地板
发表于 2015-3-11 07:42:56 | 只看该作者
刚开始安装php的时候,我图了个省事,把php的扩展全都打开啦(就是把php.ini 那一片 extension 前面的冒号全去掉啦),这样自然有好处,以后不用再需要什么功能再来打开。
山那边是海 该用户已被删除
5#
发表于 2015-3-17 23:09:25 | 只看该作者
本文当是我的笔记啦,遇到的问题随时填充
不帅 该用户已被删除
6#
发表于 2015-3-17 23:09:25 | 只看该作者
找到的的资料很多都是在论坛里的,需要注册,所以我一般没到一个论坛都注册一个id,所有的id都注册成一样的,这样下次再进来的时候就不用重复注册啦。当然有些论坛的某些资料是需要的付费的。
透明 该用户已被删除
7#
发表于 2015-3-22 17:15:46 | 只看该作者
php是动态网站开发的优秀语言,在学习的时候万万不能冒进。在系统的学习前,我认为不应该只是追求实现某种效果,因为即使你复制他人的代码调试成功,实现了你所期望的效果,你也不了解其中的原理。
精灵巫婆 该用户已被删除
8#
发表于 2015-3-30 01:32:04 | 只看该作者
最后介绍一个代码出错,但是老找不到错误方法,就是 go to wc (囧),出去换换气没准回来就找到错误啦。
柔情似水 该用户已被删除
9#
发表于 2015-4-11 21:31:09 | 只看该作者
遇到出错的时候,我经常把错误信息直接复制到 google的搜索栏,一般情况都是能搜到结果的,不过有时候会搜出来一大片英文的出来,这时候就得过滤一下,吧中文的弄出来,挨着式方法。
admin 该用户已被删除
10#
发表于 2015-4-17 21:20:27 | 只看该作者
在学习的过程中不能怕麻烦,不能有懒惰的思想。学习php首先应该搭建一个lamp环境或者是wamp环境。这是学习php开发的根本。虽然网络上有很多集成的环境,安装很方便,使用起来也很稳定、
深爱那片海 该用户已被删除
11#
发表于 2015-4-19 06:03:34 | 只看该作者
这些都是最基本最常用功能,我们这些菜鸟在系统学习后,可以先对这些功能深入研究。
若相依 该用户已被删除
12#
发表于 2015-4-20 08:13:53 | 只看该作者
为了以后维护的方便最好是代码上都加上注释,“予人方便,自己方便”。此外开发文档什么的最好都弄齐全。我觉得这是程序员必备的素质。虽然会消耗点很多的时间。但是确实是非常有必要的。
若天明 该用户已被删除
13#
发表于 2015-4-24 00:43:27 | 只看该作者
基础有没有对学习php没有太大区别,关键是兴趣。
活着的死人 该用户已被删除
14#
发表于 2015-4-24 21:20:50 | 只看该作者
刚开始安装php的时候,我图了个省事,把php的扩展全都打开啦(就是把php.ini 那一片 extension 前面的冒号全去掉啦),这样自然有好处,以后不用再需要什么功能再来打开。
简单生活 该用户已被删除
15#
发表于 2015-4-25 15:34:43 | 只看该作者
写js我最烦的就是 ie 和 firefox下同样的代码 结果显示的结果千差万别,还是就是最好不要用遨游去调试,因为有时候遨游是禁用js的,有可能代码是争取结果被遨游折腾的认为是代码写错。
愤怒的大鸟 该用户已被删除
16#
发表于 2015-4-26 15:09:28 | 只看该作者
学好程序语言,多些才是王道,写两个小时代码的作用绝对超过看一天书,这个我是深有体会(顺便还能练打字速度)。
海妖 该用户已被删除
17#
发表于 2015-4-29 15:20:48 | 只看该作者
最后祝愿,php会给你带来快乐的同时 你也会给他带来快乐。
爱飞 该用户已被删除
18#
发表于 2015-4-29 16:26:32 | 只看该作者
在学习的过程中不能怕麻烦,不能有懒惰的思想。学习php首先应该搭建一个lamp环境或者是wamp环境。这是学习php开发的根本。虽然网络上有很多集成的环境,安装很方便,使用起来也很稳定、
灵魂腐蚀 该用户已被删除
19#
发表于 2015-6-6 01:36:06 | 只看该作者
先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-31 09:56

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表