SlideShare ist ein Scribd-Unternehmen logo
1 von 19
 
AJAX: Ajax is a way of developing Web applications that combines: * XHTML and CSS standards based presentation * Interaction with the page through the DOM * Data interchange with XML and XSLT * Asynchronous data retrieval wit XMLHttpRequest * JavaScript to tie it all together
What is XMLHttpRequest (XHR)? XMLHttpRequest (XHR) is an API available in web browser scripting languages such as JavaScript. It is used to send HTTP or HTTPS requests directly to a web server and load the server response data directly back into the script.The data might be received from the server as XML textor as plain text
ASYNCHRONOUS This is the key. In standard Web applications, the interaction between the customer and the server is  synchronous . This means that one has to happen after the other. If a customer clicks a link, the request is sent to the server, which then sends the results back. With Ajax, the JavaScript that is loaded when the page loads handles most of the basic tasks such as data validation and manipulation, as well as display rendering the Ajax engine handles without a trip to the server. At the same time that it is making display changes for the customer, it is sending data back and forth to the server. But the data transfer is not dependent upon actions of the customer.
How does it work?
Creating XMLHttpRequest Objects: Most of the modern browsers have the XMLHttpRequest support. However, in Internet Explorer browsers till IE7 XMLHttpRequest was offered only using ActiveX object. The later versions of Internet Explorer would support XMLHttpRequest. The following function would create an XMLHttpRequest Object in most of the Browsers function createXMLHttpRequest() { try { return new XMLHttpRequest(); } catch(e) {} try { return new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) {} alert("Sorry, the XMLHttpRequest is not supported"); return null; } var xhrObj = createXMLHttpRequest();
Request  SENDING REQUEST: To send a request to a server, we use the open() and send() methods of the XMLHttpRequest object: xmlhttp.open("GET","ajax_info.txt",true); xmlhttp.send(); GET Requests: xmlhttp.open("GET","demo_get.asp",true); xmlhttp.send(); POST Requests: xmlhttp.open("POST","demo_post.asp",true); xmlhttp.send();
Making a request: 1.  Get whatever data you need from the Web  form. 2. Build the URL to connect to. 3. Open a connection to the server. 4. Set up a function for the server to run when it's done. 5. Send the request.
SIMPLE EXAMPLE: Inorder to make a text box ,and getting values thereby sending request to the server ,we need to make a text box and make the javascript with the coding and also calling functions with in the server ,by return sending the values back to the webpage,the javascript is as follows:
STEP 1 :TEST <html> <head> <title>AJAX Hello World Test Page</title> <link rel=&quot;stylesheet&quot; href=&quot;http://www.EXAMPLE.com&quot; type=&quot;text/css&quot; title=&quot;default&quot; media=&quot;screen&quot;> <script type=&quot;text/javascript&quot; src=&quot;ajax.js&quot;></script> </head> <body> <p> <input id=&quot;testmsg&quot; type=&quot;text&quot; value=&quot;Hello AJAX&quot;> <button onclick=&quot;talktoServer()&quot;>Say Hello to Server</button> <div id=&quot;msg_display&quot; style=&quot;{ background: yellow; font-weight: bold; }&quot;>  The data from the server will go here  ...</div> </body> </html>
STEP 2: POST function talktoServer(){ var req = newXMLHttpRequest(); //register the callback handler function var callbackHandler = getReadyStateHandler(req, updateMsgOnBrowser); req.onreadystatechange = callbackHandler; req.open(&quot;POST&quot;, &quot;servertime.php&quot;, true); req.setRequestHeader(&quot;Content-Type&quot;, &quot;application/x-www-form-urlencoded&quot;); //get the value from the text input element and send it to server var testmsg = document.getElementById(&quot;testmsg&quot;); var msg_value = testmsg.value; req.send(&quot;msg=&quot;+msg_value); }
NOTE: If browser is mozilla or safari or opera Then it creates new  xmlhttprequest Otherwise it is Internet explorer Then it creates new  activexoject Else ,browser does not support  xmlhttprequest
Step 3: response from server // This is the callback functions that gets called // for the response from the server with the XML data var lastPing = 0; function updateMsgOnBrowser(testXML) { var test = testXML.getElementsByTagName(&quot;test&quot;)[0]; var message = testXML.getElementsByTagName(&quot;message&quot;)[0]; var ip = testXML.getElementsByTagName(&quot;ip&quot;)[0]; var timestamp = test.getAttribute(&quot;timestamp&quot;); if (timestamp > lastPing) { astPing = timestamp; var ip_value = ip.firstChild.nodeValue; var message_value = message.firstChild.nodeValue; var msg_display = document.getElementById(&quot;msg_display&quot;); msg_display.innerHTML = &quot; Server got the  message: amp;quot;&quot; +  message_value + &quot;amp;quot;&quot; + &quot;<br>Server IP: &quot;+ ip_value +  &quot; Server Timestamp: amp;quot;&quot;+ timestamp + &quot;amp;quot;&quot; ; } }
For callback functions //the following two functions are helper infrastructure to  //craete a XMLHTTPRequest and register a listner callback function function newXMLHttpRequest() { var xmlreq = false; if (window.XMLHttpRequest) { xmlreq = new XMLHttpRequest(); } else if (window.ActiveXObject) { // Try ActiveX try {  xmlreq = new ActiveXObject(&quot;Msxml2.XMLHTTP&quot;); } catch (e1) {  // first method failed  try { xmlreq = new ActiveXObject(&quot;Microsoft.XMLHTTP&quot;); } catch (e2) {   // both methods failed  } }}return xmlreq;}
function getReadyStateHandler(req, responseXmlHandler) { return function () { if (req.readyState == 4) { if (req.status == 200) { responseXmlHandler(req.responseXML); } else { var hellomsg = document.getElementById(&quot;hellomsg&quot;); hellomsg.innerHTML = &quot;ERROR: &quot;+ req.status; } } } }
<? header('Content-Type: application/xml'); $msg = htmlentities(trim(stripslashes($_REQUEST['msg']))); $ts = time(); $ip = gethostbyname(&quot;example.com&quot;);  print (&quot;<?xml version=amp;quot;1.0amp;quot;?>&quot;); print (&quot;<test timestamp=amp;quot;$tsamp;quot;>&quot;); print (&quot;<ip>$ip</ip>&quot;); print (&quot;<message>$msg</message>&quot;); print (&quot;</test>&quot;); ?> Thus the data request sent from the webpage to server and after certain schematic conditions,the data is back on the [as said asynchronous] it displayed without affecting the process Step 4:Data back to the weboage
RESPONSE HANDLING: There are two types of response *response text and response xml *many other forms like json,html etc[ these may come under one of the those two categories]
USAGE IN BLOGS: 1.We need to check whether the client can actually handle this or we need to import one [just the same of creating xml request] 2.we can link in the database as we needed ,example lets take calender,it need to be updated from a site and then that particular data need to be used in here. AJAX  is combination of two AJAX =DOM +XMLhttprequest
DRAWBACKS: 1.AJAX are mainly suitable for thier dynamic pages,so its harder to develop them in static web pages 2.Dynamically created pages will not go on with the brower's page ,so when the user click on the back button,they might not go to the previous page but to a very first page 3.Dynamic webpages will make bookmarking difficult for the uers 4.Many web crawlers will not allow java script,so inorder to prevent it,alternate method must be induced in order to index them using the search engines 5.AJAX powered webpages generate lot of user requests ,taking longer access rate in server to respong the user

Weitere ähnliche Inhalte

Was ist angesagt? (19)

ajax_pdf
ajax_pdfajax_pdf
ajax_pdf
 
Ajax Ppt
Ajax PptAjax Ppt
Ajax Ppt
 
AJAX
AJAXAJAX
AJAX
 
Web II - 02 - How ASP.NET Works
Web II - 02 - How ASP.NET WorksWeb II - 02 - How ASP.NET Works
Web II - 02 - How ASP.NET Works
 
jQuery Ajax
jQuery AjaxjQuery Ajax
jQuery Ajax
 
Introduction to ajax
Introduction to ajaxIntroduction to ajax
Introduction to ajax
 
Ajax
AjaxAjax
Ajax
 
Ajax and PHP
Ajax and PHPAjax and PHP
Ajax and PHP
 
1 ppt-ajax with-j_query
1 ppt-ajax with-j_query1 ppt-ajax with-j_query
1 ppt-ajax with-j_query
 
Ajax presentation
Ajax presentationAjax presentation
Ajax presentation
 
Introduction to ajax
Introduction to ajaxIntroduction to ajax
Introduction to ajax
 
Copy of ajax tutorial
Copy of ajax tutorialCopy of ajax tutorial
Copy of ajax tutorial
 
Ajax Presentation
Ajax PresentationAjax Presentation
Ajax Presentation
 
Ajax Introduction Presentation
Ajax   Introduction   PresentationAjax   Introduction   Presentation
Ajax Introduction Presentation
 
RicoAjaxEngine
RicoAjaxEngineRicoAjaxEngine
RicoAjaxEngine
 
Ajax
AjaxAjax
Ajax
 
&lt;img src="../i/r_14.png" />
&lt;img src="../i/r_14.png" />&lt;img src="../i/r_14.png" />
&lt;img src="../i/r_14.png" />
 
Ajax
AjaxAjax
Ajax
 
Vb.Net Web Forms
Vb.Net  Web FormsVb.Net  Web Forms
Vb.Net Web Forms
 

Ähnlich wie Ajax (20)

Ajax presentation
Ajax presentationAjax presentation
Ajax presentation
 
ajax_pdf
ajax_pdfajax_pdf
ajax_pdf
 
Ajax
AjaxAjax
Ajax
 
AJAX
AJAXAJAX
AJAX
 
M Ramya
M RamyaM Ramya
M Ramya
 
Ajax
AjaxAjax
Ajax
 
Asynchronous JavaScript & XML (AJAX)
Asynchronous JavaScript & XML (AJAX)Asynchronous JavaScript & XML (AJAX)
Asynchronous JavaScript & XML (AJAX)
 
Ajax Introduction
Ajax IntroductionAjax Introduction
Ajax Introduction
 
Ajax
AjaxAjax
Ajax
 
Unit-5.pptx
Unit-5.pptxUnit-5.pptx
Unit-5.pptx
 
AJAX
AJAXAJAX
AJAX
 
AJAX
AJAXAJAX
AJAX
 
Core Java tutorial at Unit Nexus
Core Java tutorial at Unit NexusCore Java tutorial at Unit Nexus
Core Java tutorial at Unit Nexus
 
AJAX Workshop Notes
AJAX Workshop NotesAJAX Workshop Notes
AJAX Workshop Notes
 
AJAX.pptx
AJAX.pptxAJAX.pptx
AJAX.pptx
 
Ajax
AjaxAjax
Ajax
 
Ajax
AjaxAjax
Ajax
 
Ajax
AjaxAjax
Ajax
 
Ajax
AjaxAjax
Ajax
 
Ajax tutorial by bally chohan
Ajax tutorial by bally chohanAjax tutorial by bally chohan
Ajax tutorial by bally chohan
 

Mehr von Rathan Raj

Mehr von Rathan Raj (9)

Database Normalization
Database NormalizationDatabase Normalization
Database Normalization
 
Photochemical smog
Photochemical smogPhotochemical smog
Photochemical smog
 
Web20
Web20Web20
Web20
 
Apache
ApacheApache
Apache
 
Css
CssCss
Css
 
Html
HtmlHtml
Html
 
Linux
LinuxLinux
Linux
 
Mysql
MysqlMysql
Mysql
 
Php
PhpPhp
Php
 

Kürzlich hochgeladen

Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfciinovamais
 
Disha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfDisha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfchloefrazer622
 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Celine George
 
General AI for Medical Educators April 2024
General AI for Medical Educators April 2024General AI for Medical Educators April 2024
General AI for Medical Educators April 2024Janet Corral
 
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...PsychoTech Services
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...christianmathematics
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpinRaunakKeshri1
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAssociation for Project Management
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfsanyamsingh5019
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfchloefrazer622
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfAdmir Softic
 
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...Sapna Thakur
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDThiyagu K
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxheathfieldcps1
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxVishalSingh1417
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdfQucHHunhnh
 
fourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writingfourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writingTeacherCyreneCayanan
 

Kürzlich hochgeladen (20)

Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
Disha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfDisha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdf
 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17
 
General AI for Medical Educators April 2024
General AI for Medical Educators April 2024General AI for Medical Educators April 2024
General AI for Medical Educators April 2024
 
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpin
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across Sectors
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdf
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdf
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
fourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writingfourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writing
 

Ajax

  • 1.  
  • 2. AJAX: Ajax is a way of developing Web applications that combines: * XHTML and CSS standards based presentation * Interaction with the page through the DOM * Data interchange with XML and XSLT * Asynchronous data retrieval wit XMLHttpRequest * JavaScript to tie it all together
  • 3. What is XMLHttpRequest (XHR)? XMLHttpRequest (XHR) is an API available in web browser scripting languages such as JavaScript. It is used to send HTTP or HTTPS requests directly to a web server and load the server response data directly back into the script.The data might be received from the server as XML textor as plain text
  • 4. ASYNCHRONOUS This is the key. In standard Web applications, the interaction between the customer and the server is synchronous . This means that one has to happen after the other. If a customer clicks a link, the request is sent to the server, which then sends the results back. With Ajax, the JavaScript that is loaded when the page loads handles most of the basic tasks such as data validation and manipulation, as well as display rendering the Ajax engine handles without a trip to the server. At the same time that it is making display changes for the customer, it is sending data back and forth to the server. But the data transfer is not dependent upon actions of the customer.
  • 5. How does it work?
  • 6. Creating XMLHttpRequest Objects: Most of the modern browsers have the XMLHttpRequest support. However, in Internet Explorer browsers till IE7 XMLHttpRequest was offered only using ActiveX object. The later versions of Internet Explorer would support XMLHttpRequest. The following function would create an XMLHttpRequest Object in most of the Browsers function createXMLHttpRequest() { try { return new XMLHttpRequest(); } catch(e) {} try { return new ActiveXObject(&quot;Msxml2.XMLHTTP&quot;); } catch (e) {} alert(&quot;Sorry, the XMLHttpRequest is not supported&quot;); return null; } var xhrObj = createXMLHttpRequest();
  • 7. Request SENDING REQUEST: To send a request to a server, we use the open() and send() methods of the XMLHttpRequest object: xmlhttp.open(&quot;GET&quot;,&quot;ajax_info.txt&quot;,true); xmlhttp.send(); GET Requests: xmlhttp.open(&quot;GET&quot;,&quot;demo_get.asp&quot;,true); xmlhttp.send(); POST Requests: xmlhttp.open(&quot;POST&quot;,&quot;demo_post.asp&quot;,true); xmlhttp.send();
  • 8. Making a request: 1. Get whatever data you need from the Web form. 2. Build the URL to connect to. 3. Open a connection to the server. 4. Set up a function for the server to run when it's done. 5. Send the request.
  • 9. SIMPLE EXAMPLE: Inorder to make a text box ,and getting values thereby sending request to the server ,we need to make a text box and make the javascript with the coding and also calling functions with in the server ,by return sending the values back to the webpage,the javascript is as follows:
  • 10. STEP 1 :TEST <html> <head> <title>AJAX Hello World Test Page</title> <link rel=&quot;stylesheet&quot; href=&quot;http://www.EXAMPLE.com&quot; type=&quot;text/css&quot; title=&quot;default&quot; media=&quot;screen&quot;> <script type=&quot;text/javascript&quot; src=&quot;ajax.js&quot;></script> </head> <body> <p> <input id=&quot;testmsg&quot; type=&quot;text&quot; value=&quot;Hello AJAX&quot;> <button onclick=&quot;talktoServer()&quot;>Say Hello to Server</button> <div id=&quot;msg_display&quot; style=&quot;{ background: yellow; font-weight: bold; }&quot;> The data from the server will go here ...</div> </body> </html>
  • 11. STEP 2: POST function talktoServer(){ var req = newXMLHttpRequest(); //register the callback handler function var callbackHandler = getReadyStateHandler(req, updateMsgOnBrowser); req.onreadystatechange = callbackHandler; req.open(&quot;POST&quot;, &quot;servertime.php&quot;, true); req.setRequestHeader(&quot;Content-Type&quot;, &quot;application/x-www-form-urlencoded&quot;); //get the value from the text input element and send it to server var testmsg = document.getElementById(&quot;testmsg&quot;); var msg_value = testmsg.value; req.send(&quot;msg=&quot;+msg_value); }
  • 12. NOTE: If browser is mozilla or safari or opera Then it creates new xmlhttprequest Otherwise it is Internet explorer Then it creates new activexoject Else ,browser does not support xmlhttprequest
  • 13. Step 3: response from server // This is the callback functions that gets called // for the response from the server with the XML data var lastPing = 0; function updateMsgOnBrowser(testXML) { var test = testXML.getElementsByTagName(&quot;test&quot;)[0]; var message = testXML.getElementsByTagName(&quot;message&quot;)[0]; var ip = testXML.getElementsByTagName(&quot;ip&quot;)[0]; var timestamp = test.getAttribute(&quot;timestamp&quot;); if (timestamp > lastPing) { astPing = timestamp; var ip_value = ip.firstChild.nodeValue; var message_value = message.firstChild.nodeValue; var msg_display = document.getElementById(&quot;msg_display&quot;); msg_display.innerHTML = &quot; Server got the message: amp;quot;&quot; + message_value + &quot;amp;quot;&quot; + &quot;<br>Server IP: &quot;+ ip_value + &quot; Server Timestamp: amp;quot;&quot;+ timestamp + &quot;amp;quot;&quot; ; } }
  • 14. For callback functions //the following two functions are helper infrastructure to //craete a XMLHTTPRequest and register a listner callback function function newXMLHttpRequest() { var xmlreq = false; if (window.XMLHttpRequest) { xmlreq = new XMLHttpRequest(); } else if (window.ActiveXObject) { // Try ActiveX try { xmlreq = new ActiveXObject(&quot;Msxml2.XMLHTTP&quot;); } catch (e1) { // first method failed try { xmlreq = new ActiveXObject(&quot;Microsoft.XMLHTTP&quot;); } catch (e2) { // both methods failed } }}return xmlreq;}
  • 15. function getReadyStateHandler(req, responseXmlHandler) { return function () { if (req.readyState == 4) { if (req.status == 200) { responseXmlHandler(req.responseXML); } else { var hellomsg = document.getElementById(&quot;hellomsg&quot;); hellomsg.innerHTML = &quot;ERROR: &quot;+ req.status; } } } }
  • 16. <? header('Content-Type: application/xml'); $msg = htmlentities(trim(stripslashes($_REQUEST['msg']))); $ts = time(); $ip = gethostbyname(&quot;example.com&quot;); print (&quot;<?xml version=amp;quot;1.0amp;quot;?>&quot;); print (&quot;<test timestamp=amp;quot;$tsamp;quot;>&quot;); print (&quot;<ip>$ip</ip>&quot;); print (&quot;<message>$msg</message>&quot;); print (&quot;</test>&quot;); ?> Thus the data request sent from the webpage to server and after certain schematic conditions,the data is back on the [as said asynchronous] it displayed without affecting the process Step 4:Data back to the weboage
  • 17. RESPONSE HANDLING: There are two types of response *response text and response xml *many other forms like json,html etc[ these may come under one of the those two categories]
  • 18. USAGE IN BLOGS: 1.We need to check whether the client can actually handle this or we need to import one [just the same of creating xml request] 2.we can link in the database as we needed ,example lets take calender,it need to be updated from a site and then that particular data need to be used in here. AJAX is combination of two AJAX =DOM +XMLhttprequest
  • 19. DRAWBACKS: 1.AJAX are mainly suitable for thier dynamic pages,so its harder to develop them in static web pages 2.Dynamically created pages will not go on with the brower's page ,so when the user click on the back button,they might not go to the previous page but to a very first page 3.Dynamic webpages will make bookmarking difficult for the uers 4.Many web crawlers will not allow java script,so inorder to prevent it,alternate method must be induced in order to index them using the search engines 5.AJAX powered webpages generate lot of user requests ,taking longer access rate in server to respong the user