千家信息网

setcookie函数语法是什么以及怎么应用

发表于:2024-11-23 作者:千家信息网编辑
千家信息网最后更新 2024年11月23日,这篇文章将为大家详细讲解有关setcookie函数语法是什么以及怎么应用,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。cookies是由web服务器产
千家信息网最后更新 2024年11月23日setcookie函数语法是什么以及怎么应用

这篇文章将为大家详细讲解有关setcookie函数语法是什么以及怎么应用,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

  cookies是由web服务器产生的并且存在客户端的一些信息。它嵌在html信息中,由服务器端指定,在客户端及服务器端间传递信息。它通常用来:用户网页个性化,计数器,储存被浏览站点的信息等。下面小编来讲解下setcookie函数语法是什么?setcookie函数怎么应用?

  setcookie函数语法是什么

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

  PATH:表示web服务器上的目录,默认为被调用页面所在目录

  DOMAIN:cookie可以使用的域名,默认为被调用页面的域名。这个域名必须包含两个".",所以如果你指定你的顶级域名,你必须用".mydomain.com"

  SECURE:如果设为"1",表示cookie只能被用户的浏览器认为是安全的服务器所记住。

  setcookie函数怎么应用

  对于一个需要注册的站点,将自动识别用户的身份,并发送给它信息,如果是陌生人,将告诉他请先注册。我们按下面给出的信息创建一个小型数据库:名字(firstname),姓(lastname),email地址(emailaddress),计数器(visitcounter).

  按下面步骤建表:

  mysql>createdatabaseusers;

  QueryOK,1rowaffected(0.06sec)

  mysql>useusers;

  Databasechanged

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

  emailvarchar(40),countvarchar(3));

  QueryOK,0rowsaffected(0.05sec)

  好,现在有了符合要求的表,我们可以建一个php页面对照数据库检查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);//设一新的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服务器或unix服务器,你应用下面语句

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

  我们想检查是否一个被指定名字的cookie在html头部分传送,记住,php能转换可识别的cookie为相应的变量,所以我们能检查一个名为"Example"的变量:

  ...

  }else{

  ...

  }

  如果这个cookie存在,我们将计数器加一,并打印用户信息,如果这个cookie不存在,我们建议用户先注册

  如果cookie存在,我们执行下面步骤:

  $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函数分成不同的变量,增加计数器,并设一新cookie.接着用html语句输出用户信息。最后,用新的计数器值更新数据库。

  如果这个cookie不存,下面的程序将被执行:

  else{//BegininctructionsfornoCookie

  echo

  ClickHereforSiteRegistration

  ";

  }//EndNoCookieinstructions

关于setcookie函数语法是什么以及怎么应用就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

0