Foros del Web » Programando para Internet » Javascript » Frameworks JS »

error al recuperar string

Estas en el tema de error al recuperar string en el foro de Frameworks JS en Foros del Web. hola a todos, tengo el siguiente problema. Cuando yo intento recuperar del servidor(pagina.php) un numero, lo recupero bien, ahora cuando quiero recuperar un string , ...
  #1 (permalink)  
Antiguo 03/10/2008, 19:23
 
Fecha de Ingreso: diciembre-2007
Mensajes: 274
Antigüedad: 17 años
Puntos: 0
error al recuperar string

hola a todos,

tengo el siguiente problema.

Cuando yo intento recuperar del servidor(pagina.php) un numero, lo recupero bien, ahora cuando quiero recuperar un string , me devuelve nulo.

Codigo

<?php
header('Content-Type: text/xml');
include_once("db.php");
$funcion=$_GET["funcion"];
if ($funcion == "carpeta")
{
$carpeta=$_GET["carpeta"];
$db=db_connect();
$query = "select * from usuario where user='".$carpeta."'";
$result = mysql_query($query, $db) or die (mysql_error());
if (mysql_num_rows($result)>0)
{
$result="<img src='carita1.bmp' />";
}
else
{
$result=1;
}
echo "<?xml version=\"1.0\"?><resultado>".$result."</resultado>";

?>

Si entro a la pagina yo por el link, la pagina xml es correcta, me muestra los valores y todo, pero cuando lo recupero con javascript me devuelve nulo, aca el codigo javascript

Código HTML:
function pedir_info(myurl,id,tag) {
  //  var myurl = 'comprobar_usuario.php';
  myRand = parseInt(Math.random()*999999999999999);
  var modurl = myurl+"&rand="+myRand;
  http.open("GET", modurl, true);
  http.onreadystatechange = onredyestatechange = function() { comprobarExistencia(id,tag) };;
  http.send(null);
}

function comprobarExistencia(id,tag) {//1
   
   if (http.readyState == 4) {//2
    if(http.status == 200) {//3
	    var result = http.responseXML.getElementsByTagName(tag)[0];
		var result= result.childNodes[0].nodeValue;
		alert(result);
	   document.getElementById(id).innerHTML = result;
     }//3
	  else {//4
		alert("Ha ocurrido un error: " + miPeticion.statusText);
        }//4
    } //2
	else {//5     // si readyState ha cambiado
                 // pero readyState <> 4
           // aca puedo agregar argo mientras espero el resultado document.getElementById('esperando').innerHTML = '<img src="anim.gif">'+a;
    }//5

}//1
muchas gracias
  #2 (permalink)  
Antiguo 04/10/2008, 01:04
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 8 meses
Puntos: 1284
Respuesta: error al recuperar string

Hola:

Estás creando un documento XML mal formado o parece bien formado pero en vez de buscar el nodeValue, debes buscar el firstChild, o getElementsByTadName("img")[0]... y detrás el attributes["src"] para obtener la url de la imagen que quieres mostrar...

Creo que si vas a poner esos 2 valores, deberías averiguar que tipo de nodo es (nodeType) el nodo obtenido con esta instrucción:

Código:
var result = http.responseXML.getElementsByTagName(tag)[0].firstChild
Más o menos así:

if (result.nodeType == 1) mostrarImagen(result.attributes["src"])// es un nodo tag... será nodeName == "img"
else mostrarTexto (result.nodeValue);// podemos obtener el nodeValue

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:05.