Ver Mensaje Individual
  #16 (permalink)  
Antiguo 04/11/2006, 10:57
zsamer
 
Fecha de Ingreso: noviembre-2003
Mensajes: 798
Antigüedad: 21 años
Puntos: 8
Cita:
Iniciado por zaqpz Ver Mensaje
SQL:
Código:
CREATE TABLE `ejemplo` (
  `id` int(2) NOT NULL default '0',
  `nombre` varchar(255) NOT NULL default '',
  `apellido` varchar(255) NOT NULL default ''
) TYPE=MyISAM;

INSERT INTO `ejemplo` VALUES (100, 'Juan', 'Perez');
INSERT INTO `ejemplo` VALUES (200, 'Jorge', 'Lopez');
ej1.php
Código PHP:
<html>
<
head>
<
script language="javascript" type="text/javascript">
function 
nuevoAjax()

    var 
xmlhttp=false
    try 
    { 
        
xmlhttp=new ActiveXObject("Msxml2.XMLHTTP"); 
    }
    catch(
e)
    { 
        try
        { 
            
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
        } 
        catch(
E) { xmlhttp=false; }
    }
    if (!
xmlhttp && typeof XMLHttpRequest!='undefined') { xmlhttp=new XMLHttpRequest(); } 

    return 
xmlhttp
}

function 
traerDatos()
{
    var 
cod=document.getElementById("cod").value;
    var 
campo1=document.getElementById("c1");
    var 
campo2=document.getElementById("c2");
        
    var 
ajax=nuevoAjax();
    
ajax.open("POST""ej2.php"true);
    
ajax.setRequestHeader("Content-Type""application/x-www-form-urlencoded");
    
ajax.send("v="+cod);
            
    
ajax.onreadystatechange=function()
    {
        if (
ajax.readyState==4)
        {
            var 
respuesta=ajax.responseXML;
            
campo1.value=respuesta.getElementsByTagName("nombre")[0].childNodes[0].data;
            
campo2.value=respuesta.getElementsByTagName("apellido")[0].childNodes[0].data;
        }
    }
}
</script>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Ejemplo</title>
</head>
<body>
<input type="text" id="cod"> Codigo <input type="button" id="b1" value="Traer datos" onClick="traerDatos();"><br><br>
<input type="text" id="c1"> Nombre<br><br>
<input type="text" id="c2"> Apellido
</body>
</html> 
ej2.php
Código PHP:
<?php
$v
=$_POST["v"];

$conexion=mysql_connect("localhost""root""");
mysql_select_db("ajax"$conexion);

$resultado=mysql_query("SELECT nombre, apellido FROM ejemplo WHERE id='$v'");
$registro=mysql_fetch_row($resultado);

$xml="<?xml version='1.0' encoding='ISO-8859-1'?>";
$xml.="<datos>";
$xml.="<nombre><![CDATA[$registro[0]]]></nombre>";
$xml.="<apellido><![CDATA[$registro[1]]]></apellido>";
$xml.="</datos>";
header("Content-type: text/xml");
echo 
$xml;
?>
Demás está decir que no deberías implementarlo así como lo he colocado; valida lo que recibes para evitar cualquier tipo de problema y adaptalo a tus necesidades. Como ejemplo es más que ilustrativo.

Saludos.
hola estube probando el ejemplo y se ve bastante bueno, el problema es que no me funciona lo tengo tal cual pero algo me debe faltar, me arroja error de javascript en la siguiente linea:

Código PHP:
if (ajax.readyState==4)
{
 var 
respuesta=ajax.responseXML;
 
campo1.value=respuesta.getElementsByTagName("nombre")[0].childNodes[0].data;// Aqui es el problema linea 40 char 13.
 
campo2.value=respuesta.getElementsByTagName("apellido")[0].childNodes[0].data;
 } 
no he podido dar con la solución

gracias