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系统流量分析的程序
Oct 09 PHP
PHP 文件编程综合案例-文件上传的实现
Jul 03 PHP
php遍历文件夹和文件列表示例分享
Mar 11 PHP
ThinkPHP之用户注册登录留言完整实例
Jul 22 PHP
php面向对象中static静态属性与方法的内存位置分析
Feb 08 PHP
PHP SPL标准库之数据结构堆(SplHeap)简单使用实例
May 12 PHP
php中 ob_start等函数截取标准输出的方法
Jun 22 PHP
PHP实现的网站目录扫描索引工具
Sep 08 PHP
php 运算符与表达式详细介绍
Nov 30 PHP
php实现socket推送技术的示例
Dec 20 PHP
实例分析10个PHP常见安全问题
Jul 09 PHP
yii 框架实现按天,月,年,自定义时间段统计数据的方法分析
Apr 04 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+mysql实现无限级分类
2015/11/11 PHP
学习php设计模式 php实现状态模式
2015/12/07 PHP
php Session无效分析资料整理
2016/11/29 PHP
关于laravel模板中生成URL的几种模式总结
2019/10/18 PHP
PHP pthreads v3下的Volatile简介与使用方法示例
2020/02/21 PHP
获取Javscript执行函数名称的方法
2006/12/22 Javascript
js获取图片长和宽度的代码
2009/11/24 Javascript
多种方法实现JS动态添加事件
2013/11/01 Javascript
jquery获取一组checkbox的值(实例代码)
2013/11/04 Javascript
一个实用的图片切换支持点击切换和自动轮播
2014/09/09 Javascript
JSON格式的时间/Date(2367828670431)/格式转为正常的年-月-日 格式的代码
2016/07/27 Javascript
AngularJS国际化详解及示例代码
2016/08/18 Javascript
JS跨域请求外部服务器的资源
2017/02/06 Javascript
Angular2安装angular-cli
2017/05/21 Javascript
Layui数据表格之单元格编辑方式
2019/10/26 Javascript
vue 使用鼠标滚动加载数据的例子
2019/10/31 Javascript
[00:36]DOTA2上海特级锦标赛 Archon战队宣传片
2016/03/04 DOTA
python3实现短网址和数字相互转换的方法
2015/04/28 Python
Python中max函数用于二维列表的实例
2018/04/03 Python
Python3.4 tkinter,PIL图片转换
2018/06/21 Python
python PyAutoGUI 模拟鼠标键盘操作和截屏功能
2019/08/04 Python
Python基于WordCloud制作词云图
2019/11/29 Python
使用python 的matplotlib 画轨道实例
2020/01/19 Python
Python selenium自动化测试模型图解
2020/04/15 Python
html5 视频播放解决方案
2016/11/06 HTML / CSS
荷兰男士时尚网上商店:Suitable
2017/12/25 全球购物
软件工程师岗位职责
2013/11/16 职场文书
计算机数据库专业职业生涯规划书
2014/02/08 职场文书
2015年煤矿工作总结
2015/04/28 职场文书
工程款申请报告
2015/05/15 职场文书
2015年高三年级组工作总结
2015/07/21 职场文书
PyQt5 QThread倒计时功能的实现代码
2021/04/02 Python
go语言map与string的相互转换的实现
2021/04/07 Golang
教你用Java Swing实现自助取款机系统
2021/06/11 Java/Android
详解Nginx 被动检查服务器的存活状态
2021/10/16 Servers
golang语言指针操作
2022/04/14 Golang