php中cookie的用法
设置cookie时是将数据先经过serialize将数据变成一个字符串,然后再经过base64_encode转化成一个没特殊符号的字符串。把这个字符串设置到cookie中。然后在得到cookie的数据时用getcookie函数取回对应的数据。
这样做的好处正如我之前说的,可以很方便得把数组甚至对像都保存在cookie中。方便进行设置及调用。
当然也会有不足的地方,那就是cookie可以保存的数据量会大大减小,因为保存了很多用于定义数据属性的内容。
function MyCookie($var,$value='',$lifetime='Y')
{
if($value!='')
{
$value=base64_encode(serialize($value));
}
if($lifetime=='D')
{
$lifetime=time()+86400;
}
setcookie($var,$value,$$lifetime);
}
function GetCookie($var)
{
$value='';
if(array_key_exists($var,$_COOKIE)
{
$value=$_COOKIE[$var];
$value=unserialize(base64_decode($value));
}
return $value;
}
php返回数组中所有下标的值的函数.
function foo($xiao,$zhong,$da)
{
$numargs = func_num_args();
echo "数组中的参数个数是: $numargs<br />n";
if ($numargs >= 2){
echo "数组中第二参数的值是: ". func_get_arg(1) . "<br />n";
}
$arg_list = func_get_args();
for ($i = 0; $i < $numargs; $i++){
echo "数组中下标 $i 的值是: " . $arg_list[$i] . "<br />n";
}
}
服务器变量 $_SERVER 详解:
*的是我认为比较常用和重要的,{}部分是我自己调试后加上的,便于理解。
*1、$_SESSION['PHP_SELF'] -- 获取当前正在执行脚本的文件名
2、$_SERVER['SERVER_PROTOCOL'] -- 请求页面时通信协议的名称和版本。例如,“HTTP/1.0”。
*3、$_SERVER['REQUEST_TIME'] -- 请求开始时的时间戳。从 PHP 5.1.0 起有效。{和time函数效果一样}
*4、$_SERVER['argv'] -- 传递给该脚本的参数。{我试了下,get方法可以得到$_SERVER['argv'][0];post方法无法给他赋值}
*5、$_SERVER['SERVER_NAME'] -- 返回当前主机名。
6、$_SERVER['SERVER_SOFTWARE'] -- 服务器标识的字串,在响应请求时的头信息中给出。{如Microsoft-IIS/6.0}
*7、$_SERVER['REQUEST_METHOD'] -- 访问页面时的请求方法。例如:“GET”、“HEAD”,“POST”,“PUT”
*8、$_SERVER['QUERY_STRING'] -- 查询(query)的字符串(URL 中第一个问号 ? 之后的内容)。
9、$_SERVER['DOCUMENT_ROOT'] -- 当前运行脚本所在的文档根目录。在服务器配置文件中定义。{如E:server}
10、$_SERVER['HTTP_ACCEPT'] -- 当前请求的 Accept: 头信息的内容。
11、$_SERVER['HTTP_ACCEPT_CHARSET'] -- 当前请求的 Accept-Charset: 头信息的内容。例如:“iso-8859-1,*,utf-8”。
12、$_SERVER['HTTP_ACCEPT_ENCODING'] -- 当前请求的 Accept-Encoding: 头信息的内容。例如:“gzip”。
13、$_SERVER['HTTP_ACCEPT_LANGUAGE'] -- 当前请求的 Accept-Language: 头信息的内容。例如:“en”。
14、$_SERVER['HTTP_CONNECTION'] -- 当前请求的 Connection: 头信息的内容。例如:“Keep-Alive”。
15、$_SERVER['HTTP_HOST'] -- 当前请求的 Host: 头信息的内容。
*16、$_SERVER['HTTP_REFERER'] -- 链接到当前页面的前一页面的 URL 地址。
*17、$_SERVER['HTTP_USER_AGENT'] -- 返回用户使用的浏览器信息。也可以使用 get_browser() 得到此信息。
18、$_SERVER['HTTPS'] -- 如果通过https访问,则被设为一个非空的值,否则返回off.
*19、$_SERVER['REMOTE_ADDR'] -- 正在浏览当前页面用户的 IP 地址。
20、$_SERVER['REMOTE_HOST'] -- 正在浏览当前页面用户的主机名。反向域名解析基于该用户的 REMOTE_ADDR。{如本地测试返回127.0.0.1}
21、$_SERVER['REMOTE_PORT'] -- 用户连接到服务器时所使用的端口。{我在本机测试没通过,不知道什么原因}
22、$_SERVER['SCRIPT_FILENAME'] -- 当前执行脚本的绝对路径名。{如返回E:serverindex.php}
23、$_SERVER['SERVER_ADMIN'] -- 该值指明了 Apache 服务器配置文件中的 SERVER_ADMIN 参数。如果脚本运行在一个虚拟主机上,则该值是那个虚拟主机的值
24、$_SERVER['SERVER_PORT'] -- 服务器所使用的端口。默认为“80”。如果使用 SSL 安全连接,则这个值为用户设置的 HTTP 端口。
25、$_SERVER['SERVER_SIGNATURE'] -- 包含服务器版本和虚拟主机名的字符串。
26、$_SERVER['PATH_TRANSLATED'] -- 当前脚本所在文件系统(不是文档根目录)的基本路径。这是在服务器进行虚拟到真实路径的映像后的结果。 Apache 2 用 户可以使用 httpd.conf 中的 AcceptPathInfo On 来定义 PATH_INFO。
*27、$_SERVER['SCRIPT_NAME'] -- 包含当前脚本的路径。这在页面需要指向自己时非常有用。__FILE__ 包含当前文件的绝对路径和文件名(例如包含文件)。
*28、$_SERVER['REQUEST_URI'] -- 访问此页面所需的 URI。例如,“/index.html”。
29、$_SERVER['PHP_AUTH_DIGEST'] -- 当作为 Apache 模块运行时,进行 HTTP Digest 认证的过程中,此变量被设置成客户端发送的“Authorization”HTTP 头内容(以便作进一步的认证操作)。
30、$_SERVER['PHP_AUTH_USER']-- 当 PHP 运行在 Apache 或 IIS(PHP 5 是 ISAPI)模块方式下,并且正在使用 HTTP 认证功能,这个变量便是用户输入的用户名。
31、$_SERVER['PHP_AUTH_PW'] -- 当 PHP 运行在 Apache 或 IIS(PHP 5 是 ISAPI)模块方式下,并且正在使用 HTTP 认证功能,这个变量便是用户输入的密码。
32、$_SERVER['AUTH_TYPE']--当 PHP 运行在 Apache 模块方式下,并且正在使用 HTTP 认证功能,这个变量便是认证的类型。
<?php
//连接数据库
$link_id = mysql_connect("localhost","root","") or die("连接失败");
if($link_id)
{
//选择数据库
mysql_select_db("my_test");
//以上为头部数据库连接部分,为以下公用的部分。
if(!$_GET[id]){
//显示用户列表
$sql = "select * from userinfo";
$result=mysql_query($sql);
echo "<TABLE border=1>
<TR>
<TD>编号</TD>
<TD>用户名称</TD>
<TD>性别</TD>
<TD>年龄</TD>
<TD>注册时间</TD>
<TD>详细信息</TD>
</TR>";
while($row=mysql_fetch_array($result)){
echo "<TR>
<TD>".$row[id]."</TD>
<TD>".$row[username]."</TD>
<TD>".$row[gender]."</TD>
<TD>".$row[age]."</TD>
<TD>".$row[regdate]."</TD>
<TD><a href=query.php?id=".$row[id].">查看</a></TD>
</TR>";
}
echo "</TABLE>";
}
else
{
//显示指定用户的详细信息
$sql="select * from userinfo where id=".$_GET[id];
$result=mysql_query($sql);
$row=mysql_fetch_array($result);
echo "编号:".$row[id]."<br>用户名:".$row[username]."<br>性别:".$row[gender]."<br>年龄:".$row[age]."<br>注册时间:".$row['regdate'];
echo "<br><br><br><a href=query.php>继续查询</a>";
}
}//end if
?>
<?php
//连接数据库
$link_id = mysql_connect("localhost","root","") or die("连接失败");
if($link_id)
{
mysql_select_db("my_test");
if(!$_GET[id])
{
$result=mysql_query("select * from userinfo");
echo "<TABLE border=1>
<TR>
<TD>编号</TD>
<TD>用户名称</TD>
<TD>性别</TD>
<TD>年龄</TD>
<TD>注册时间</TD>
<TD>操作</TD>
</TR>";
while($row=mysql_fetch_array($result)){
echo "<TR>
<TD>".$row[id]."</TD>
<TD>".$row[username]."</TD>
<TD>".$row[gender]."</TD>
<TD>".$row[age]."</TD>
<TD>".$row[regdate]."</TD>
<TD><a href=modify.php?id=".$row[id].">编辑</a></TD>
</TR>";
}
echo "</TABLE>";
}//显示列表的内容
else
{
if(!$_POST[ok])
{
$sql="select * from userinfo where id=".$_GET[id];
$result=mysql_query($sql);
$row=mysql_fetch_array($result);
?>
<form method=post action='modify.php?id=<? echo $_GET[id];?>'>
<?
echo $row[id]."<br>";
?>
<INPUT TYPE="hidden" name="id" value=<?echo $row[id];?>>
姓名 <input type=text name="username" value=<?echo $row[username];?>><br>
性别 <input type=text name="gender" value=<?echo $row[gender];?>><br>
年龄 <input type=text name="age" value=<?echo $row[age];?>><br>
注册时间 <input type=text name="regdate" value=<?echo $row['regdate'];?>><br>
<input type=submit name=ok value="提交">
</form>
<?
}// if(!$_POST[ok])
else{//针对$ok被激活后的处理:
$sql="update userinfo set username='".$_POST[username]."',gender='".$_POST[gender]."',age='".$_POST[age]."',regdate='".$_POST[regdate]."' where id='".$_POST[id]."'";
$result=mysql_query($sql);
if($result)
echo "记录已经成功修改<br><a href='modify.php'>继续修改记录</a>";
else
echo "记录修改失败<br><a href=modify.php?id=".$_POST[id].">返回</a>";
}
}//else($id部分)
} // end if
?>
相关文章
- PHPEMS(PHP Exam Management System)在线模拟考试系统基于PHP+Mysql开发,主要用于搭建模拟考试平台,支持多种题型和展现方式,是国内首款支持题冒题和自动评分与教师评分相...2016-11-25
- using 指令有两个用途: 允许在命名空间中使用类型,以便您不必限定在该命名空间中使用的类型。 为命名空间创建别名。 using 关键字还用来创建 using 语句 定义一个范围,将在此...2020-06-25
- 这篇文章主要介绍了源码分析系列之json_encode()如何转化一个对象,对json_encode()感兴趣的同学,可以参考下...2021-04-22
- PHP去除html、css样式、js格式的方法很多,但发现,它们基本都有一个弊端:空格往往清除不了 经过不断的研究,最终找到了一个理想的去除html包括空格css样式、js 的PHP函数。...2013-08-02
- 本文实例讲述了JS使用cookie实现DIV提示框只显示一次的方法。分享给大家供大家参考,具体如下:这里运用JavaScript的cookie技术,控制网页上的提示DIV只显示一次,也就是当用户是第一次打开网页的时候才显示,第二次自动隐藏起...2015-11-08
- index.php怎么打开?初学者可能不知道如何打开index.php,不会的同学可以参考一下本篇教程 打开编辑:右键->打开方式->经文本方式打开打开运行:首先你要有个支持运行PH...2017-07-06
- 什么是SSO?单点登录SSO(Single Sign-On)是身份管理中的一部分。SSO的一种较为通俗的定义是:SSO是指访问同一服务器不同应用中的受保护资源的同一用户,只需要登录一次,即通过一个应用中的安全验证后,再访问其他应用中的受保护...2015-11-08
PHP中func_get_args(),func_get_arg(),func_num_args()的区别
复制代码 代码如下:<?php function jb51(){ print_r(func_get_args()); echo "<br>"; echo func_get_arg(1); echo "<br>"; echo func_num_args(); } jb51("www","j...2013-10-04- 什么是SSO?单点登录SSO(Single Sign-On)是身份管理中的一部分。SSO的一种较为通俗的定义是:SSO是指访问同一服务器不同应用中的受保护资源的同一用户,只需要登录一次,即通过一个应用中的安全验证后,再访问其他应用中的受保护...2015-11-08
- 这篇文章主要介绍了PHP编程 SSO详细介绍及简单实例的相关资料,这里介绍了三种模式跨子域单点登陆、完全跨单点域登陆、站群共享身份认证,需要的朋友可以参考下...2017-01-25
- 这篇文章主要介绍了vue项目中js-cookie的使用存储token操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-11-14
- 这篇文章主要介绍了PHP实现创建以太坊钱包转账等功能,对以太坊感兴趣的同学,可以参考下...2021-04-20
- 最新版下载: http://www.csdn123.com/uploadfile/2015/0428/20150428062734485.zip 概要 iScroll 4 这个版本完全重写了iScroll这个框架的原始代码。这个项目的产生...2016-05-19
- 这篇文章主要介绍了C#中的try catch finally用法,以实例形式分析了try catch finally针对错误处理时的不同用法,具有一定的参考借鉴价值,需要的朋友可以参考下...2020-06-25
- 这篇文章主要介绍了C++中cin的用法详细,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-04-25
- 这篇文章主要为大家详细介绍了php微信公众账号开发之五个坑,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2016-10-02
ThinkPHP使用心得分享-ThinkPHP + Ajax 实现2级联动下拉菜单
首先是数据库的设计。分类表叫cate.我做的是分类数据的二级联动,数据需要的字段有:id,name(中文名),pid(父id). 父id的设置: 若数据没有上一级,则父id为0,若有上级,则父id为上一级的id。数据库有内容后,就可以开始写代码,进...2014-05-31- 这篇文章主要介绍了PHP如何通过date() 函数格式化显示时间,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-11-13
- 今天我给大家分享的是在不刷新页面的前提下,使用PHP+jQuery+Ajax实现多图片上传的效果。用户只需要点击选择要上传的图片,然后图片自动上传到服务器上并展示在页面上。...2015-03-15
- 什么是cookie? cookie 是存储于访问者的计算机中的变量。每当同一台计算机通过浏览器请求某个页面时,就会发送这个 cookie。你可以使用 JavaScript 来创建和取回 cookie 的值。 有关cookie的例子: 名字 cookie 当访...2014-05-31