一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

用cookies來(lái)跟蹤識(shí)別用戶(hù)

讓我們來(lái)看看保存在瀏覽器中的內(nèi)容。如果你用的是IE5,在windows目錄下有一個(gè)cookies的目錄,里面有很多文本文件,文件名都是類(lèi)似于wudong@15seconds[1].txt這樣的,這就是瀏覽器用來(lái)保存值的cookies了。在以前的IE版本中,cookies的內(nèi)容是可以察看的,但現(xiàn)在內(nèi)容已經(jīng)被編碼了。在瀏覽器得到一個(gè)Web頁(yè)面之前,它會(huì)先看這個(gè)頁(yè)面的域名,是否在cookie中存在,如果有相比配的,瀏覽器會(huì)先把匹配的cookie傳送到服務(wù)器,然后才接受處理服務(wù)器傳送過(guò)來(lái)的頁(yè)面。
  
  先舉個(gè)cookies應(yīng)用的例子:當(dāng)我連接到Amazon.com時(shí),瀏覽器在接受第一個(gè)頁(yè)面之前會(huì)把它以前設(shè)置的cookies的內(nèi)容傳送給Amazon。然后Amazon.com對(duì)傳送過(guò)來(lái)的內(nèi)容加以檢查,看看在數(shù)據(jù)庫(kù)中有沒(méi)有相關(guān)資料,在匹配之后,在為我建立一個(gè)定制的頁(yè)面?zhèn)魉偷竭^(guò)來(lái)。
  為cookies賦值
  
  必須在服務(wù)器傳送任何內(nèi)容給客戶(hù)瀏覽器之前為Cookies賦值。要做到這一點(diǎn),cookies的設(shè)置就必須放在<HEAD>標(biāo)簽內(nèi):
  <?php
  setcookie("CookieID",$USERID);
  ?>
  <HTML>
  <BODY>
  </BODY>
  </HTML>
  setcookie函數(shù)一共有六個(gè)參數(shù),用逗號(hào)來(lái)分隔:
  
  cookie的名稱(chēng),是一個(gè)字符串,例如:"CookieID"。其間不允許有冒號(hào),逗號(hào)和空格。這個(gè)參數(shù)是必須的,而其它的所有參數(shù)都是可選的。如果只有這一個(gè)參數(shù)被給出,那么這個(gè)cookie將被刪除。
  
  cookie的值,通常是一個(gè)字符串變量,例如:$USERID。也可以為它賦一個(gè)??來(lái)略過(guò)值的設(shè)置。
  
  cookie失效的時(shí)間。如果被省略(或者被賦值為零),cookie將在這個(gè)對(duì)話(huà)期(session)結(jié)束后失效。這個(gè)參數(shù)可以是一個(gè)絕對(duì)的時(shí)間,用DD-Mon-YYHH:MM:SS來(lái)表示,比如:"24-Nov-9908:26:00"。而更常用的是設(shè)置一個(gè)相對(duì)時(shí)間。這是通過(guò)time()函數(shù)或者mktime函數(shù)來(lái)實(shí)現(xiàn)的。比如time()+3600將使得cookie在一個(gè)小時(shí)后失效。
  
  一個(gè)路徑,用來(lái)匹配cookie的。當(dāng)在一個(gè)服務(wù)器上有多個(gè)同名的cookie的設(shè)置,為避免混淆,就要用到這個(gè)參數(shù)了。使用"/"路徑的和省略這個(gè)參數(shù)的效果是一樣的。要注意的是NETscape的cookie定義是把域名放在路徑的前面的,而php則與之相反。
  
  服務(wù)器的域名,也是用來(lái)匹配cookie的。要注意的是:在服務(wù)器的域名前必須放上一個(gè)點(diǎn)(.)。例如:".friendshipcenter.com"。因?yàn)槌怯袃蓚€(gè)以上的點(diǎn)存在,否者這個(gè)參數(shù)是不能被接受的。
  
  cookie的安全級(jí),是一個(gè)整數(shù)。1表示這個(gè)cookie只能通過(guò)“安全”的網(wǎng)絡(luò)來(lái)傳送。0或者省略則表示任何類(lèi)型的網(wǎng)絡(luò)都可以。
  
  Cookies和變量
  
  當(dāng)php腳本從客戶(hù)瀏覽器提取了一個(gè)cookie后,它將自動(dòng)的把它轉(zhuǎn)換成一個(gè)變量。例如:一個(gè)名為CookieID的cookie將變成變量$CookieID.
  
  Cookies的內(nèi)容被報(bào)存在HTTP_COOKIE_VARS數(shù)組中,你還可以通過(guò)這個(gè)數(shù)組和cookie的名稱(chēng)來(lái)存取指定的cookie值:
  
  print$HTTP_COOKIE_VARS[CookieID];
  
  記住每一個(gè)用戶(hù)
  
  回過(guò)頭在來(lái)看看上面的submitform.php3文件,它的作用是把客戶(hù)的姓名添加到數(shù)據(jù)庫(kù)中,現(xiàn)在我想為它添加一些東西。我想為每個(gè)用戶(hù)都分配一個(gè)唯一的用戶(hù)標(biāo)志,然后把這個(gè)標(biāo)志放在Cookies中,這樣每當(dāng)用戶(hù)訪(fǎng)問(wèn)我的網(wǎng)站的時(shí)候,通過(guò)cookie和其中的用戶(hù)標(biāo)志,我就能夠知道他是誰(shuí)了。
  
  MySQL能夠被設(shè)置成為每一個(gè)新的紀(jì)錄自動(dòng)的分配一個(gè)數(shù)字,這個(gè)數(shù)字從1開(kāi)始,以后每次自動(dòng)加1。用一行SQL語(yǔ)句,你就可以輕松的為數(shù)據(jù)表添加這樣的一個(gè)字段,我把它叫做USERID:
  ALTERTABLEdbname
  ADDCOLUMN
  USERIDINT(11)NOTNULL
  PRIMARYKEYAUTO_INCREMENT;
  
  對(duì)這個(gè)字段我們作了一些特別的設(shè)置。首先,通過(guò)“INT(11)”定義它的類(lèi)型為11位的整數(shù);然后用“NOTNULL”關(guān)鍵字讓這個(gè)字段的值不能為NULL;再用“PRIMARYKEY”把它設(shè)置為索引字段,這樣搜索起來(lái)就會(huì)更快;最后,“AUTO_INCREMENT”定義它為自動(dòng)增一的字段。
  
  當(dāng)把用戶(hù)的姓名插入到數(shù)據(jù)庫(kù)后,就應(yīng)該在他們的瀏覽器上設(shè)置cookie了。這時(shí)利用的就是剛才我們談到的USERID字段的值:
  
  <?php
  mysql_connect(localhost,username,password);
  mysql_select_db(dbname);
  mysql_query("INSERTINTOtablename(first_name,last_name)
  VALUES('$first_name','$last_name')
  ");
  setcookie("CookieID",
  mysql_insert_id(),
  time()+94608000,
  "/");/*三年后cookie才會(huì)失效*/
  ?>
  
  php函數(shù)mysql_insert_id()返回在最后一次執(zhí)行了INSERT查詢(xún)后,由AUTO_INCREMENT定義的字段的值。這樣,只要你不清除掉瀏覽器的Cookies,網(wǎng)站就會(huì)永遠(yuǎn)“記住”你了
  
  讀取cookie
  
  我們來(lái)寫(xiě)一個(gè)像Amazon.com所作的那樣的腳本。首先,php腳本會(huì)先檢查客戶(hù)瀏覽器是否發(fā)送了cookie過(guò)來(lái),如果是那樣的話(huà),用戶(hù)的姓名就會(huì)被顯示出來(lái)。如果沒(méi)找到cookie的話(huà),就顯示一個(gè)表單,讓客戶(hù)登記他們的姓名,然后把他添加到數(shù)據(jù)庫(kù)中,并在客戶(hù)瀏覽其中設(shè)置好cookie。
  
  首先,先來(lái)顯示cookie的內(nèi)容:
  <?php
  print$CookieID;
  ?>
  然后,就可以把名字顯示出來(lái)了:
  <?php
  mysql_connect(localhost,username,password);
  mysql_select_db(dbname);
  $selectresult=mysql_query("SELECT*FROMtablename
  WHEREUSERID='$CookieID'
  ");
  $row=mysql_fetch_array($selectresult);
  echo"歡迎你的光臨",$row[first_name],"!";
  ?>
  就是這樣的了。我在其中沒(méi)有作判斷,交給你自己來(lái)完成好了  


php技術(shù)用cookies來(lái)跟蹤識(shí)別用戶(hù),轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 国产在线观看一区二区三区 | 国产91成人精品亚洲精品 | 青青草一区国产97 | 五月激情片| 视频一区二区三区免费观看 | 日韩精品视频在线 | 国产zzzwww在线观看视频 | 综合伊人 | 亚洲欧美一区二区三区四区 | 91丨九色丨对白 | 甘城光辉游乐园在线观看 | 久久一级视频 | 精品国产一区二区三区19 | 婷婷六 | 国产对白你懂的 | 亚洲欧美人妖另类激情综合区 | 日本妞欧洲 | 国产一区二区在免费观看 | 亚洲大片免费看 | 欧美日韩亚洲另类人人澡 | 热re99久久国产精品 | 一区二区三区福利 | 国产精品丝袜高跟鞋 | 国产手机在线精品 | 伊人青草| 美女裸体自慰在线观看 | 婷婷亚洲天堂 | 野战露脸在线视频国产 | 高清成年美女黄网站色大 | 加勒比色久综合在线 | 国产成人亚洲精品 | 91性视频| 色偷偷亚洲女人天堂观看欧 | 88国产精品视频一区二区三区 | 91精品国产91久久久久久麻豆 | 中文字幕黄色 | 欧美日韩亚洲一区二区三区 | www.色com| 四虎最新入口 | 最新69成人精品毛片 | 国产精品999 |