注册通行证 用户名 密码
  • 文章投稿
  • 博客
  • 论坛
  • 设为首页
  • 加入收藏
jztop.com网络技术
  • 首页
  • | iT新闻
  • | 操作系统
  • | 组网建网
  • | 网络安全
  • | 程序开发
  • | 办公一族
  • | 工具软件
  • | 网页制作
  • | 多媒体制作
  • | 网吧技术
  • | 服务器
  • | 专题教程
Vista | 软件评测 | 系统备份 | 优化 | 进程 | 聊天 | 病毒 | Linux | 黑客 | 防火墙 | 数据库 | Web开发 | Java | Word | 游戏 | 32位开发 | 移动开发
当前位置:首页 > 程序开发 > WEB开发 > PHP 内容正文:结合AJAX进行PHP开发之入门

结合AJAX进行PHP开发之入门

发布时间:2006-09-20 09:08:13 来源:IBM 网友评论 0 条
  将 Sajax 连接到相册

  利用刚刚创建的代码,我们将用 Sajax 迅速把相册从多页面应用程序转化成活动的 Ajax 应用程序。

  因为相册主要有两个函数,get_table() 和 get_image(),这也是需要用 Sajax 导出的全部函数。事实上,为了通过 Sajax 调用这些函数,这些函数本身基本上不需要修改,很快我们就会看到,我们只需要修改生成的链接即可。

  清单 9. Sajax 相册的头部

<?php
require("Sajax.php");

function get_image () { } // Defined later
function get_thumbs_table () { } // Defined later

// Standard Sajax stuff. Use Get, and export two
// main functions to javascript
$sajax_request_type = "GET";
sajax_init();
sajax_export("get_thumbs_table", "get_image");
sajax_handle_client_request();
?>

  对于本文而言,文档主体部分很简单。我们将使用 div 和 window 的 id 来显示服务器的输出。

  清单 10. 显示服务器输出的 div 和 window id

<body>
<h1>Sajax photo album</h1>
<div id="window"></div>
</body>

  最后还要编写 JavaScript 回调函数。该例中,因为所有的服务器输出都直接输出到 window div 标记,所以可以重复使用简单的回调函数。将回调函数添加到 Sajax 函数调用中,就可以得到头(head)。

  清单 11. 简单的头

<head>
<title>Creating a Sajax photo album</title>
<style type="text/css">
body { text-align: center }
div#window { margin: 0 auto 0 auto; width: 700px;
padding: 10px; border: 1px solid #ccc; background: #eee; }
table.image_table { margin: 0 auto 0 auto; }
table.image_table td { padding: 5px }
table.image_table a { display: block; }
table.image_table img { display: block; width: 120px
padding: 2px; border: 1px solid #ccc; }
img.full { display: block; margin: 0 auto 0 auto;
width: 300px; border: 1px solid #000 }
</style>

<script language="javascript">
<? sajax_show_javascript(); ?>

// Outputs directly to the "window" div
function to_window(output) {
 document.getElementById("window").innerHTML = output;
}

window.onload = function() {
 x get table to window);
};

</script>
</head>

  最后一步是保证应用程序中的所有链接都是自定义的 Sajax 调用。只需要取上一节中的代码并作如下替换:href="index.php?start=0&step=5" 变为 onclick="x_get_table(0, 5, to_window)",href="expand.php?index=0" 变为 onclick="x_get_image(0, to_window)"。

  并在相应的函数中做同样修改:get_image_link() 和 get_table_link()。这样向 Sajax 的转化就完成了(如图 6 所示)。所有链接都变成了与远程 PHP 调用对应的 JavaScript 调用,PHP 使用 JavaScript 响应处理程序 to_window() 直接输出到页面。

  整个应用程序都包含在一个页面中,还可以把其余功能(get_table()、get_image() 等)放在不能从 Web 访问的单独的库文件中。在大多数 Ajax 应用程序中,每个发往服务器的请求都需要由单独的脚本处理,或至少需要编写一个非常庞大的处理程序脚本来重定向请求。将所有这些文件都集中到一起可能非常麻烦。使用 Sajax 永远只需要一个文件,在该文件中只需定义我们使用的函数即可。Sajax 代替了处理程序脚本。

完成的基于 Sajax 的相册 
图 6. 完成的基于 Sajax 的相册(缩略图)

  可以看到 URL 仍然保持不变,并带来了更多愉快的用户体验。window div 显示在一个灰色的框中,通过 Sajax 生成的内容非常清楚。脚本不一定要知道自身或者它在服务器上的位置,因为所有的链接最终都成为直接对页面自身的 JavaScript 调用。因此我们的代码能够很好的模块化。我们只需要保持 JavaScript 和 PHP 函数在同一个页面上即可,即使页面位置发生了变化也没有关系。

 3/4   |‹ ‹‹ 1 2 3 4 ›› ›|
相关文章
  • 基于AJAX技术提高搜索引擎排名
  • 利用PHP+JavaScript打造AJAX搜索窗
  • 使用PHP和AJAX的XML编程
  • 使用AJAX技术构建更优秀的Web应用程序
  • 信息周刊:AJAX的优势
【评论】【收藏本文】【打印】【关闭】
上一篇文章:利用PHP+JavaScript打造AJAX搜索窗
下一篇文章:结合AJAX的PHP开发之后退、前进和刷新
讨论区
查看
已有 0 位对此新闻感兴趣的网友发表了看法
匿名发表
注册通行证 登陆
图文阅读推荐
结合AJAX进行PHP开发之入门
结合AJAX进行PHP开发之入门
推荐阅讯
  • PHP V5.0.0 Beta 1下载地址列表
  • Antechinus PHP Editor V2.0下载地址列表
  • PHP中删除目录的三种方法
  • 用PHP读取和编写XML DOM
  • 通过缓存数据库结果提高PHP性能
  • 用PHP与XML联手进行网站编程
  • PHP中通过Web 执行C/C++应用程序
  • PHP5 OOP编程之代理与定制异常
  • PHP环境下配置在线编辑器FCKeditor
  • 利用PHP和AJAX创建RSS聚合器
阅读排行
  • 1.实例学习PHP之表单处理篇(一)
  • 2.实例学习PHP之表单处理篇(二)
  • 3.结合AJAX进行PHP开发之入门
  • 4.PHP V5.0.5下载列表
  • 5.用PHP读取和编写XML DOM
  • 6.使用"函数递归"实现动态树型菜单
  • 7.PHP环境下配置在线编辑器FCKeditor
  • 8.利用PHP和AJAX创建RSS聚合器
  • 9.实例学习PHP之投票程序篇(二)
  • 10.实例学习PHP之投票程序篇(一)
专题教程
  • 大话G游 专题:手机病毒揭密
  • ARP攻击防范与解决方案 路由故障处理手册
  • Picasa中文版_Picasa教程 专题:清除流氓软件
  • Firefox专题 seo搜索引擎优化专区
  • 重装Windows必知的事情 装机之必备软件大行动
病毒专杀栏
  • 杀毒软件反被病毒杀 连"救命"都不能喊
  • 金山ARP防火墙
  • 还原卡神话破灭“机器狗”病毒来势汹汹
  • cctv经济半小时:你的手机现在安全吗?
  • 新挂马方式开始流行 ARP挂马称雄局域网
  • 木马和病毒清除的通用解法
  • IP地址不再冲突 查找ARP攻击者元凶
  • 教你几招识别和防御Web网页木马
  • 分析:封杀BT只是暂时的止痛药
  • QQ爆危险漏洞,“QQ游戏邀请大盗”邀请你玩病
关于我们 | 诚聘英才 | 联系我们 | 版权声明 | 网站大事 | 网站地图 | 意见建议
CopyRight 2005-2007 Jztop.Com 版权所有 未经许可 请勿转载