27.10.2015 Views

AJAX and PHP

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Server-Side Techniques with <strong>PHP</strong> <strong>and</strong> MySQL<br />

}<br />

// if the response is long enough, or if it is void, we assume we just<br />

// received a server-side error report<br />

if(response.length > 5 || response.length == 0)<br />

throw(response.length == 0 ? "Server error" : response);<br />

// obtain a reference to the element on the page<br />

myDiv = document.getElementById("myDivElement");<br />

// display the HTML output<br />

if (response >= minServerBufferLevel)<br />

{<br />

// display new message to user<br />

myDiv.innerHTML += "Server buffer level is at " + response + "%, "<br />

+ "starting to retrieve new numbers. ";<br />

// increases counter to start retrieving new numbers<br />

requestsCounter++;<br />

// reinitiate sequence<br />

setTimeout("process();", updateInterval * 1000);<br />

}<br />

else<br />

{<br />

// display new message to user<br />

myDiv.innerHTML += "Server buffer is too low (" + response + "%), "<br />

+ "will check again in " + updateIntervalIfServerBusy<br />

+ " seconds. ";<br />

// reinitiate sequence<br />

setTimeout("process();", updateIntervalIfServerBusy * 1000);<br />

}<br />

// function called when the state of the HTTP request changes<br />

function h<strong>and</strong>leGettingNumber()<br />

{<br />

// when readyState is 4, we are ready to read the server response<br />

if (xmlHttp.readyState == 4)<br />

{<br />

// continue only if HTTP status is "OK"<br />

if (xmlHttp.status == 200)<br />

{<br />

try<br />

{<br />

// do something with the response from the server<br />

getNumber();<br />

}<br />

catch(e)<br />

{<br />

// display error message<br />

alert("Error receiving new number:\n" + e.toString());<br />

}<br />

}<br />

else<br />

{<br />

// display status message<br />

alert("Error receiving new number:\n" + xmlHttp.statusText);<br />

}<br />

}<br />

}<br />

// h<strong>and</strong>les the response received from the server<br />

function getNumber()<br />

{<br />

// retrieve the server's response<br />

var response = xmlHttp.responseText;<br />

// if the response is long enough, or if it is void, we assume we just<br />

// received a server-side error report<br />

if(response.length > 5 || response.length == 0)<br />

96<br />

www.it-ebooks.info

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!