return 'hello'; } // start server $server = new HTML_AJAX_Server(); // register normal function $callback = 'foobar'; $server->registerPhpCallback($callback); // register static method $callback = array('Foo', 'bar'); $server->registerPhpCallback($callback); // register object method $foo = new Foo(); $callback = array($foo, 'bar'); $server->registerPhpCallback($callback); // handle the request if ($server->handleRequest()) { exit; } ?> <html> <head> <script type='text/javascript' src="?client=all&stub=all"></script> <script type="text/javascript" language="Javascript"> <!-- HTML_AJAX.defaultServerUrl = 'php_callback.php'; function testCallPhpCallback(cb) { HTML_AJAX.callPhpCallback(cb, showResult); }
/** * Simplest possible usage of HTML_AJAX_Server * * The server responds to ajax calls and also serves the js client libraries, so they can be used directly from the PEAR data dir * 304 not modified headers are used when server client libraries so they will be cached on the browser reducing overhead * * @category HTML * @package AJAX * @author Joshua Eichorn <*****@*****.**> * @copyright 2005 Joshua Eichorn * @license http://www.opensource.org/licenses/lgpl-license.php LGPL * @version Release: @package_version@ * @link http://pear.php.net/package/HTML_AJAX */ // include the server class include 'HTML/AJAX/Server.php'; // include the test class will be registering include 'support/test.class.php'; // create our new server $server = new HTML_AJAX_Server(); // register an instance of the class were registering $test =& new test(); $server->registerClass($test); $server->ajax->packJavaScript = true; // handle different types of requests possiblities are // ?client=all - request for all javascript client files // ?stub=classname - request for proxy stub for given class, can be combined with client but this may hurt caching unless stub=all is used // ?c=classname&m=method - an ajax call, server handles serialization and handing things off to the proper method then returning the results $server->handleRequest();
function javascript() { $server = new HTML_AJAX_Server($this->request); $server->handleRequest(); }