PHP - sobre llenado de textbox desde db

   
Vista:

sobre llenado de textbox desde db

Publicado por Nacho (2 intervenciones) el 15/01/2009 13:34:14
Hola a to2 los peacheperos tengo una consulta:

tengo un formulario conectado a una bd de mysql. Lo que necesito es que al ingresar un dato, en mi caso un rut, en un textbox y apretar ENTER o simplemente perder focus se carguen otros textbox, como por ejemplo nombre, apellido, edad.

RUT |_______| -> ingresado por yo.

nombre:|_______|
apellido:|_______|
edad: |_______| estas cargadas desde la base de datos, obviamente el rut igual esta en la base de datos. Espero que me puedan ayudar en mis primeros pasos con PHP.

Muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:sobre llenado de textbox desde db

Publicado por WEBNESS (73 intervenciones) el 15/01/2009 16:13:33
La mejor forma de hacer lo que quieres es usando ajax, ya sea que lo hagas a pie o utilizando un framework como xajax, lo bueno de hacerlo a pie, es que el mismo concepto te sirve para php, jsp, asp, coldfusion, etc.

como seria

<input type=text name=rut id=rut onblur="funcionAjax(); " />

creas tu funcion javascript llamada funcionAjax() asi:

<script>
funcion createAjax()
{
var obj;
if (window.XMLHttpRequest)
{
obj= new XMLHttpRequest ();
}
else
if (window.ActiveXObject)
{
try
{
obj= new ActiveXObject ("Msxml2.XMLHTTP");
}
catch (e)
{
try
{
obj= new ActiveXObject ("Microsoft.XMLHTTP");
}
catch (e) {}
}
return obj;
}
}

function funcionAjax()
{
var ajax=createAjax();
var rut = document.getElementById("rut").value;
ajax.open ('GET', "pagina.php?rut="+rut, true);
ajax.send("rut="+rut);
if(pagina_requerida.readyState == 4)
{
var datos= ajax.responseText.split(",");
document.getElementById("nombres").value=datos[0];
document.getElementById("email").value=datos[1];
-----------------------------
-----------------------------
-----------------------------

}
}

************************************************************************************************************************************************************************************

entonces como puedes ver la funcion funcionAjax invoca un archivo php que se llama pagina.php "puede ser en cualquier leguaje tal cual como te dije antes", este fichero recibe por URL el dato del rut y ahce el query....

<?php
-------------
-------------
$q=mysql_query($query,$conexion);
$row = mysql_fetch_array($q);

echo $row["nombres"].",".$row["email"]."......................"......;
?>

tambien puedes ver que la funcionAjax hace esto:
var datos= ajax.responseText.split(",");

ajax lo que hace es toma todo el codigo "HTML" generado en el documento php y lo almacena en responseText, el chiste de esto es poder actualizar secciones de la pantalla, pero como tu lo que vas a hacer es actualizar valores de atributos, por eso imprimes en php separado por comas, el orden en el que imnpriomas en php es el orden de los campos del arreglo "datos" al hacer split con javascript.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:sobre llenado de textbox desde db

Publicado por Nacho (2 intervenciones) el 20/01/2009 15:07:30
muchas gracias WEBS, para mi es relativamente nuevo lo del Ajax, he estado leyendo en estos días y me parece interesante aprenderlo, pero dime, mediante un boton tampoco es posible llenar los campos ? como para q la codificación sea 100% PHP ?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar