编写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. asp.net 跨页面传值常用方法

    常用方法有以下: 1.queryString 2.form-post控件传递 3.cookie 4.application 5.session querystring: http://website. ...

  2. C# @字符用法

    1.用 @ 符号加在字符串前面表示其中的转义字符“不”被处理. 如果我们写一个文件的路径,例如"D:/文本文件"路径下的text.txt文件,不加@符号的话写法如下: string ...

  3. protocol(协议)

      可以用来声明一大堆方法(不能声明成员变量) 只要某个类遵守了这个协议,就相当于拥有这个协议中的所有方法声明 只要父类遵守了某个协议,就相当于子类也遵守了   //定义一个名叫MyProtocol的 ...

  4. Qt for Windows:Qt 5.4.0 MinGW 静态编译版本制作 (转)

    大致流程: 1.安装Qt(源码版)以及其他必要的环境 2.编译/安装 3.配置 4.使用 ----------正文分割线---------- 1.安装Qt(源码版) 1.1 下载Qt(两个地址二选一即 ...

  5. 删除数组中等于某个key的所有元素

    题目描述: 给定一个数组和一个值,在原地删除与值相同的数字,返回新数组的长度. 这道题目做暴力的想法就是,用一个指针从头到尾遍历,删除哪个元素就把后面的元素统一向前移动一个位置.但是这样的时间复杂度很 ...

  6. mysql 批量更新

    bs_user 表,我们叫他 bu表, 字段user_id,len_id, think_wellUser 表,我们简称为tw表,中的user_id ,len_id 其中tw表的user_id 是bu表 ...

  7. Linux 终端颜色高亮

    昨天在改一些东西时,不小心将root下的一些配置文件删掉了.导致启动终端后,字完全一个颜色,没有区分.在网上找到的都是 改整体颜色的.但实际上这时应该搜Linux终端高亮才能找到解决办法.在这里再列出 ...

  8. mysqli连接数据库函数

    <?php $mysqli=@new mysqli("localhost", "root", "123456", "xsph ...

  9. 编译gcc4.4.6与ICE遇到的几个问题

    1.遇错./.libs/libgcj.so: undefined reference to `__cxa_call_unexpected' 解决:d.错误码:"/.libs/libgcj.s ...

  10. Spring摘记

    spring工作机制及为什么要用? 1.spring mvc请所有的请求都提交给DispatcherServlet,它会委托应用系统的其他模块负责负责对请求进行真正的处理工作.2.Dispatcher ...