Go4Expert

Go4Expert (http://www.go4expert.com/)
-   JavaScript and AJAX (http://www.go4expert.com/articles/javascript-tutorials/)
-   -   Asynchronous Javascript and XML aka AJAX (http://www.go4expert.com/articles/asynchronous-javascript-xml-aka-ajax-t2566/)

vishal sharma 16Jan2007 12:25

Asynchronous Javascript and XML aka AJAX
 

A look at how AJAX works



This tutorial will show you how ajax works and how to use it from a web developers standpoint. Ever wonder how things like G-Talk work? they don't reload the page or use Iframes and yet they always appear to have the data thats coming in instantly. it acomplishes this using ajax. Ajax is not a language of its own, so if you know javascript and HTML, your all set.

This is where it all comes from, the ability to send and recieve data without reloading the page. First, you need to create an object though,
Code:

Firefox: var xmlhttp=new XMLHttpRequest;
IE: xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");

The best way I have found to get them both in one command is:
Code:

xmlhttp=window.XMLHttpRequest?new XMLHttpRequest():new ActiveXObject("Microsoft.XMLHTTP");
Now you need to create a callable function as well as an onreadystatechange handler. This part is simple. Here's an example:
Code:

function getnamedata()
{
        xmlhttp.open("POST","file.php");
        xmlhttp.onreadystatechange=handler;
        xmlhttp.send("name=random&id=42");
}

function handler()
{
        if(xmlhttp.readyState==4)
        {
                alert("Name Info: "+xmlhttp.responseText;
                xmlhttp.close;
        }
}

The xmlhttp.open call opens a connection to the page, the first parameter is POST or GET depending on the method you want to use. The second parameter is the filename of the page relative to the current directory. Line 2 tells it that whenever it goes through a statechange to call a certian function, the handler.

xmlhttp.send passes variables to the script that you are calling, you'll notice that it passes them in almost exactly the same way as a url bar minus the '?'.

The handler function gets called every time that xmlhttp changes state. We have the if statement so that it will only execute when readyState==4 (4 is completed). The last statement of course retreives the data from the xmlhttp object. If you are getting most types of data you should use the responseText property, for actual XML data use the responseXML property. The last statement just closes the socket for later use.

Using this as a basic model you can make an entire website live if you want to, or just find something fun to do with it.

rose123 14Jul2008 10:31

Re: Asynchronous Javascript and XML aka AJAX
 
hi...

how to access the posted data in file.php??

i tried like this
<?php

$name=$_POST["name"];

echo $name;

?>

but no luck...

evolu 3Jul2009 11:32

Re: Asynchronous Javascript and XML aka AJAX
 
hi i jst want to know can we redirect the user to internet or intranet page based on their internet connectivity

proced in detail

i have two type of website hosted in same server one is for internet user and other is for intranet user i have to take the user to internet page if he is accessing the site with internet connection r else he have to go to intranet site (people who dosen't have internet connection )


All times are GMT +5.5. The time now is 11:26.