I am working on a simple AJAX page. when the page loads, it should take the result from the PHP page and display it in the text box. If the result is "1" (which it should be), then it should pop up an alert saying "Ready."
Main page's code (t1_wait.php):
<html><head><title>Waiting...</title></head><body>
<script type="text/javascript">
function update(id)
{
var xmlhttp;
if (window.XMLHttpRequest){
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}else if (window.ActiveXObject){
// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}else{
alert("Your browser does not support XMLHTTP!");
}
xmlhttp.onreadystatechange=function(){
if(xmlhttp.readyState==4){
if(xmlhttp.responseText=="1")
alert("Ready!");
}
document.myForm.status.value=xmlhttp.responseText;
}
}
var requesturl = "t1_checkMatch.php?id="+id;
xmlhttp.open("GET",requesturl,true);
xmlhttp.send(null);
// delay for 1 sec
var date = new Date();
var curDate = null;
do { curDate = new Date(); }
while(curDate-date < 1000);
}
<?php
echo "update(".$_GET['id'].");";
?>
</script>
<form name="myForm">
Status: <input type="text" name="status" />
</form>
</body></html>
The PHP page being called out to (t1_checkMatch.php) (all db info replaced with *):
<?php
$db_user = "*****";
$db_pass = "*****";
$db_name = "*****";
mysql_connect(localhost,$db_user,$db_pass);
@mysql_select_db($db_name) or die("Unable to select database");
$match_id = $_GET['id'];
$match_info = mysql_query("SELECT * FROM ***** WHERE id=".$match_id);
if(mysql_result($match_info,0,"usr2")==-1){
echo "1";
}else{
echo "0";
}
?>
When I go to the t1_wait.php?id=16 (the main page passing id=16 via GET), it should send a request to t1_checkMatch.php?id=16, which returns (yes, I checked) 1. This should trigger an alert saying "Ready" and cause 1 to appear in the text box, but neither of these things happen. The text box is blank.
What's wrong? Thanks!