Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Mostrar datos en una página a partir de un select

Estas en el tema de Mostrar datos en una página a partir de un select en el foro de PHP en Foros del Web. Espero haber sido explícito en el título, sino, será acá. Esta es la duda: tengo una vista de página web, y quiero escoger de un ...
  #1 (permalink)  
Antiguo 16/07/2013, 10:03
Avatar de kana_kanji2000  
Fecha de Ingreso: mayo-2013
Ubicación: Caracas
Mensajes: 15
Antigüedad: 10 años, 11 meses
Puntos: 0
Busqueda Mostrar datos en una página a partir de un select

Espero haber sido explícito en el título, sino, será acá. Esta es la duda: tengo una vista de página web, y quiero escoger de un conjunto de opciones que me muestre algo. Más explícito: este es el código del 1er div:

Código PHP:
Ver original
  1. <form action="" method="post" name="busqueda" onsubmit="return Campo();">
  2.     <label title="buscar">Buscar por:
  3.     <select title="opcion">
  4.         <option value="" selected></option>
  5.         <option value="persona">Persona</option>
  6.         <option value="componente">Componente</option>
  7.         <option value="categoria">Categor&iacute;a</option>
  8.         <option value="nucleo">N&uacute;cleo</option>
  9.         <option value="carrera">Carrera</option>
  10.     </select>
  11.     </label>
  12.     </form>

Ahora quiero que, por ejemplo, tras elegir "Persona", me muestre en el 2do div:
Código PHP:
Ver original
  1. <div class="resultados"></div>
un form de búsqueda, y tras hacer la búsqueda, se filtre por el campo indicado (en este caso, un nombre o un apellido); o que elija "Categoría" muestre una table que filtre los datos por categoría (estos dos se hacen en Postgres). Tengo definida varias funciones:
Código PHP:
Ver original
  1. <?php
  2. function buscarPersona(){
  3.     //lanzamos la función de consulta de datos
  4.     $persona = "SELECT idPersona, nombres, apellidos, cedula, genero, telefono, telfemergencia, correoelectronico FROM persona";
  5.    
  6.     // lanzamos la consulta con una variable
  7.     $datoPersona = pg_query($persona) or die;
  8.    
  9.     // creamos una cabecera de lista
  10.     echo "<h1 align='center'>Resultados: </h1><br>";
  11.     echo "<table align='center' border='1' bordercolor='#990000' cellspacing='1'>";
  12.     echo "<tr>";
  13.     echo "<td>idPersona</td><td>Nombres</td><td>Apellidos</td><td>C&eacute;dula</td><td>G&eacute;nero</td><td>Tel&eacute;fono</td><td>Tel&eacute;fono emergencia</td><td>Correo electr&oacute;nico</td>";
  14.     echo "</tr>";
  15.    
  16.     // echo "<ul>";
  17.    
  18.     // hacemos un bucle que recoja en un array cada línea del resultado, con la función pg_fetch_row
  19.     while($regPersona = pg_fetch_row($datoPersona)){
  20.         // echo "<li>";
  21.         echo "<tr>";
  22.         // ahora se establece el bucle de resultado con foreach
  23.         foreach($regPersona as $registro){
  24.             // echo " - ",$registro," - ";
  25.             echo "<td>",$registro,"</td>";
  26.         }
  27.     // echo '</li>';
  28.     echo "<tr>";
  29.     }
  30.     echo "</table>";
  31. }
  32.  
  33. function buscarComponente(){
  34.     echo "Funci&oacute;n buscarComponente() activa.<br>";
  35. }
  36.  
  37. function buscarCategoria(){
  38.     echo "Funci&oacute;n buscarCategoria() activa.<br>";
  39. }
  40.  
  41. function buscarNucleo(){
  42.     echo "Funci&oacute;n buscarNucleo() activa.<br>";
  43. }
  44.  
  45. function buscarCarrera(){
  46.     echo "Funci&oacute;n buscarCarrera() activa.<br>";
  47. }
  48.  
  49. if ($_POST['opcion'] == 'persona'){
  50.     // ejecuta la funcion buscarPersona()
  51.     buscarPersona();
  52. } else if ($_POST['opcion'] == 'componente'){
  53.     // ejecuta la funcion buscarPersona()
  54.     buscarComponente();
  55. } else if ($_POST['opcion'] == 'categoria'){
  56.     // ejecuta la funcion buscarPersona()
  57.     buscarCategoria();
  58. } else if ($_POST['opcion'] == 'nucleo'){
  59.     // ejecuta la funcion buscarPersona()
  60.     buscarNucleo();
  61. } else if ($_POST['opcion'] == 'carrera'){
  62.     // ejecuta la funcion buscarPersona()
  63.     buscarCarrera();
  64. } else {
  65.     echo "<h3 align='center'>Escoja una opci&oacute;n</h3><br>";
  66. }
  67.  
  68. ?>

No sé en qué estaré resbalando, pero creo que no hace las llamadas bien. Mas sin embargo, si pongo en el div resultados la función buscarPersona sí muestra la tabla, entonces no está tan mal. ¿Me echan un cable a ver qué me falla?

Etiquetas: bases-de-datos, buscador, funcion, postgresql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:53.