php后台程序与Javascript的两种交互方式


Posted in PHP onOctober 25, 2009

方法一:通过Cookie交互。
一共是三个文件,分别为:index.htm,action.php,main.htm
原理为前台页面main.htm和后台action.php通过页面框架 index.htm组织起来,将action.php的页面宽度设为0,这样并不影响显示。action.php将信息放入cookie中,main.htm通过读取 cookie来实现交互。在main.htm中也可以通过重新读取action.php 来实现控制后台CGI程序。
index.htm

<html> 
<head> 
<title>Test</title> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 
</head> 
<frameset framespacing="0" border="false" frameborder="0" cols="0,*"> 
<frame name="leftFrame" scrolling="no" noresize src="action.php"> 
<frame name="rightFrame" scrolling="auto" src="main.htm"> 
</frameset><noframes> 
<body bgcolor="#FFFFFF"> 
<p>本页使用页面框架,但是您的浏览器不支持。</p> 
</body> 
</noframes> 
</html>

action.php
<?php 
srand((double)microtime()*1000000); 
$result=rand(0,100); 
setcookie("action",$result,time()+900,"/"); 
?>

main.htm
<html> 
<head> 
<title>Test</title> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 
<script language="javascript"> 
function get_cookie() 
{ 
document.test.current_cookie.value=document.cookie; 
} 
</script> 
</head> 
<body bgcolor="#FFFFFF"> 
<form name="test" > 
当前参数为<input type="text" name="current_cookie" size="80" maxlength="1000"> 
</form> 
<script language="javascript"> 
setInterval("get_cookie()",200); 
</script> 
<br> 
<a href="action.php" target="leftFrame">重新读取Cookie</a> 
</body> 
</html>

方法二:直接通过parent.*.*来实现交互。
一共是三个文件,分别为:index.htm,action.php,main.htm,其中index.htm和前面的一样。
原理为通过parent.rightFrame.test.current_cookie.value直接传递信息。
action.php
<? 
srand((double)microtime()*1000000); 
$result=rand(0,100); 
?> 
<script language="javascript"> 
parent.rightFrame.test.current_cookie.value="<? echo $result?>"; 
</script>

main.htm
<html> 
<head> 
<title>Test</title> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 
</head> 
<body bgcolor="#FFFFFF"> 
<form name="test" > 
当前参数为<input type="text" name="current_cookie" size="80" maxlength="1000"> 
</form> 
<br> 
<a href="action.php" target="leftFrame">重新读取Cookie</a> 
</body> 
</html>
PHP 相关文章推荐
php对gzip文件或者字符串解压实例参考
Jul 25 PHP
非常精妙的PHP递归调用与静态变量使用
Dec 16 PHP
PHP抓取、分析国内视频网站的视频信息工具类
Apr 02 PHP
PHP的MVC模式实现原理分析(一相简单的MVC框架范例)
Apr 29 PHP
ThinkPHP3.1新特性之G方法的使用
Jun 19 PHP
php+mysql实现无限分类实例详解
Jan 15 PHP
php字符串按照单词进行反转的方法
Mar 14 PHP
详细解读PHP中接口的应用
Aug 12 PHP
php析构函数的简单使用说明
Aug 24 PHP
php版微信自定义回复功能示例
Dec 05 PHP
laravel框架学习笔记之组件化开发实现方法
Feb 01 PHP
用php实现分页效果的示例代码
Dec 10 PHP
PHP 数组教程 定义数组
Oct 23 #PHP
PHP 判断变量类型实现代码
Oct 23 #PHP
PHP 变量类型的强制转换
Oct 23 #PHP
PHP教程 预定义变量
Oct 23 #PHP
PHP 处理图片的类实现代码
Oct 23 #PHP
PHP教程 变量定义
Oct 23 #PHP
PHP教程 基本语法
Oct 23 #PHP
You might like
PHP网站基础优化方法小结
2008/09/29 PHP
PHP查询网站的PR值
2013/10/30 PHP
php类中的各种拦截器用法分析
2014/11/03 PHP
thinkphp中ajax与php响应过程详解
2014/12/08 PHP
thinkPHP模板算术运算相关函数用法分析
2016/07/12 PHP
PHP实现的最大正向匹配算法示例
2017/12/19 PHP
PHP vsprintf()函数格式化字符串操作原理解析
2020/07/14 PHP
JAVASCRIPT 对象的创建与使用
2021/03/09 Javascript
.net,js捕捉文本框回车键事件的小例子(兼容多浏览器)
2013/03/11 Javascript
js子页面获取父页面数据示例
2014/05/15 Javascript
jQuery实现的一个自定义Placeholder属性插件
2014/08/11 Javascript
JS拖动鼠标画出方框实现鼠标选区的方法
2015/08/05 Javascript
超实用的JavaScript表单代码段
2016/02/26 Javascript
使用JavaScript判断手机浏览器是横屏还是竖屏问题
2016/08/02 Javascript
简单的js计算器实现
2016/10/26 Javascript
ionic cordova一次上传多张图片(类似input file提交表单)的实现方法
2016/12/16 Javascript
基于JavaScript实现飘落星星特效
2017/08/10 Javascript
使用vue-router beforEach实现判断用户登录跳转路由筛选功能
2018/06/25 Javascript
基于Python os模块常用命令介绍
2017/11/03 Python
python 读取Linux服务器上的文件方法
2018/12/27 Python
python pip源配置,pip配置文件存放位置的方法
2019/07/12 Python
全面了解django的缓存机制及使用方法
2019/07/22 Python
python plotly画柱状图代码实例
2019/12/13 Python
1688平价精选商城:阿里集团旗下,工厂出厂价格直销
2017/04/24 全球购物
人事助理岗位职责
2013/11/18 职场文书
优秀毕业生推荐信范文
2014/03/07 职场文书
学习2014年全国两会心得体会
2014/03/12 职场文书
教师节倡议书
2014/08/30 职场文书
个人三严三实对照检查材料
2014/09/25 职场文书
房屋产权证明书
2014/10/15 职场文书
民事赔偿协议书
2014/11/02 职场文书
转让协议书
2015/01/27 职场文书
考研导师推荐信范文
2015/03/27 职场文书
企业团队精神心得体会
2016/01/19 职场文书
2017元旦、春节期间廉洁自律承诺书
2016/03/25 职场文书
解决Go gorm踩过的坑
2021/04/30 Golang