PHP页面间传递值和保持值的方法


Posted in PHP onAugust 24, 2016

一、目录结构

PHP页面间传递值和保持值的方法

二、两次页面间传递值

在两次页面之间传递少量数据,可以使用get提交,也可以使用post提交,二者的区别恕不赘述。

1、get提交

使用get提交来传递数据,在链接地址中修改发送到服务器的 URL 如下所示http://www.cnblogs.com/MarkRao/p/php01.html?gName=mark&gAge=26,当然也可以在表单中设置method="get",php中接收get提交过来的数据值,使用预定义$_GET变量

从带有 GET 方法的表单发送的信息,对任何人都是可见的(会显示在浏览器的地址栏),并且对发送信息的量也有限制。

<html>
<head>
<meta charset="utf-8">
<title>get提交值</title>
</head>
<body>
<form action="getPage.php" method="get">
名字: <input type="text" name="gName">
年龄: <input type="text" name="gAge">
<input type="submit" value="提交">
</form>
</body>
</html>

"getPage.php" 文件现在可以通过 $_GET 变量来收集表单数据了(请注意,表单域的名称会自动成为 $_GET 数组中的键):

1 欢迎 <?php echo $_GET["gName"]; ?>!<br>
2 你的年龄是 <?php echo $_GET["gAge"]; ?> 岁。

2、post提交

使用post提交来传递数据,在表单中设置method="post",php中接收post提交的数据值,使用预定义$_POST变量

从带有 POST 方法的表单发送的信息,对任何人都是不可见的(不会显示在浏览器的地址栏),并且对发送信息的量也没有限制。

注释:然而,默认情况下,POST 方法的发送信息的量最大值为 8 MB(可通过设置 php.ini 文件中的 post_max_size 进行更改)。

<html>
<head>
<meta charset="utf-8">
<title>post提交值</title>
</head>
<body>
<form action="postPage.php" method="post">
名字: <input type="text" name="pName">
年龄: <input type="text" name="pAge">
<input type="submit" value="提交">
</form>
</body>
</html>

"postPage.php" 文件现在可以通过 $_POST 变量来收集表单数据了(请注意,表单域的名称会自动成为 $_POST 数组中的键):

欢迎 <?php echo $_POST["pName"]; ?>!<br>
你的年龄是 <?php echo $_POST["pAge"]; ?> 岁。

三、多个页面之间保持值

在多个页面之间保持数据,可以使用session保存,也可以使用cookie保存,二者的区别恕不赘述。

1、session保存数据

PHP session 变量用于存储关于用户会话(session)的信息,或者更改用户会话(session)的设置。Session 变量存储单一用户的信息,并且对于应用程序中的所有页面都是可用的。Session 的工作机制是:为每个访客创建一个唯一的 id (UID),并基于这个 UID 来存储变量。UID 存储在 cookie 中,或者通过 URL 进行传导。

在您把用户信息存储到 PHP session 中之前,首先必须启动会话。

注释:session_start() 函数必须位于 <html> 标签之前:

存储和取回 session 变量的正确方法是使用 PHP的$_SESSION变量:

<?php session_start();
// 存储 session 数据
$_SESSION['viewCount']=1; 
?>
<html>
<head>
<meta charset="utf-8">
<title>session保持数据值</title>
</head>
<body>
<?php
// 取出 session 数据
echo "浏览量:". $_SESSION['viewCount'];
?>
</body>
</html>

2、cookie保存数据

cookie 常用于识别用户。cookie 是一种服务器留在用户计算机上的小文件。每当同一台计算机通过浏览器请求页面时,这台计算机将会发送 cookie。通过 PHP,您能够创建并取回 cookie 的值。

  setcookie() 函数用于设置 cookie。

注释:setcookie() 函数必须位于 <html> 标签之前。

语法如下

//name存储的键名
//value存储的键值
//expire存储的超时时间
//path存储的位置
//domain存储区别的域名
setcookie(name, value, expire, path, domain);

$_COOKIE 变量用于取回 cookie 的值。

<?php
// 输出 cookie 值
echo $_COOKIE["user"]; 
// 查看所有 cookie
print_r($_COOKIE);
?>

当删除 cookie 时,您应当使过期日期变更为过去的时间点:

<?php
// 设置 cookie 过期时间为过去 1 小时
setcookie("user", "", time()-3600);
?>

以上所述是小编给大家介绍的PHP页面间传递值和保持值的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
让你同时上传 1000 个文件 (二)
Oct 09 PHP
用php实现的下载css文件中的图片的代码
Feb 08 PHP
使用bcompiler对PHP文件进行加密的代码
Aug 29 PHP
PHP通过正则表达式下载图片到本地的实现代码
Sep 19 PHP
提高php运行速度的一些小技巧分享
Jul 03 PHP
360通用php防护代码(使用操作详解)
Jun 18 PHP
浅析关于PHP位运算的简单权限设计
Jun 30 PHP
codeigniter上传图片不能正确识别图片类型问题解决方法
Jul 25 PHP
php基于socket实现SMTP发送邮件的方法
Mar 05 PHP
PHP身份证校验码计算方法
Aug 10 PHP
微信公众平台开发教程①获取用户Openid及个人信息图文详解
Apr 10 PHP
PHP中通过getopt解析GNU C风格命令行选项
Nov 18 PHP
PHP中explode函数和split函数的区别小结
Aug 24 #PHP
php处理单文件、多文件上传代码分享
Aug 24 #PHP
PHP简单创建压缩图的方法
Aug 24 #PHP
php利用header函数下载各种文件
Aug 24 #PHP
php强制下载文件函数
Aug 24 #PHP
PHP简单实现数字分页功能示例
Aug 24 #PHP
PHP自定义函数获取URL中一级域名的方法
Aug 23 #PHP
You might like
深入PHP内存相关的功能特性详解
2013/06/08 PHP
php unset全局变量运用问题的深入解析
2013/06/17 PHP
浅析PHP文件下载原理
2014/12/25 PHP
提高php编程效率技巧
2015/08/13 PHP
Yii2使用swiftmailer发送邮件的方法
2016/05/03 PHP
Yii2实现同时搜索多个字段的方法
2016/08/10 PHP
PHP isset()与empty()的使用区别详解
2017/02/10 PHP
PHP实现的ID混淆算法类与用法示例
2018/08/10 PHP
解决FLASH需要点击激活的代码
2006/12/20 Javascript
jQuery解决iframe高度自适应代码
2009/12/20 Javascript
JavaScript基础知识之数据类型
2012/08/06 Javascript
jQuery计算textarea中文字数(剩余个数)的小程序
2013/11/28 Javascript
jquery如何获取复选框的值
2013/12/12 Javascript
原生js实现图片层叠轮播切换效果
2016/02/02 Javascript
详解vue-cli 脚手架项目-package.json
2017/07/04 Javascript
jQuery实现获取form表单内容及绑定数据到form表单操作分析
2018/07/03 jQuery
JavaScript实现浅拷贝与深拷贝的方法分析
2018/07/05 Javascript
vue-router的两种模式的区别
2019/05/30 Javascript
JS随机密码生成算法
2019/09/23 Javascript
vue路由跳转传递参数的方式总结
2020/05/10 Javascript
Python字符串匹配算法KMP实例
2015/07/18 Python
Python数据结构与算法之完全树与最小堆实例
2017/12/13 Python
Python集中化管理平台Ansible介绍与YAML简介
2019/06/12 Python
python网络编程 使用UDP、TCP协议收发信息详解
2019/08/29 Python
Python实现非正太分布的异常值检测方式
2019/12/09 Python
浅析python 动态库m.so.1.0错误问题
2020/05/09 Python
Python爬虫破解登陆哔哩哔哩的方法
2020/11/17 Python
美国求婚钻戒网站:Super Jeweler
2016/08/27 全球购物
美国网上书店:Barnes & Noble
2018/08/15 全球购物
十佳中学生事迹材料
2014/06/02 职场文书
销售口号大全
2014/06/11 职场文书
金陵十三钗观后感
2015/06/04 职场文书
小学体育组工作总结2015
2015/07/21 职场文书
大学生志愿者心得体会
2016/01/15 职场文书
图解上海144收音机
2021/04/22 无线电
Python 多线程处理任务实例
2021/11/07 Python