Ver Mensaje Individual
  #5 (permalink)  
Antiguo 18/10/2010, 10:05
Ronyphp
 
Fecha de Ingreso: octubre-2007
Mensajes: 43
Antigüedad: 17 años, 1 mes
Puntos: 0
Respuesta: llamar datos de mysql de un cuadro de texto en forma dinamica

Hola nuevamente despues de varios intentos he consegui capturar la variable para recargar los datos en la misma pagina :)

El codigo es el siguiente en js (funciones.js)

addEvent(window,'load',inicializarEventos,false);

function inicializarEventos()
{
var ob=document.getElementById('boton1');
addEvent(ob,'click',presionBoton,false);
}

function presionBoton(e)
{
var ob=document.getElementById('dni');
recuperarDatos(ob.value);
}


var conexion1;
function recuperarDatos(dni)
{
conexion1=crearXMLHttpRequest();
conexion1.onreadystatechange = procesarEventos;
conexion1.open('GET','pagina1.php?dni='+dni, true);
conexion1.send(null);
}

function procesarEventos()
{
var resultados = document.getElementById("resultados");
if(conexion1.readyState == 4)
{
var datos=eval("(" + conexion1.responseText + ")");
var salida = "Apellido:"+datos.apellido+"<br>";
salida=salida+"Nombre:"+datos.nombre+"<br>";
salida=salida+"Dirección donde debe votar:"+datos.direccion;
resultados.innerHTML = salida;
}
else
{
resultados.innerHTML = "Cargando...";
}
}

//***************************************
//Funciones comunes a todos los problemas
//***************************************
function addEvent(elemento,nomevento,funcion,captura)
{
if (elemento.attachEvent)
{
elemento.attachEvent('on'+nomevento,funcion);
return true;
}
else
if (elemento.addEventListener)
{
elemento.addEventListener(nomevento,funcion,captur a);
return true;
}
else
return false;
}

function crearXMLHttpRequest()
{
var xmlHttp=null;
if (window.ActiveXObject)
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
else
if (window.XMLHttpRequest)
xmlHttp = new XMLHttpRequest();
return xmlHttp;


y en php (pagina1.php):

$bd_host = "localhost";
$bd_usuario = "xxxx";
$bd_password = "xxxx";
$bd_base = "xxxx";



$con = mysql_connect($bd_host, $bd_usuario, $bd_password);

mysql_select_db($bd_base, $con);

$busqueda = $_REQUEST['dni'];

$sql=mysql_query("SELECT * FROM clientes where dni = '$busqueda'");

//$nombre='';
//$apellido='';
//$direccion='';
while($row = mysql_fetch_array($sql)){
$nombre=$row['nombre'];
$apellido=$row['apellido'];
$direccion=$row['direccion'];
}

echo "{
'nombre':'$nombre',
'apellido':'$apellido',
'direccion':'$direccion'
}";

Pero con el codigo que tengo ahora solo logro que muestre el primer registro que encuentra.

Como puedo hacer para que me muestre todos los registros que contengan el mismo campo dni? porque si fuese en el mismo php seria una cosa asi :

while($row = mysql_fetch_array($sql)){
echo "<p>".$row['nombre']." - ".$row['apellido']." - ".$row['direccion']."</p> \n";
}

Pero no se como llevar esas variables al archivo funciones.js

Bueno como siempre muchas gracias...