Hey Rasmus, Well said! Thanks for the example to... I am sure I am going to refer to it more than a few times... The AJAX/XMLHttpRequest was more an ephiphony for me than anything else.... Since the only references I have that are related to PHP or any other server side scripting languages is (1) people on the list and my best friend, (2) the PHP manual... ;o) ..I wish I knew more developers out there... cause I tend to learn alot from working with others... and XMLHttpRequest would have came up alot sooner in my life!!! LOL I don't think I would use the AJAX library itself... but I will use the framework that it is based on... Thanks for taking the time to give us the example! Joe On 7/21/05, Rasmus Lerdorf <rasmus@xxxxxxxxxxx> wrote: > > I find a lot of this AJAX stuff a bit of a hype. Lots of people have > been using similar things long before it became "AJAX". And it really > isn't as complicated as a lot of people make it out to be. Here is a > simple example from one of my apps. First the Javascript: > > function createRequestObject() { > var ro; > var browser = navigator.appName; > if(browser == "Microsoft Internet Explorer"){ > ro = new ActiveXObject("Microsoft.XMLHTTP"); > }else{ > ro = new XMLHttpRequest(); > } > return ro; > } > > var http = createRequestObject(); > > function sndReq(action) { > http.open('get', 'rpc.php?action='+action); > http.onreadystatechange = handleResponse; > http.send(null); > } > > function handleResponse() { > if(http.readyState == 4){ > var response = http.responseText; > var update = new Array(); > > if(response.indexOf('|' != -1)) { > update = response.split('|'); > document.getElementById(update[0]).innerHTML = update[1]; > } > } > } > > This creates a request object along with a send request and handle > response function. So to actually use it, you could include this js in > your page. Then to make one of these backend requests you would tie it > to something. Like an onclick event or a straight href like this: > > <a href="javascript:sndReq('foo')">[foo]</a> > > That means that when someone clicks on that link what actually happens > is that a backend request to rpc.php?action=foo will be sent. > > In rpc.php you might have something like this: > > switch($_REQUEST['action']) { > case 'foo': > /* do something */ > echo "foo|foo done"; > break; > ... > } > > Now, look at handleResponse. It parses the "foo|foo done" string and > splits it on the '|' and uses whatever is before the '|' as the dom > element id in your page and the part after as the new innerHTML of that > element. That means if you have a div tag like this in your page: > > <div id="foo"> > </div> > > Once you click on that link, that will dynamically be changed to: > > <div id="foo"> > foo done > </div> > > That's all there is to it. Everything else is just building on top of > this. Replacing my simple response "id|text" syntax with a richer XML > format and makine the request much more complicated as well. Before you > blindly install large "AJAX" libraries, have a go at rolling your own > functionality so you know exactly how it works and you only make it as > complicated as you need. Often you don't need much more than what I > have shown here. > > Expanding this approach a bit to send multiple parameters in the > request, for example, would be really simple. Something like: > > function sndReqArg(action,arg) { > http.open('get', 'rpc.php?action='+action+'&arg='+arg); > http.onreadystatechange = handleResponse; > http.send(null); > } > > And your handleResponse can easily be expanded to do much more > interesting things than just replacing the contents of a div. > > -Rasmus > > Joe Harman wrote: > > Yeah, AJAX is really going to change the way web applications are > made... > > I've messed around with the tutorials with it... > > I've also seen it referred to as XMLHttpRequest .. I think the AJAX > class > > transforms your PHP functions into javascript... seems like the class is > > just made to for people like me who are heavy with PHP... but don't have > a > > clue about javascript... from my impression you need to be able to have > a > > tiny bit of javascript programming skill to really put it to use... do a > > search on google for XMLHttpRequest PHP Tutorial .. there is a lot there > > Good Luck.. > > Joe > > > > On 7/21/05, Paul Waring <paul@xxxxxxx> wrote: > > > >>On Thu, Jul 21, 2005 at 11:22:25AM +0530, balwant singh wrote: > >> > >>>Have anybody tried PHP & AJAX, may please share your experience. also > >>>pls. suggest good link of tutorial on this. > >> > >>I haven't tried it myself, but this looks rather good, article on how to > >>implement Google Suggest in PHP: > >> > >>http://tinyurl.com/dxs8b > >> > >>Paul > >> > >>-- > >>Rogue Tory > >>http://www.roguetory.org.uk > >> > >>-- > >>PHP General Mailing List (http://www.php.net/) > >>To unsubscribe, visit: http://www.php.net/unsub.php > >> > >> > > > > > > > > -- Joe Harman --------- Do not go where the path may lead, go instead where there is no path and leave a trail. - Ralph Waldo Emerson