溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

setcookie函數(shù)語法是什么以及怎么應(yīng)用

發(fā)布時間:2021-10-13 11:38:14 來源:億速云 閱讀:197 作者:柒染 欄目:編程語言

這篇文章將為大家詳細講解有關(guān)setcookie函數(shù)語法是什么以及怎么應(yīng)用,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。

  cookies是由web服務(wù)器產(chǎn)生的并且存在客戶端的一些信息。它嵌在html信息中,由服務(wù)器端指定,在客戶端及服務(wù)器端間傳遞信息。它通常用來:用戶網(wǎng)頁個性化,計數(shù)器,儲存被瀏覽站點的信息等。下面億速云小編來講解下setcookie函數(shù)語法是什么?setcookie函數(shù)怎么應(yīng)用?

  setcookie函數(shù)語法是什么

  setcookie(stringCookieName,stringCookieValue,intCookieExpireTime,path,domain,intsecure);

  PATH:表示web服務(wù)器上的目錄,默認(rèn)為被調(diào)用頁面所在目錄

  DOMAIN:cookie可以使用的域名,默認(rèn)為被調(diào)用頁面的域名。這個域名必須包含兩個".",所以如果你指定你的頂級域名,你必須用".mydomain.com"

  SECURE:如果設(shè)為"1",表示cookie只能被用戶的瀏覽器認(rèn)為是安全的服務(wù)器所記住。

  setcookie函數(shù)怎么應(yīng)用

  對于一個需要注冊的站點,將自動識別用戶的身份,并發(fā)送給它信息,如果是陌生人,將告訴他請先注冊。我們按下面給出的信息創(chuàng)建一個小型數(shù)據(jù)庫:名字(firstname),姓(lastname),email地址(emailaddress),計數(shù)器(visitcounter).

  按下面步驟建表:

  mysql>createdatabaseusers;

  QueryOK,1rowaffected(0.06sec)

  mysql>useusers;

  Databasechanged

  mysql>createtableinfo(FirstNamevarchar(20),LastNamevarchar(40),

  emailvarchar(40),countvarchar(3));

  QueryOK,0rowsaffected(0.05sec)

  好,現(xiàn)在有了符合要求的表,我們可以建一個php頁面對照數(shù)據(jù)庫檢查cookies.

  ########################index.php##################################

  $info=explode("&",$Example);

  $FirstName=$info[0];

  $LastName=$info[1];

  $email=$info[2];

  $count=$info[3];

  $count++;

  $CookieString=$FirstName.'&'.$LastName.'&'.$email.'&'.$count;

  SetCookie("Example",$CookieString,time()+3600);//設(shè)一新的cookie

  echo"

  Hello$FirstName$LastName,thisisyourvisitnumber:$count

  Youremailaddressis:$email

  ";

  mysql_connect()ordie("ProblemconnectingtoDataBase");//updateDB

  $query="updateinfosetcount=$countwhereFirstName='$FirstName'and

  LastName='$LastName'andemail='$email'";

  $result=mysql_db_query("users",$query)ordie("Problems....");

  }//EndExistingcookieinstructions

  else{//BegininctructionsfornoCookie

  echo"

  ClickHereforSiteRegistration

  ";

  }//EndNoCookieinstructions

  ?>

  注意:如果你用的是一個遠程mysql服務(wù)器或unix服務(wù)器,你應(yīng)用下面語句

  mysql_connect("server","username","password")ordie("ProblemconnectingtoDataBase");

  我們想檢查是否一個被指定名字的cookie在html頭部分傳送,記住,php能轉(zhuǎn)換可識別的cookie為相應(yīng)的變量,所以我們能檢查一個名為"Example"的變量:

  ...

  }else{

  ...

  }

  如果這個cookie存在,我們將計數(shù)器加一,并打印用戶信息,如果這個cookie不存在,我們建議用戶先注冊

  如果cookie存在,我們執(zhí)行下面步驟:

  $info=explode("&",$Example);//splitthestringtovariables

  $FirstName=$info[0];

  $LastName=$info[1];

  $email=$info[2];

  $count=$info[3];

  $count++;

  $CookieString=$FirstName.'&'.$LastName.'&'.$email.'&'.$count;

  SetCookie("Example",$CookieString,time()+3600);//settinganewcookie

  echo"

  Hello$FirstName$LastName,thisisyourvisitnumber:$count

  Youremailaddressis:$email

  ";

  mysql_connect()ordie("ProblemconnectingtoDataBase");//updateDB

  $query="updateinfosetcount=$countwhereFirstName='$FirstName'and

  LastName='$LastName'andemail='$email'";

  $result=mysql_db_query("users",$query)ordie("Problems....");

  }//EndExistingcookieinstructions

  上面的程序有3個主要部分:首先取得cookie值,用explode函數(shù)分成不同的變量,增加計數(shù)器,并設(shè)一新cookie.接著用html語句輸出用戶信息。最后,用新的計數(shù)器值更新數(shù)據(jù)庫。

  如果這個cookie不存,下面的程序?qū)⒈粓?zhí)行:

  else{//BegininctructionsfornoCookie

  echo

  ClickHereforSiteRegistration

  ";

  }//EndNoCookieinstructions

關(guān)于setcookie函數(shù)語法是什么以及怎么應(yīng)用就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI