Problema con ejemplo de Ajax, php y mysql

pastilla666
20 de Septiembre del 2005
Buenas, tengo un problema con un ejemplo que saque de una web y es que en la funcion handleHttpResponse(), no me entra en if (http.responseText.indexOf('invalid') == -1),
por lo que no me muestra el resultado de las variables
del archivo php. Aqui les dejo el codigo completo de la pagina html. Gracias a todos

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Ciudad del Codigo Postal usando XmlHttpRequest</title>
<script language="javascript" type="text/javascript">

var url = "getCityState.php?param="; // La direccion del archivo .php y el parametro que se le pasa
var http = getHTTPObject(); // Esto crea el Objeto HTTP
var enProceso = false; //Variable para saber si existe otro proceso en ejecucion

function handleHttpResponse() {
if (http.readyState == 4) {
if (http.responseText.indexOf('invalid') == -1) {
// Use the XML DOM to unpack the city and state data

var xmlDocument = http.responseXML;
var city = xmlDocument.getElementsByTagName('city').item(0).firstChild.data;
var state = xmlDocument.getElementsByTagName('state').item(0).firstChild.data;

document.getElementById('city').value = "yo"; //city;
document.getElementById('state').value = "tu"; //state;
enProceso = false;
}
/*results = http.responseText.split(",");
document.getElementById('city').value = results[0];
document.getElementById('state').value = results[1];
enProceso = false;*/
//document.write ('da igual');
}
}

function updateCityState() {
if (!enProceso && http) {
var zipValue = document.getElementById("zip").value;
http.open ("GET", url + escape(zipValue), true);
http.onreadystatechange = handleHttpResponse;
enProceso = true;
http.send(null);
}
}

function getHTTPObject() {
var xmlhttp;
/*@cc_on
@if (@_jscript_version >= 5)
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
xmlhttp = false;
}
}
@else
xmlhttp = false;
@end @*/
if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
try {
xmlhttp = new XMLHttpRequest();
xmlhttp.overrideMimeType("text/xml");
} catch (e) {
xmlhttp = false;
}
}
return xmlhttp;
}

</script>
</head>
<body>
<form action="post">
<p>
ZIP code:
<input type="text" size="5" name="zip" id="zip" onblur="updateCityState();" />
</p>
City:
<input type="text" name="city" id="city" />
State:
<input type="text" size="2" name="state" id="state" />
</form>
</body>
</html>