Foros del Web » Programando para Internet » PHP »

Fijar valores que se buscan en BD por lista despegable

Estas en el tema de Fijar valores que se buscan en BD por lista despegable en el foro de PHP en Foros del Web. Buenos días, He insertado un una lista despegable con valores determinados para seleccionar, y que embace a esos valores busque en una base de datos. ...
  #1 (permalink)  
Antiguo 05/02/2013, 05:28
 
Fecha de Ingreso: enero-2013
Mensajes: 64
Antigüedad: 7 años, 5 meses
Puntos: 0
Fijar valores que se buscan en BD por lista despegable

Buenos días,

He insertado un una lista despegable con valores determinados para seleccionar, y que embace a esos valores busque en una base de datos. El inconveniente que me surgió es que cuando selecciona y presionan buscar, me efectúa la búsqueda correctamente, pero los datos de las lista despegables vuelen a la primera opción. Lo que estoy necesitando es que queden fijos esos valores que predeterminaron para la búsqueda.

Para que me entiendan mejor les paso el código de las lista

Código PHP:
<form id="frbuscar" name="frbuscar" method="get" action="">
<table width="100%" border="0">
  <tr>
    <td width="100%" align="center">
      <table width="96%" border="0" cellspacing="0" cellpadding="0">
        <tr>
          <td width="15%">Menor porcentaje</td>
          <td width="17%">Mayor porcentaje</td>
          <td width="13%">Valor</td>
          <td width="55%">&nbsp;</td>
        </tr>
        <tr>
          <td>
           <label>
      <select name="criterio" size="1" id="criterio" type="textss" value="<?php echo $criterio?>">
  <option>--Mayor que--</option>
  <option>0</option>
  <option>10</option>
  <option>20</option>
  <option>30</option>
  <option>40</option>
  <option>50</option>
  <option>60</option>
  <option>70</option>
  <option>80</option>
  <option>90</option>  
</select>
</label> </td>
          
          <td>
                     <label>
      <select name="criterio1" size="1" id="criterio1" type="textss" value="<?php echo $criterio1?>">
  <option>--Menor que--</option>
  <option>10</option>
  <option>20</option>
  <option>30</option>
  <option>40</option>
  <option>50</option>
  <option>60</option>
  <option>70</option>
  <option>80</option>
  <option>90</option>
   <option>100</option>
</select>
</label>
           </td>
          <td>      <label>
      <select name="criterio2" size="1" id="criterio2" type="textss" value="<?php echo $criterio2?>">
  <option>--Seleccionar--</option>
  <option>Availability</option>
  <option>Load_In</option>
</select>
</label></td>
          <td><input type="submit" id="btbuscar" value="Buscar" />
    </form></td>
        </tr>
      </table>
Por ejemplo:

Cuando en la primera lista seleccionan "0", en la segunda lista "100" y en la tercera "Load_In" y presionan Buscar, me efectúa la búsqueda, pero dichos valores se vuelen a: en la primer lista "--Mayor que--", en la segunda "--Menor que--" y en la tercera "--Seleccionar--".

Lo que necesito es que al presionar queden los valores que se desearon buscar.

Gracias por la lectura, y espero que me hayan entendido. Saludos.
  #2 (permalink)  
Antiguo 05/02/2013, 05:37
 
Fecha de Ingreso: enero-2013
Mensajes: 64
Antigüedad: 7 años, 5 meses
Puntos: 0
Respuesta: Fijar valores que se buscan en BD por lista despegable

Una idea que se me surgio ahora, es poner el código

Código PHP:
<?php echo $criterio?>
En la primera opción, así quedaría una de las listas

Código PHP:
       <label>
      <select name="criterio" size="1" id="criterio" type="textss" value="<?php echo $criterio?>">
  <option><?php echo $criterio?></option>
  <option>0</option>
  <option>10</option>
  <option>20</option>
  <option>30</option>
  <option>40</option>
  <option>50</option>
  <option>60</option>
  <option>70</option>
  <option>80</option>
  <option>90</option>  
</select>
</label>
El inconveniente que surge es que cuando efectuan la busqueda se me repite el valor que seleccionaron con alguna de las opciones.

Por ejemplo en la busqueda seleccionaron 10, cuando quieran ver la lista despegable figurará

Código PHP:
       <label>
      <select name="criterio" size="1" id="criterio" type="textss" value="<?php echo $criterio?>">
  <option>10</option>
  <option>0</option>
  <option>10</option>
  <option>20</option>
  <option>30</option>
  <option>40</option>
  <option>50</option>
  <option>60</option>
  <option>70</option>
  <option>80</option>
  <option>90</option>  
</select>
</label>
Aparecería dos veces 10, al principio y luego en el correcto lugar ya que así está ordenado. Aparece al principio porque esa es la opción que se buscó.

Alguna nueva idea?. Gracias.
  #3 (permalink)  
Antiguo 05/02/2013, 10:21
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 14 años, 1 mes
Puntos: 2135
Respuesta: Fijar valores que se buscan en BD por lista despegable

Para que la opción seleccionada se quede "fija" tienes que agregarle el atributo selected="selected" a la <option> que quieras, por ejemplo si la que quieres es la 10:
Código HTML:
Ver original
  1. <option value="10" selected="selected">10</option>

Saludos
  #4 (permalink)  
Antiguo 05/02/2013, 12:27
 
Fecha de Ingreso: enero-2013
Mensajes: 64
Antigüedad: 7 años, 5 meses
Puntos: 0
Respuesta: Fijar valores que se buscan en BD por lista despegable

Gracias por la respuesta, pero no es lo que necesito. Porque por ejemplo si selecciono la opción 20, me volverá a 10 la lista, y lo que necesito es que quede seleccionado 20 ya que eso fue lo que se eligió en la lista. Igual muchas gracias por la respuesta y lectura. Saludos.
  #5 (permalink)  
Antiguo 05/02/2013, 12:58
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 14 años, 1 mes
Puntos: 2135
Respuesta: Fijar valores que se buscan en BD por lista despegable

Obviamente no estas entendiendo lo que te digo, desde PHP tienes que evaluar la opción que quieres seleccionar y es la que tienes que agregarle el selected, para eso es PHP. PHP es un pre-procesador de texto, es decir se evalua primero y luego imprime el HTML correspondiente.

Entonces tienes que a la hora de imprimir, ir viendo opción por opción y luego agregarle el selected ó aún mejor, pon tus opciones en un array, cicla el array y dentro del ciclo vas evaluando que opción seleccionar, es algo muy trivial.

Saludos.

Etiquetas: bd, buscan, despegable, fijar, lista, select
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:04.