我们今天为大家介绍的问题是有关<?php

setcookie("CookieID", $USERID);

?>

PHP读取Cookies的setcookie 函数一共有六个参数,用逗号来分隔:

cookie 的名称,是一个字符串,例如: "CookieID" 。其间不允许有冒号,逗号和空格。这个参数是必须的,而其它的所有参数都是可选的。如果只有这一个参数被给出,那么这个 cookie 将被删除。

cookie 的值,通常是一个字符串变量,例如: $USERID 。也可以为它赋一个 ?? 来略过值的设置。

cookie 失效的时间。如果被省略(或者被赋值为零), cookie 将在这个对话期( session )结束后失效。这个参数可以是一个绝对的时间,用 DD-Mon-YY HH:MM:SS 来表示,比如: "24-Nov-99 08:26:00" 。而更常用的是设置一个相对时间。这是通过 time() 函数或者 mktime 函数来实现的。比如 time()+3600 将使得 cookie 在一个小时后失效。

一个路径,用来匹配 cookie 的。当在一个服务器上有多个同名的 cookie 的设置,为避免混淆,就要用到这个参数了。使用 "/" 路径的和省略这个参数的效果是一样的。要注意的是 Netscape 的 cookie 定义是把域名放在路径的前面的,而 PHP 则与之相反。

服务器的域名,也是用来匹配 cookie 的。要注意的是:在服务器的域名前必须放上一个点( . )。例如: ".friendshipcenter.com" 。因为除非有两个以上的点存在,否者这个参数是不能被接受的。

cookie 的安全级,是一个整数。 1 表示这个 cookie 只能通过“安全”的网络来传送。 0 或者省略则表示任何类型的网络都可以 117-102 117-202 117-301 。

Cookies 和变量

当 PHP 脚本从客户浏览器提取了一个 cookie 后,它将自动的把它转换成一个变量。例如:一个名为 CookieID 的 cookie 将变成变量 $CookieID.

Cookies 的内容被报存在 HTTP_COOKIE_VARS 数组中,你还可以通过这个数组和 cookie 的名称来存取指定的 cookie 值:

print $HTTP_COOKIE_VARS[CookieID];

记住每一个用户

回过头在来看看上面的 submitform.php3 文件,它的作用是把客户的姓名添加到数据库中,现在我想为它添加一些东西。我想为每个用户都分配一个唯一的用户标志,然后把这个标志放在 Cookies 中,这样每当用户访问我的网站的时候,通过 cookie 和其中的用户标志,我就能够知道他是谁了。

MySQL 能够被设置成为每一个新的纪录自动的分配一个数字,这个数字从 1 开始,以后每次自动加 1 。用一行 SQL 语句,你就可以轻松的为数据表添加这样的一个字段,我把它叫做

USERID:

ALTER TABLE dbname

ADD COLUMN

USERID INT(11) NOT NULL

PRIMARY KEY AUTO_INCREMENT;

对这个字段我们作了一些特别的设置。首先,通过“ INT(11) ”定义它的类型为 11 位的整数;然后用“ NOT NULL ”关键字让这个字段的值不能为 NULL ;再用“ PRIMARY KEY ”把它设置为索引字段,这样搜索起来就会更快;最后,“ AUTO_INCREMENT ”定义它为自动增一的字段。

当把用户的姓名插入到数据库后,就应该在他们的浏览器上设置 cookie 了。这时利用的就是刚才我们谈到的 USERID 字段的值 :<?php

mysql_connect (localhost, username, password);

mysql_select_db (dbname);

mysql_query ("INSERT INTO tablename (first_name, last_name) VALUES ("$first_name", "$last_name")");

setcookie("CookieID",

mysql_insert_id(),

time()+94608000,

"/"); /* 三年后 cookie 才会失效 */

?>

PHP 函数 mysql_insert_id() 返回在最后一次执行了 INSERT 查询后,由 AUTO_INCREMENT 定义的字段的值。这样,只要你不清除掉浏览器的 Cookies ,网站就会永远“记住”你了

PHP读取Cookies

我们来写一个像 Amazon.com 所作的那样的脚本。首先, PHP 脚本会先检查客户浏览器是否发送了 cookie 过来,如果是那样的话,用户的姓名就会被显示出来。如果没找到 cookie 的话,就显示一个表单,让客户登记他们的姓名,然后把他添加到数据库中,并在客户浏览其中设置好 cookie 。

首先,先来显示 cookie 的内容:<?php

print $CookieID;

?>

然后,就可以把名字显示出来了:<?php

mysql_connect (localhost, username, password);

mysql_select_db (dbname);

$selectresult=mysql_query("SELECT * FROM tablename WHEREUSERID="$CookieID"");

$row=mysql_fetch_array($selectresult);

echo " 欢迎你的光临 ", $row[first_name], "!";

?>

以上就是PHP读取Cookies的具体实现方法。

http://www.bkjia.com/PHPjc/446055.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/446055.htmlTechArticle我们今天为大家介绍的问题是有关 ?php setcookie(CookieID,$USERID); ? HTML BODY /BODY /HTML PHP读取Cookies的setcookie 函数一共有六个参数,用逗号来分隔:...

php 读 cookies,正确解读PHP读取Cookies的方法_PHP教程相关推荐

  1. php der格式 证书,php读取der格式证书乱码解决方法_PHP教程

    php读取der格式证书乱码解决方法 这篇文章主要介绍了php读取der格式证书乱码解决方法的相关资料,需要的朋友可以参考下 遇到的问题: 我的项目需要用到应用der格式的证书公钥及RSA算法来验签相 ...

  2. php读取三维数组,php 读取多维数组方法_PHP教程

    php 读取多维数组方法 for($i=0;$i { for($j=0;$j { echo $array[$j][userid]; } } 因为它是个多维数组,一般用 foreach ($arr as ...

  3. 正确解读PHP获取时间错误原因

    正确解读PHP获取时间错误原因 2009-12-09 14:25 佚名 百度博客 字号:T | T PHP获取时间错误是我们在开发运用PHP Date()函数时经常会遇到的问题.希望读者朋友通过本文介 ...

  4. python读hadoop_python读取hdfs并返回dataframe教程

    不多说,直接上代码 from hdfs import Client import pandas as pd HDFSHOST = "http://xxx:50070" FILENA ...

  5. 设置cookies过期时间的几种方法(cookies随浏览器关闭而失效的方法)

    cookies随浏览器关闭而失效的方法: 如果不设置Expires的属性那么Cookie的存活时间就是在关闭浏览器的时候. 默认cookies失效时间是直到关闭浏览器,cookies失效,也可以指定c ...

  6. 为什么读文件操作一次读取字节数组最大是8192

    为什么读文件操作一次读取字节数组最大值是8192 ? 最近做项目遇到将服务器上的文件下载到本地操作.其中用到了一个方法Files.copy 调试过程中查看源码发现一个很有意思的事 // buffer ...

  7. mysql存读图片_mysql如何储存读取图片

    mysql储存读取图片的方法:首先将图片转换成缓冲流:然后获得图片的字节数组并执行相关操作:最后通过"public void MapSearchQuery(out byte[] imageB ...

  8. java读远程服务器文件,java 读取远程服务器文件

    java 读取远程服务器文件 [2021-01-31 12:09:45]  简介: php去除nbsp的方法:首先创建一个PHP代码示例文件:然后通过"preg_replace(" ...

  9. 移动硬盘“文件或目录损坏且无法读取”错误修复方法

    昨天在用移动硬盘下载文件时忽然出错,以为是小错误并没在意,直接关机拔掉了硬盘.今天再连到电脑上时,发现硬盘无法读取,XP提示"文件或目录损坏且无法读取".换了台电脑试了下,问题依旧 ...

最新文章

  1. JAVA记录-Servlet RequestDispatcher请求转发
  2. 不再迷惑,无值和 NULL 值
  3. centos7 firewall防火墙实现映射其他机器的端口
  4. Mybatis中SQL注入攻击的3种方式,真是防不胜防!
  5. Java 之 String 类型
  6. 解决pytorch DataLoader 加载数据报错UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xe5 in position 1023
  7. shrio反序列漏洞修复_Apache Shiro Java 反序列化漏洞分析
  8. zabbix详解(十五)——zabbix proxy配置实战
  9. Exchange 2007中批量修改用户邮箱配额
  10. 几个很实用的软件 root 改机 软改 硬改 改串号 改设备 参数生成器APK 电脑软件
  11. table-首列冻结
  12. springboot推送微信公众号消息,java推送微信公众号消息
  13. WebGL压缩纹理实践
  14. 云蹦迪云广场舞软件开源源码
  15. Linux ps state sl+是什么意思
  16. c# 时间格式化为英文_C#中如何将日期中的月份转化成英文
  17. openswan中的in_struct和out_struct函数
  18. [转]Assembly Manifest 通俗简易手册
  19. 什么是DCDC电源电涌,来源是哪里
  20. 关于结构体类型的讲解

热门文章

  1. Windows 安装babun教程以及没有文件扩展“.vbs”的脚本引擎的解决方案
  2. StreamSets基本使用
  3. 如果一定要我感谢谁,我这个世界上最感谢的人就是我的妈妈
  4. 基于机器学习的上证指数、东方股吧的股市评论情感分析 完整代码数据
  5. 【图像分割】基于Kmean聚类 分水岭、oust、粒子群算法优化脂肪肝图像分割附matlab代码
  6. 【原创】软件架构技术发展历程总结及思考 1of2(待续)
  7. python字符串的索引,字符串的第一和倒数第一个索引
  8. 蓝桥云课linux入门3:用户及文件权限管理
  9. Linux云计算架构师学习方法合集-文件的归档和压缩
  10. 2019-1-25-Python-Exercise