Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Problema con combobox y radiobotones

Estas en el tema de Problema con combobox y radiobotones en el foro de PHP en Foros del Web. Buenas. Tengo un formulario con HTML, con un combobox y dos radiobotones. Por otra parte, tengo una tabla en una base de datos que recoge ...
  #1 (permalink)  
Antiguo 20/03/2013, 10:42
 
Fecha de Ingreso: marzo-2013
Mensajes: 51
Antigüedad: 11 años, 1 mes
Puntos: 2
Problema con combobox y radiobotones

Buenas. Tengo un formulario con HTML, con un combobox y dos radiobotones. Por otra parte, tengo una tabla en una base de datos que recoge datos de clientes y existen dos tipos de clientes: particulares y empresas.

Mi duda esta en como puedo hacer que se muestren en el combobox los DNI de los clientes que son particulares si se pincha en un radioboton o que se muestren los DNI de las empresas si se pincha en el otro radioboton.

Gracias de antemano.
  #2 (permalink)  
Antiguo 20/03/2013, 10:44
 
Fecha de Ingreso: abril-2008
Ubicación: El Salvador
Mensajes: 736
Antigüedad: 16 años
Puntos: 47
Respuesta: Problema con combobox y radiobotones

Podes hacerlo con ajax que seria lo mas elegante... pero podrias hacerlo con php ahi depende de que tanto conocimiento tengas...
  #3 (permalink)  
Antiguo 20/03/2013, 10:51
 
Fecha de Ingreso: marzo-2013
Mensajes: 51
Antigüedad: 11 años, 1 mes
Puntos: 2
Respuesta: Problema con combobox y radiobotones

Jajaja mejor php (se me olvido decir que queria hacerlo con php) ya que de ajax no tengo ni la mas remota idea jaja
  #4 (permalink)  
Antiguo 20/03/2013, 10:58
Avatar de informacionsys  
Fecha de Ingreso: mayo-2011
Ubicación: Bogota D.C
Mensajes: 793
Antigüedad: 12 años, 11 meses
Puntos: 76
Respuesta: Problema con combobox y radiobotones

hice un ejemplo para que te guies, es solo jquery , no usa ajax, inicialmente debes cargar los combos de las dos opciones

Código HTML:
Ver original
  1.     <title></title>
  2.     <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js" type="text/javascript"></script>
  3.     <script type="text/javascript">
  4.     $(function()
  5.     {  
  6.         ValidaOpcion($(".radio:checked"));
  7.         $(".radio").click(function()
  8.         {
  9.             ValidaOpcion(this);
  10.         });
  11.     });
  12.  
  13.     function ValidaOpcion(e)
  14.     {  
  15.         var el = $(e);
  16.  
  17.         //validamos si el valor del radio button es empresas
  18.         if(el.val() == 0)
  19.         {
  20.             $("#particulares").hide();
  21.             $("#empresas").show();
  22.         }
  23.         else
  24.         {
  25.             $("#particulares").show();
  26.             $("#empresas").hide();
  27.         }
  28.     }
  29.     </script>
  30.  
  31. </head>
  32.  
  33.  
  34. <input type="radio" name="seleccion" class="radio" value="0">Empresas <br/>
  35. <input type="radio" name="seleccion" class="radio" value="1" checked>Particulares <br/>
  36.  
  37. <select id="empresas">
  38.     <option>Empresa 1</option>
  39.     <option>Empresa 2</option>  
  40. </select>  
  41.  
  42. <select id="particulares">
  43.     <option>Particular 1</option>
  44.     <option>Particular 2</option>  
  45. </select>  
  46.  
  47. </body>
  48. </html>
  #5 (permalink)  
Antiguo 20/03/2013, 11:03
 
Fecha de Ingreso: abril-2008
Ubicación: El Salvador
Mensajes: 736
Antigüedad: 16 años
Puntos: 47
Respuesta: Problema con combobox y radiobotones

mmm ok deberías leer un poco e ir aprendiendo ajax pero bueno eso nada mas a manera de sugerencia...

Mira en php tendrías que hacer primero un formulario con donde se deba seleccionar el tipo de cliente y luego enviarlo a otro script para hacer el select a la tabla con el filtro.... tenes idea de programacion php o estas aprendiendo???
  #6 (permalink)  
Antiguo 20/03/2013, 15:14
 
Fecha de Ingreso: marzo-2013
Mensajes: 51
Antigüedad: 11 años, 1 mes
Puntos: 2
Respuesta: Problema con combobox y radiobotones

Cita:
Iniciado por alex1084 Ver Mensaje
mmm ok deberías leer un poco e ir aprendiendo ajax pero bueno eso nada mas a manera de sugerencia...

Mira en php tendrías que hacer primero un formulario con donde se deba seleccionar el tipo de cliente y luego enviarlo a otro script para hacer el select a la tabla con el filtro.... tenes idea de programacion php o estas aprendiendo???
Si, si tengo idea de programacion en php, estoy desarrollando mi proyecto para obtener el titulo de Tecnico Superior en Desarrollo de Aplicaciones Web.

La cosa es que hoy cuando me he puesto con ello, (primero hice todo el diseño en HTML y CSS y ahora estoy ya programando los formularios que tiene mi proyecto) me ha invadido la duda que he comentado.

Mañana desde el trabajo donde estoy realizando las practicas subo el codigo con esa parte del formulario y el codigo php que tengo para intentar explicar un poco mejor lo que quiero conseguir ya que este proyecto le estoy desarrollando desde ahi. (Seguramente la solución sea una tonteria pero ahora no caigo xd).

Respecto a lo de AJAX, solamente he visto un par de ejemplos sencillos, de ahi que prefiera resolver esto con php, pero por probar y aprender nada se pierde.
  #7 (permalink)  
Antiguo 20/03/2013, 15:17
 
Fecha de Ingreso: marzo-2013
Mensajes: 51
Antigüedad: 11 años, 1 mes
Puntos: 2
Respuesta: Problema con combobox y radiobotones

Cita:
Iniciado por informacionsys Ver Mensaje
hice un ejemplo para que te guies, es solo jquery , no usa ajax, inicialmente debes cargar los combos de las dos opciones

Código HTML:
Ver original
  1.     <title></title>
  2.     <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js" type="text/javascript"></script>
  3.     <script type="text/javascript">
  4.     $(function()
  5.     {  
  6.         ValidaOpcion($(".radio:checked"));
  7.         $(".radio").click(function()
  8.         {
  9.             ValidaOpcion(this);
  10.         });
  11.     });
  12.  
  13.     function ValidaOpcion(e)
  14.     {  
  15.         var el = $(e);
  16.  
  17.         //validamos si el valor del radio button es empresas
  18.         if(el.val() == 0)
  19.         {
  20.             $("#particulares").hide();
  21.             $("#empresas").show();
  22.         }
  23.         else
  24.         {
  25.             $("#particulares").show();
  26.             $("#empresas").hide();
  27.         }
  28.     }
  29.     </script>
  30.  
  31. </head>
  32.  
  33.  
  34. <input type="radio" name="seleccion" class="radio" value="0">Empresas <br/>
  35. <input type="radio" name="seleccion" class="radio" value="1" checked>Particulares <br/>
  36.  
  37. <select id="empresas">
  38.     <option>Empresa 1</option>
  39.     <option>Empresa 2</option>  
  40. </select>  
  41.  
  42. <select id="particulares">
  43.     <option>Particular 1</option>
  44.     <option>Particular 2</option>  
  45. </select>  
  46.  
  47. </body>
  48. </html>
Gracias por tu posible solución, aunque ya comente que queria intentar resolverlo con php, pero me guardo tu ejemplo ya que me puede servir mas adelante. Gracias.
  #8 (permalink)  
Antiguo 21/03/2013, 05:16
 
Fecha de Ingreso: marzo-2013
Mensajes: 51
Antigüedad: 11 años, 1 mes
Puntos: 2
Respuesta: Problema con combobox y radiobotones

Aqui dejo el codigo:

Código PHP:
Ver original
  1. <table>
  2.     <tr>
  3.         <td colspan="4">
  4.                       Tipo:
  5.                         <input type="radio" name="tipo" value="particular"    onclick="deshabComercial()" checked>Particular
  6.                        <input type="radio" name="tipo" value="empresa" onclick="habComercial()">Empresa
  7.                  </td>
  8.     </tr>
  9.     <tr>
  10.         <td>DNI: <?php
  11.                 $c = mysql_connect ('localhost','root','') or die ("No se pudo conectar");
  12.                 mysql_select_db("proyecto",$c);
  13.                                 $v1= $_POST['tipo']
  14.                 if($v1 == "particular"){
  15.                     echo "<select name='dni' id='dni'>";
  16.                                         $cons = "SELECT DNI FROM clientes WHERE nombre_comercial=''";
  17.                     $res = mysql_query($cons,$c);
  18.                     $i = 0;
  19.                     while($row = mysql_fetch_row($res)){
  20.                         echo "<option value".">".$row[$i]."</option>\n";
  21.                     }
  22.                     echo "</select>";
  23.                             }else{
  24.                     echo "<select name='dni' id='dni'>";
  25.                                         $cons = "SELECT DNI FROM clientes WHERE nombre_comercial=''";
  26.                     $res = mysql_query($cons,$c);
  27.                     $i = 0;
  28.                     while($row = mysql_fetch_row($res)){
  29.                         echo "<option value".">".$row[$i]."</option>\n";
  30.                     }
  31.                     echo "</select>";
  32.                                   }
  33.             ?>
  34.         </td>

Habia intentado recogere el valor del radio con $_POST pero no me funciona porque esta parte del formulario no se envía.

Lo que intento es que el combobox muestre unos dnis u otros dependiendo del valor seleccionado en el radio.
  #9 (permalink)  
Antiguo 21/03/2013, 09:20
 
Fecha de Ingreso: abril-2008
Ubicación: El Salvador
Mensajes: 736
Antigüedad: 16 años
Puntos: 47
Respuesta: Problema con combobox y radiobotones

Mira como te dije anteriormente a fuerza tenes que enviar los valores de los radio. Ese tiene que ser tu primer formulario, luego tenes que capturarlos y con esos datos filtrar los combobox
  #10 (permalink)  
Antiguo 21/03/2013, 09:35
 
Fecha de Ingreso: abril-2008
Ubicación: El Salvador
Mensajes: 736
Antigüedad: 16 años
Puntos: 47
Respuesta: Problema con combobox y radiobotones

Proba este código y adaptalo a lo que necesitas .....

Código PHP:
Ver original
  1. <form action="prueba.php" method="POST">
  2.     Tipo:
  3.     <input type="radio" name="tipo" id="tipo" value="particular" checked>Particular
  4.     <input type="radio" name="tipo" id="tipo" value="Empresa" checked>Empresa  
  5.     <input type="radio" name="ok" id="ok" value="Enviar">
  6. </form>
  7.  
  8. <?php
  9. if(isset($_POST["ok"])){
  10.     if($_POST["tipo"]=="particular"){
  11.         $cons = "Aqui la consulta de los particulares";
  12.     }elseif($_POST["tipo"]=="Empresa"){
  13.         $cons = "Aqui la consulta de las empresas";
  14.     }
  15.     $res = mysql_query($cons,$c);
  16.     $listDNI="";
  17.     while($row = mysql_fetch_row($res)){
  18.         $listDNI.='<option value="'.$row["campoDNI"].'">"'.$row["campoDNI"].'"</option>';
  19.     }
  20.  
  21. ?>
  22. <form action="prueba.php" method="POST">
  23.     <select name="DNI">
  24.     <?=$listDNI;?>
  25.     </select>
  26. </form>
  27. <?php  
  28. }
  29. ?>

Etiquetas: combobox, radiobutton
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 13:29.