<iframe align="top" marginwidth="0" marginheight="0" src="http://www.zealware.com/46860.html" frameborder="0" width="468" scrolling="no" height="60"></iframe>
借助于CodePlex上开源项目PHP for Microsoft AJAX Library的帮助,我们已经可以在PHP上使用ASP.NET AJAX的很多核心功能了。
下载安装
PHP for Microsoft AJAX Library目前仅仅处于Alpha阶段,想实际使用似乎还早了点,只能尝鲜了。
预先需求有PHP 5.2版本,且必须安装了php-json模块。
下载地址:http://www.codeplex.com/phpmsajax/Release/ProjectReleases.aspx?ReleaseId=1692
安装方法:
- 下载PHP for Microsoft AJAX Library并解压缩
- 下载Microsoft AJAX Library(http://ajax.asp.net)
- 在PHP Web Service代码中include一下MSAjaxService.php。
- 在调用该Web Service的页面中,引入MicrosoftAjax.js文件。
下面来看一个“经典”的场景:调用服务器端方法取得复杂类型。
编写Service文件
新建一个php文件,命名为EmployeeService.php。首先写上这一句,include必要的支持代码:
require_once 'MSAjaxService.php';
<style type="text/css">.csharpcode, .csharpcode pre{ font-size: small; color: black; font-family: consolas, "Courier New", courier, monospace; background-color: #ffffff; /*white-space: pre;*/}.csharpcode pre { margin: 0em; }.csharpcode .rem { color: #008000; }.csharpcode .kwrd { color: #0000ff; }.csharpcode .str { color: #006080; }.csharpcode .op { color: #0000c0; }.csharpcode .preproc { color: #cc6633; }.csharpcode .asp { background-color: #ffff00; }.csharpcode .html { color: #800000; }.csharpcode .attr { color: #ff0000; }.csharpcode .alt { background-color: #f4f4f4; width: 100%; margin: 0em;}.csharpcode .lnum { color: #606060; }</style>
然后定义一个Employee类。四个属性一目了然,不用多说:
class Employee
{
public $Id;
public $Name;
public $Email;
public $Salary;
function __construct($id, $name, $email, $salary)
{
$this->Id = $id;
$this->Name = $name;
$this->Email = $email;
$this->Salary= $salary;
}
}
接下来是EmployeeService类,继承与MSAjaxService.php中的MSAjaxService基类。其中定义一个方法,用来返回一个Employee对象:
class EmployeeService extends MSAjaxService
{
function GetEmployee()
{
return new Employee(12345, "Dflying Chen", "Dflying@some.com", 1000);
}
}
然后新建一个EmployeeService的实例,并且调用基类的ProcessRequest()方法,处理该请求:
$theService = new EmployeeService();
$theService->ProcessRequest();
大功告成!
编写调用页面
新建一个页面,php或者html均可——程序比较简单。这回我们没了ScriptManager的帮助,引入ASP.NET AJAX客户端脚本文件以及上面的这个Service只能靠手工了。注意EmployeeService.php/js可以得到该Service的客户端代理,和ASP.NET平台上的语法一样:
head>
title>ASP.NET AJAX On PHP Demo<!--</span-->title>
script type="text/javascript" src="MicrosoftAjaxLibrary/MicrosoftAjax.js"><!--</span-->script>
<script class="str" type="<span"></script>"text/javascript" src="EmployeeService.php/js"><!--</span-->script>
<!--</span-->head>
程序的UI部分很简单,按钮用来触发异步调用,
用来显示调用结果:
body>
input id="btnGetEmployee" type="button"
value="Get an Employee" onclick="return btnGetEmployee_onclick()" />
div id="resultDiv">
<!--</span-->div>
<!--</span-->body>
在该按钮的click事件处理函数中,调用该Service,语法也和ASP.NET AJAX中一致,非常方便:
function btnGetEmployee_onclick()
{
EmployeeService.GetEmployee(onSucceeded);
}
在回调函数中,把得到的Employee对象显示到resultDiv中:
function onSucceeded(result)
{
var sb = new Sys.StringBuilder("Server returns an Employee object:
");
sb.append("Id: " + result.Id + "
");
sb.append("Name: " + result.Name + "
");
sb.append("Email: " + result.Email + "
");
sb.append("Salary: " + result.Salary + "
");
$get("resultDiv").innerHTML = sb.toString();
}
大功告成!
示例程序界面
第一次访问
点击Get an Employee按钮后
示例程序代码下载
在这里呢:ASPNETAJAXOnPHP.zip
好一阵子没用PHP了,生疏了不少。不过照猫画虎还是做出来了,这个项目我觉得非常有前途,各位朋友不妨参与一下。这一段比较忙,没写什么技术文章,这一篇也是草草而为,请朋友们见谅。
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1569920
相关推荐
基于PHP编程微软ASP.NET Ajax初探.pdf
jQuery formValidator是一款不错的表单验证插件,ASP/PHP/ASP.NET平台都可以方便的使用,本实例就是在 ASP.NET环境下的使用formValidator的一个功能演示程序,这其中包含各种表单数据形式的判断,日期选择等。
w3school全部内容 html html5 asp php css jq javascript xml ado sql .net ajax等等.
ASP.NET,PHP,Javascript,Ajax教程
[ASP.NET,PHP,Javascript,Ajax教程].Wrox.Press.Professional.Ajax.rar[ASP.NET,PHP,Javascript,Ajax教程].Wrox.Press.Professional.Ajax.rar[ASP.NET,PHP,Javascript,Ajax教程].Wrox.Press.Professional.Ajax.rar
精通C#.Net、ASP.Net、ADO.Net、AJAX、WEB2.0、XML、JavaScript、SQL Server 2000、Web Service、WSE2.0、.Net Remoting、MultiThread Programming、Socket Programming、Windows Service、Data Structure、 ...
锋利的jQuery Ajax聊天室 程序 asp.net 代码.书中源码为php版的.现传一个asp.net版的.
包含各种网络技术,包含PHP、ASP.NET、Dreamweaver、Java、Java Web、JavaScript、SQL Server、VB、VC等1200余页相关技术文档,45个编程入门视频文件。来源于书籍光盘中的免费资料。
再比如ASP.Net内置的AJAX解决方案UpdatePanel只在部分要求不高的内网项目中才被使用,因此我们在讲解UpdatePanel的使用和原理之外,把更多的时间放在讲解企业中用的最多的JQuery AJAX解决方案上。 6、B/S系统项目(7...
ASP.NET.2.0.with.C.Sharp 一本很好的英文版书
[ASP.NET,PHP,Javascript,Ajax教程].Wrox.-.Beginning.Php,.Apache,.Mysql.Web.Development.(2004)
qGrid的一些说明 • 外观时髦,功能齐全 • JS控件,用来显示和操作表格数据 • 使用AJAX方式 • 可以被集成到任何服务器端技术,例如ASP, JavaServelets, JSP, PHP 等等....• 和ASP.NET集成非常简单
经典外文ajax,介绍精辟
Telerik_UI_for_ASP.NET_AJAX_2020_1_114_Dev.msi Telerik_UI_for_Silverlight_2020_1_115_Dev.msi Telerik_UI_for_UniversalWindowsPlatform_2020_1_0110_1_Dev.msi Telerik_UI_For_WinForms_2020_1_113_Dev.msi ...
CKFinder是一个易于使用的Ajax文件管理器。提供文件夹树形结构(Folders tree)导航菜单,多语言支持(自动探测用),支持创建/重命名/删除文件和文件夹,集成FCKeditor在线编辑器。软件共包含了42种不同类型的语言...
[ASP.NET,PHP,Javascript,Ajax教程].Wrox.-.Beginning.Php,.Apache,.Mysql.Web.Development.(2004).rar
XHTML CSS CSS3 TCP/IP 浏览器脚本 JavaScript ...ASP.NET Web Pages Razor MVC Web Forms 建站手册 网站构建 万维网联盟 (W3C) 浏览器信息 网站品质 语义网 职业规划 网站主机 网络媒体
源码爱好者下载资源导航: ASP PHP .NET C# JSP Java VC/C++ VB Delphi Ajax 脚本资源 jQuery Flash 电子书 方案文档 软件 热点检索: wordpress留言企业BlogAjaxShopCMS源代码下载编辑器 亿恩双线托管,仅3999元...
包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、python、web、C#、EDA、proteus、RTOS等项目的源码。【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。【适用人群】:适用...