Foros del Web » Programando para Internet » PHP »

Mostrar valor en campo texto, segun cambie valor lista seleccionado

Estas en el tema de Mostrar valor en campo texto, segun cambie valor lista seleccionado en el foro de PHP en Foros del Web. Estimados. junto con saludarlos a todos, les agradcería su ayuda en lo siguiente... Tengo una tabla en mysql, que uso para (mediante php), crear una ...
  #1 (permalink)  
Antiguo 02/06/2016, 08:22
 
Fecha de Ingreso: diciembre-2008
Mensajes: 268
Antigüedad: 15 años, 4 meses
Puntos: 0
Exclamación Mostrar valor en campo texto, segun cambie valor lista seleccionado

Estimados.
junto con saludarlos a todos, les agradcería su ayuda en lo siguiente...
Tengo una tabla en mysql, que uso para (mediante php), crear una lista/menu...

en la pagina html, asi es como llamo esta funcion ...

etc..etc.. ......... <td align="center"><label for="lista_1"></label> <label for="select"></label>

<?php lista_1(); ?>

<label for="textfield6"></label></td>........etc..etc..

la funcion lista es esta:....

function lista_1()
{
include '0-php/conexion.php';
conectar();
$consulta=mysql_query("SELECT id, opcion, descripcion FROM productos");


echo "<select name='lista_1' id='lista_1' onChange='cargaContenido(this.id),descripcion_1()' >";
echo "<option value='1'></option>";
while($registro=mysql_fetch_row($consulta))
{
echo "<option value='".$registro[1]."'>".$registro[1]."</option>";
}
echo "</select>";
}

AAAHORA...... lo que quiero y/o me gustaria hacer... es que dependiendo del valor que se seleccione de la lista ($registro[1]), me muestre en un campo de texto, la descripcion de lo que se seleccionó en la lista/menu, y que lo tengo almacenado en la columna de mysql como "$registro[2]"....

gracias por su guia o auyda...
saludos a todos
  #2 (permalink)  
Antiguo 02/06/2016, 12:35
 
Fecha de Ingreso: octubre-2010
Ubicación: España
Mensajes: 1.007
Antigüedad: 13 años, 6 meses
Puntos: 123
Respuesta: Mostrar valor en campo texto, segun cambie valor lista seleccionado

Básicamente, tendrás que enviar la selección de la lista a otro php, en este archivo recoges los datos con post/get y haces una nueva consulta filtrando con el dato recogido.

Si pretendes hacerlo sin recargar la página, necesitarás usar ajax. Igualmente si el form o Select no tiene ningún submit para enviar el dato puedes hacerlo con js.


Igualmente decir que utilices el HIGHLIGHT del foro para postear código, nos facilita leerlo.
__________________
Unset($vida['malRollo']);
  #3 (permalink)  
Antiguo 02/06/2016, 15:10
 
Fecha de Ingreso: abril-2016
Mensajes: 65
Antigüedad: 8 años
Puntos: 4
Respuesta: Mostrar valor en campo texto, segun cambie valor lista seleccionado

lo que tienes que hacer es esto.
Vamos a tener la página principal donde esta tu list(yo prefiero trabajar con select2) que se llamara principal.php
(select2 te permite escribir tu busqueda y va filtrando ls resultados, si no quieres no es obligatorio que trabajes con select2)
tendre mis conexiones en conexion.php
tendriamos lo siguiente

conexion.php
Código PHP:
Ver original
  1. <?php
  2. $usuario_login   = $usuarios_sesion;
  3.     try {
  4. //yo utilizo informix
  5.         $conn = new PDO("informix:host=10....; service=...;database=basededatos; server=servidor; protocol=onsoctcp;EnableScrollableCursors=1;CLIENT_LOCALE=en_US.CP1252;DB_LOCALE=en_US.819", "usuario", "password");
  6.         //echo 'Connected succesfully.<br>';
  7.     }
  8.     catch (PDOException $e) {
  9.         echo '<p>Cannot connect to database !!</p>';
  10.         exit;
  11.     }
  12.  
  13.     return $conn;
  14.  
  15. ?>

Principal.php

Código PHP:
Ver original
  1. <?php
  2. include(conexion.php)
  3.  
  4. $sqll = ("select * from  persona ");
  5. $resultl = $conn->query($sqll);
  6. $valorl = $resultl->fetchAll();
  7. $combo_nombre .= "<option value=''selected>Seleccione una opción</option>";
  8. foreach ($valorl AS $resultl)
  9. {
  10.      //el campo 2 es apellido paterno, el 3 es materno y el 1 es nombre asi que por eso concatenos en nom_nom
  11.     $nom_noml = trim($resultl[2])." ".trim($resultl[3])." ".trim($resultl[1]);
  12.     //el valor que obtendremos al seleccionar estará en mi campo 0
  13.     $combo_institucion.= "<option value='".$resultl[0]."'>".utf8_encode($nom_noml)."</option>";
  14. }
  15. ?>
  16. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  17. <html xmlns="http://www.w3.org/1999/xhtml">
  18. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  19. <head>
  20.     <title>combobox</title>
  21.     <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"></script>
  22.     //debes descargarte select2 y ponerles las librerias donde corresponden
  23.     <script src="js/select2.js" type="text/javascript"></script>
  24.     <link rel="stylesheet" type="text/css" href="css/select2.css">
  25. //este escript es el que es necesario para que funcione el select2
  26.  <script type="text/javascript" charset="utf-8">
  27.  
  28.         $().ready(function () {
  29.             $(".js-states").select2();
  30.         });
  31.  
  32. $(document).ready(function() {
  33.             // Parametros para el combo
  34.             $("#institucion").change(function () {
  35.                 $("#institucion option:selected").each(function () {
  36. //capturamos el valor seleccionado de nuestro select en elegidos
  37.                     elegido=$(this).val();
  38. //por post mandamos nuestro valor a otra pagina que se llamara descrip.php
  39.                     $.post("descrip.php.php", { elegido: elegido }, function(data){
  40. //y aca llenemos los divs con los datos que nos deveulva desc.php
  41.                         var arreglo = new Array();
  42.                         arreglo = data.split('[-]');
  43.  
  44.                         $("#div1").html(arreglo[0]);
  45.                         $("#div2").html(arreglo[1]);
  46.                         $("#div3").html(arreglo[2]);                        
  47.                     });
  48.                 });
  49.             });
  50.         });
  51.   </script>
  52. </head>
  53. <body>
  54. <!-- tengo mis css por defefecto asi que cambialos como quieras-->
  55. <div STYLE="background-color:#bbbbbb">
  56.     <form class="form-horizontal" name="formulario" action="" method="post">
  57.  <div class="control-group">
  58.             <strong class="control-label" for="institucion">Institución</strong>
  59.             <div class="controls" id = "divInstitucion">
  60.                 <select class="js-states form-control"  name="institucion" id="institucion" required>
  61.                     <?php  echo $combo_institucion;?>
  62.                 </select>
  63.             </div>
  64.   </div>
  65.      </form>
  66. </div>
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73. <div STYLE="background-color:rgb(205,210,205)">
  74.     <form class="form-horizontal" name="formulario" action="" method="post">
  75.         <div class="control-group" id="divDatos" style="display: none">
  76.             <strong class="control-label" for="dat"></strong>
  77. <!-- este es el div donde pondra el primer arreglo-->
  78.             <div  class="controls" name="div1" id="prueba"></div>
  79.         </div>
  80.         <div class="control-group" id="divDatos1" style="display: none">
  81.             <strong class="control-label" for="dat">Institución:</strong>
  82. <!-- este es el div donde pondra el segundo arreglo-->
  83.             <div  class="controls" name="div2" id="prueba1">
  84.             </div>
  85.         </div>
  86.         <div class="control-group" id="divDatos12" style="display: none">
  87.             <strong class="control-label" for="dat">Institución:</strong>
  88. <!-- este es el div donde pondra el tercer arreglo-->
  89.             <div  class="controls" name="div3" id="prueba12">
  90.             </div>
  91.         </div>
  92.  </form>
  93. </div>
  94. </BODY>
  95. </HTML>

como te dije el valor elejido lo pasaremos a otro php que se llamara desc.php

desc.php

Código PHP:
Ver original
  1. <?php
  2. include('conexion.php');
  3. //recibimos el valor del select
  4. $id_id=$_POST["elegido"];
  5.  
  6. $salida0="";
  7. $combog0 = ("SELECT DISTINCT ci, telefono FROM  persona WHERE id = $id_id");
  8. $result0 = $conn->query($combog0);
  9. $valor0 = $result0->fetchAll();
  10. foreach ($valor0 AS $result0)
  11. {
  12.     $salida0 .= "<label>".$result0[1]."</label>";
  13. }
  14.  
  15. $salida1 ="";
  16. $sql1 =  ("SELECT DISTINCT ci, direccion FROM  persona WHERE id = $id_id");
  17. $mysql1 = $conn->query($sql1);
  18. $des1 = $mysql1->fetchAll();
  19. foreach ($des1 AS $mysql1) {
  20.     $nom_nom = trim($mysql1[1])." ".trim($mysql1[2])." ".trim($mysql1[0]);
  21.     $salida1 .= "<label>".utf8_encode($nom_nom)."</label>";
  22. }
  23.  
  24. $salida2="";
  25. $combog2 = ("SELECT DISTINCT * FROM  persona WHERE id = $id_id");
  26. $result2 = $conn->query($combog2);
  27. $valor2 = $result2->fetchAll();
  28. foreach ($valor2 AS $result2)
  29. {
  30. $salida2 .= "<label>".$result2[3]."</label>";
  31. }
  32.  
  33. echo $salida0."[-]".$salida1."[-]".$salida2;
  34. ?>



Espero te ayude

Última edición por danteavo92; 02/06/2016 a las 15:16

Etiquetas: campo, html, lista, mysql, registro, seleccionado, select, sql, tabla, valor
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 00:40.