您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關(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é)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責(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)容。