编写Cookie应用程序,一般流程是:首先尝试获取某个Cookie变量,如果有,则表明是老客户,读取其cookie信息,为其提供服务。

如果没有,则表明是第一次来访的客户,通过表单提交获取其身份信息,再将这些信息存入到Cookie变量中

 <?php
/*
*
* @Authors peng--jun
* @Email 1098325951@qq.com
* @Date 2015-11-05 12:10:47
* @Link http://www.cnblogs.com/xs-yqz/
* @version $Id$
==========================================
*/
header("Content-type: text/html; charset=UTF-8");
if ($_COOKIE["user"]["xm"]) { //尝试获取指定的Cookie变量,如果有
$visnum = intval($_COOKIE["user"]["num"])+;//将原来的访问次数加1
$expire = intval($_COOKIE["user"]["expire"]);//获取有效期
//将本次访问时间写入Cookie
setcookie("user[dt]",date("Y-m-d h:i:s"),time()+*$expire);
setcookie("user[num]",$visnum,time()+*$expire);
echo "欢迎您:".$_COOKIE["user"]["xm"];
echo "<br/>这是您第".$visnum."次访问本网站";
echo "<br/>您上次访问是在".$_COOKIE["user"]["dt"];
}else {//没有Cookie则显示登录表单
echo ' <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<form method="post" action="4.20.php">
<p>账号:<input name="xm" type="text"></p>
<p>密码:<input name="pwd" type="password"></p>
<p>保存:<select name="Save">
<option value="-1">不保存</option>
<option value="">保存一周</option>
<option value="">保存一月</option>
<input type="submit" name="submit" value="登陆">
</p>
</form>
</body>
</html>
';
}
?>

4.20.php处理表单数据

<?php

 header("Content-type: text/html; charset=UTF-8");
if ($_POST["xm"] == "admin" && $_POST["pwd"] == "") {
setcookie("user[xm]",$_POST["xm"],time()+*intval($_POST["Save"]));
setcookie("user[dt]",date("Y-m-d h:i:s"),time()+*intval($_POST["Save"]));
setcookie("user[num]",,time()+*intval($_POST["Save"]));
setcookie("user[expire]",$_POST["Save"],time()+*intval($_POST["Save"]));
//保存有效期到Cookie
echo $_POST["xm"].":首次光临";
var_dump($_COOKIE);
}else{
echo "<script>alert('用户或密码不正确');location.href='4.19.php';</script>";
}
?>

cookie程序设计举例的更多相关文章

  1. cookie使用举例(添加购物车商品_移除购物车商品)

    之前介绍过cookie和session的原理和区别.下面举例说明一下cookie在实际项目中的使用.使用cookie实现购物车功能: 1.往购物车添加商品 2.从购物车里移除商品 主要是要点是:以产品 ...

  2. C++面向对象程序设计举例

    [例8.1]最简单的例子. #include <iostream> using namespace std; class Time //定义Time类 { public : //数据成员为 ...

  3. 读javascript高级程序设计17-在线检测,cookie,子cookie

    一.在线状态检测 开发离线应用时,往往在离线状态时把数据存在本地,而在联机状态时再把数据发送到服务器.html5提供了检测在线状态的方法:navigator.onLine和online/offline ...

  4. Javascript中关于cookie的那些事儿

    Javascript-cookie 什么是cookie? 指某些网站为了辨别用户身份.进行session跟踪而储存在用户本地终端上的数据(通常经过加密).简单点来说就是:浏览器缓存. cookie由什 ...

  5. JavaWeb 8 Cookie

    JavaWeb 8 Cookie 2. 会话管理入门            2.1 生活中会话            我: 小张,你会跳小苹果码?            小张: 会,怎么了?      ...

  6. PHP之cookie相关实例教程与经典代码

    ·php 中cookie和session的用法比较 ·php会话控制cookie与Session会话处理 ·php中利用cookie实现购物车实例 ·php中cookie与session应用学习笔记 ...

  7. 路径问题以及cookie详解

    1.路径问题: 注意 .代表执行程序的文件夹路径,在tomcat中也就是bin目录,所以要用this.getServletContext().getRealPath("/WEB-INF/cl ...

  8. 会话管理(Cookie/Session技术)

    什么是会话:用户打开浏览器,点击多个超链接,访问服务器的多个web资源,然后关闭浏览器,整个过程就称为一个会话: 会话过程需要解决的问题:每个用户在使用浏览器与服务器进行会话的过程中,都可能会产生一些 ...

  9. 第3章 简单的C程序设计——顺序程序设计

    3.1 顺序程序设计举例 例:有人用温度计测量出用华氏法表示的温度(如64F),今要求把它转换为一摄氏法表示的温度(如17.8C) 解题思路:问题的关键在于找到两者的转换公式.根据物理学知识,公式为c ...

随机推荐

  1. SQL Server 事务嵌套

    示例代码: DECLARE @TranCounter INT; SET @TranCounter = @@TRANCOUNT; -- Procedure called when there is -- ...

  2. 安装oneproxy实现数据库的读写分离

    领导就给了两台数据库,做主从,在从上搭建oneproxy插件,实现读写分离,一直就听说oneproxy,今天打算用一下 先下载最新的版本wget http://www.onexsoft.cn/soft ...

  3. oracle distinct 去除重复,同时按某字段排序

    SELECT distinct supplier_id, min(evidence_date) as evidence_date FROM TD_SUPPLIER_EVIDENCE_INFO wher ...

  4. EventBus通信

    需求: 1.ActivityA打开ActivityB 2.在B中执行某操作后,同时执行A中的方法 lib下载:eventbus-2.4.0.jar  jmmy 1.在EventBusTestActiv ...

  5. mysql性能优化学习笔记(5)数据库结构优化

    一.选择合适的数据类型    1.使用可存下数据的最小的数据类型    2.使用简单地数据类型,Int<varchar    3.尽可能使用not null定义字段    4.尽量少用text, ...

  6. apache配置重写

    linux环境下 <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d Rewrite ...

  7. 通宵疯狂积累VB.NET基础知识

    VB.NET中Module的概念 为什么VB.NET中会有一个Module的东西,而在C#等语言中是没有的 首先,这是一个历史原因.早先的VB语言都有模块和类模块的概念.所谓模块一般就是存放公用的一些 ...

  8. 使用Flex图表组件

    原文 http://blog.csdn.net/mylxiaoyi/article/details/1618470 使用Flex图表组件 以图表或是图的方式显示数据的能力可以使得Flex程序用户的数据 ...

  9. List<int>是值类型还是引用类型

    class Program { static void Main(string[] args) { List<int> lst = new List<int>(); lst.A ...

  10. 矩阵转置 O(1)空间

    题目:用O(1)的空间实现矩阵的转置 为了方便,使用一维数组来分析.所谓矩阵转置,行变列,列变行.在转置的过程中,有的元素位置是不变的:对于变化位置的元素,要求O(1)空间完成,那么这些位置的变化一定 ...