Ver Mensaje Individual
  #2 (permalink)  
Antiguo 21/07/2011, 20:26
Avatar de gilber966
gilber966
 
Fecha de Ingreso: abril-2010
Mensajes: 117
Antigüedad: 14 años
Puntos: 4
Respuesta: mostrar datos de un select a una tabla

Cita:
Iniciado por Ximenitaa Ver Mensaje
Hola buen dia:

Estoy desde hace varios dias con un problema de un combo: Ojala pudieran orientarme ...

El problema que se me presenta es que al dar clic en el combo o select en el nombre de mi trabajador, que me muestre la informacion de ese trabajador en una tabla ...

he intentado muchas veces y aun no he podido concretarlo, hice el ejemplo de paises / estados para comprender un poco ajax, porque la verdad no tengo conocimiento de ajax y estoy en trance de aprenderlo, me ha salido bien bajo un ejemplo que muestran en esta Pagina de combos

pero es de combo a combo y no se como expresarlo de un combo a una tabla ....

este es mi codigo que he realizado:

realice uno que se llama formulario.php

Código PHP:
Ver original
  1. <html>
  2. <head>
  3. <title>
  4. </title>
  5. </head>
  6. <script language="javascript" src="jquery-1.3.2.min.js"></script>
  7. <script language="javascript">
  8.   $(document).ready(function(){
  9.      $("#trabajador").change(function () {
  10.         $("#pais option:selected").each(function () {
  11.            elegido=$(this).val();
  12.            $.post("muestra_datos_trabajador.php", { elegido: elegido }, function(data){
  13.               $("#tabla").html(data);
  14.               $("#tabla").html("");
  15.            });
  16.         });
  17.      })
  18.      // Este puede ponerse en comentario si no se dispone de un 3er combo:
  19.     // $("#estado").change(function () {
  20. //        $("#estado option:selected").each(function () {
  21. //           elegido=$(this).val();
  22. //           $.post("ciudades.php", { elegido: elegido }, function(data){
  23. //               $("#ciudad").html(data);
  24. //           });
  25. //        });
  26. //     })
  27. //
  28. //  });
  29.   </script>
  30. <body>
  31.  
  32. <select id="trabajador" name="trabajador">
  33. <option value="0">Seleccione trabajador </option>
  34. <?php              
  35.     include("sis_config.php");
  36.     $link=Conectarse();
  37.     $query=("SELECT nombre FROM trabajadores");
  38.     $resultado = mysql_query($query);
  39.     if ($resultado)
  40.     while($renglon = mysql_fetch_array($resultado))
  41.         {
  42.             $valor=$renglon['nombre'];
  43.             echo '<option value="'.$valor.'">"'.$valor.'"</option>';
  44.         }
  45.         mysql_close($link);
  46. ?>
  47. </select>

y de ahi nos manda a traer la tabla que se llama : muestra_datos_trabajador.php

Código PHP:
Ver original
  1. <?PHP
  2. include("sis_config.php");
  3. $link=Conectarse();
  4.     $result=mysql_query('select * from trabajadores',$link);
  5. ?>
  6. <html>
  7. <TABLE id="tabla"  BORDER=1 CELLSPACING=1 CELLPADDING=1 align="center">
  8.       <TR><TD>&nbsp;Nombre</TD><TD>&nbsp;Apellido Paterno&nbsp;</TD><TD> Apellido Materno </TD><TD> Rfc </TD> <TD>Puesto</TD><td>SECCION</td></TR>
  9.         <TR> <TD colspan="6">&nbsp;</TD></TR>
  10. <?php      
  11.    while($row = mysql_fetch_array($result)) {
  12.       printf("<tr> <td><font size=-4>&nbsp;%s</font></td> <td><font size=-4>&nbsp;%s</font></td> <td><font size=-4>&nbsp;%s</font></td> <td><font size=-4>&nbsp;%s</font></td> <td><font size=-4>&nbsp;%s</font></td> <td><font size=-4>&nbsp;%s</font></td> </tr>", $row["nombre"],$row["apaterno"],$row["amaterno"],$row["rfc"],$row["puesto"],$row["login"],$row["email"]);
  13.    }
  14.    mysql_free_result($result);
  15.    mysql_close($link);
  16. ?>
  17. </table>
  18. </html>

no, se si este correcto o no, espero puedan orientarme con esto por favor ....

GRacias !!!

hola aunque yo no manejo asi el code se que hay que colocarle un evento al option tuyo: (linea 43)

echo '<option value="'.$valor.'" onclick=\"traeEmpleado('$valor')\">"'.$valor.'"</option>';

ademas en la linea 4 del codigo php que colocas estas trayendo a todos los empleados con tu clausula:

#
$result=mysql_query('select * from trabajadores',$link);<br>
deberia ser #
$result=mysql_query("select * from trabajadores WHERE id_trabajador='variablerecibidaporajax'",$link);

fijate en la redistribucion de comillas

Espero te sirva, saludes y suerte.

Última edición por gilber966; 21/07/2011 a las 20:34