Ver Mensaje Individual
  #1 (permalink)  
Antiguo 09/03/2006, 06:48
clinisbut
 
Fecha de Ingreso: diciembre-2004
Mensajes: 278
Antigüedad: 19 años, 5 meses
Puntos: 0
Puedo hacer esto?

Quiero ver si un registro existe en la base de datos (para verificar),


Código:
function existe(){
http.open('GET', url+'existeDepartamento&id='+campo.value, true);
http.onreadystatechange=function() 
{	if(http.readyState==4)
	{	resultado=http.responseText;
	}
}
http.send(null);		
alert(resultado);
}
Mi idea es recibir el resultado que me da el php al que llamo y dependiendo de si es 1 o 0 que la funcion existe() devuelva true o false.
El problema que veo que tengo que no puedo sacar la variable "resultado" de la funcion que la contiene (al menos no se hacerlo).
COmo deberia abordar el tema?



Por otra parte esto otro me funciona en mozilla, pero en explorer no y es raro xq probando veo que el tema podria estar en el archivo php donde saco los datos... y esto no depende del navegador sino del servidor...
Aqui el trozo javascript:
Código HTML:
http.open('GET', url+'getDepartamentos', true);
http.onreadystatechange = getDepartamentoHttp;
http.send(null);

function getDepartamentoHttp()
{	if (http.readyState == 4) 
	{  var xmlDocument = http.responseXML;
  	    alert(xmlDocument.getElementsByTagName('lista').length);
	}
}
En mozilla me devuelve 1 (porque 'lista' es el elemento raiz del documento xml que obtengo).
En explorer me devuelve 0...

La parte del servidor es esta otra (dentro de un switch):
Código PHP:
case 'getDepartamentos':    
                $departamentos=$model->getDepartamentos();
                $numDeps=count($departamentos);
                $xml="<?xml version="1.0\" encoding=\"iso-8859-1\" standalone=\"yes\"?>
                <lista>"
;
                for(
$i=0;$i<$numDeps;$i++)
                {    
$xml.="<departamento>";
                    
$xml.="<id>".$departamentos[$i]['departamento_id']."</id>";
                    
$xml.="<nombre>".$departamentos[$i]['departamento_nombre']."</nombre>";
                    
$xml.="</departamento>";
                }
                
$xml.="</lista>";
                
header('Content-Type: text/xml'); 
                echo 
$xml;
                die();        
                break;
$model->getDepartamentos() es un metodo de un objeto que me devuelve registros de una base de datos.

EL caso esque no obtengo estos registros desde Internet Explorer y es curioso la verdad...

Última edición por clinisbut; 09/03/2006 a las 07:47