Ver Mensaje Individual
  #8 (permalink)  
Antiguo 25/05/2009, 11:07
matak
 
Fecha de Ingreso: julio-2008
Ubicación: Alcañiz-Teruel-España
Mensajes: 182
Antigüedad: 16 años, 4 meses
Puntos: 5
Respuesta: Con php o javascript

Buenas,

Ciertamente ajax es lo que necesitas y aqui es donde podemos ayudarte y en concreto yo estaré encantado en hacer todo lo que pueda.

Pero antes de nada quería comentarte una cosita que no me ha quedado clara.
La forma en que quieres que se rellenen los campos es poniendo el nombre del médico,¿no?. Lo primero que se me ocurre es: ¿Qué pasa cuando halla dos con el mismo nombre?

Yo te recomendaría que el dato clave que determine el rellenado automático fuera un dato único en la tabla, tipo primary_key,código del médico, DNI, o cualquier otro,... No se si en tu caso tendrás algun campo asi. De todas formas si sigues queriendo usar el nombre algo se podra hacer,¿no?...

Si quieres un ejemplo sencillo sería algo asi:

Código html:
Ver original
  1. var ajax=null;
  2.  
  3. function objetoAjax(){
  4.     var xmlhttp=false;
  5.     try {
  6.         xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
  7.     } catch (e) {
  8.         try {
  9.            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
  10.         } catch (E) {
  11.             xmlhttp = false;
  12.     }
  13.     }
  14.  
  15.     if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
  16.        xmlhttp = new XMLHttpRequest();
  17.     }
  18.     return xmlhttp;
  19. }
  20.  
  21. function peticion(url,divcontenido,par){
  22.  
  23.     if (ajax==null) {
  24.       objDestino=document.getElementById(divcontenido)
  25.       ajax=objetoAjax();
  26.       ajax.open("POST", url+'?id='+par, true);
  27.       ajax.onreadystatechange=function() {
  28.           if (ajax.readyState==4) {
  29.               objDestino.innerHTML = ajax.responseText
  30.               ajax = null
  31.           }
  32.       }
  33.       ajax.send(null)
  34.     }else{
  35.  
  36.       setTimeout("f1('"+url+"','"+divcontenido+"')",1)
  37.      
  38.     }
  39. }
  40. <FORM action="loquesea.php" NAME="prueba" METHOD="POST" ENCTYPE="multipart/form-data">
  41. <div id="resultado">
  42.  
  43. <input type="text" id="nombre" name="nombre" SIZE="30" MAXLENGTH="30"  onblur="peticion('buscaInfoPersonal.php','resultado',this.value)"/>
  44.  
  45. <input type="text" id="ap1" name="ap1" SIZE="30" MAXLENGTH="30" />
  46.  
  47. </div>
  48. </FORM>

buscaInfoPersonal.php
Código php:
Ver original
  1. <?PHP
  2.  
  3. ///////tu codigo de conexion a mysql
  4.  
  5. $sql="SELECT ap1 FROM tutabla WHERE nombre='".$_REQUEST['id']."'";
  6. $consulta = mysql_query ($sql, $db) or die (mysql_error ($db));
  7. if (mysql_num_rows($consulta)>0){
  8. $row=mysql_fetch_array($consulta)
  9. ?>
  10. <input type="text" id="nombre" name="nombre" SIZE="30" MAXLENGTH="30"  onblur="peticion('buscaInfoPersonal.php',this.value)" VALUE="<?PHP echo $_REQUEST['id']; ?>"/>
  11.  
  12. <input type="text" id="ap1" name="ap1" SIZE="30" MAXLENGTH="30" VALUE="<?PHP echo $row['ap1']; ?>"/>
  13. <?PHP
  14. }else{
  15. ?>
  16. <input type="text" id="nombre" name="nombre" SIZE="30" MAXLENGTH="30"  onblur="peticion('buscaInfoPersonal.php',this.value)" VALUE="<?PHP echo $_REQUEST['id']; ?>"/> No hay coincidencias
  17.  
  18. <input type="text" id="ap1" name="ap1" SIZE="30" MAXLENGTH="30" VALUE=""/>
  19. <?PHP
  20. }
  21. ?>

Pruebalo, lo he escrito de cabeza y es posible que tienga algun error. Si es asi repórtamelo y lo miro.

Si me dices como es la estructura de tu tabla podría intentar hacerte un ejemplo más concreto.

Si no entiendes el código y quieres que te lo explique sólo dímelo.

Saludos.
__________________
Si quieres puedes y si puedes debes. Imposible is nothing!!!