Foros del Web » Programando para Internet » PHP »

Generar un List (combo)

Estas en el tema de Generar un List (combo) en el foro de PHP en Foros del Web. Hola, necesito de su ayuda. Tengo el siguiente problema... En un formulario que ire capturando, tengo un input el cual llamaremos "clave"... al teclearlo, necesito ...
  #1 (permalink)  
Antiguo 18/09/2008, 10:41
 
Fecha de Ingreso: junio-2008
Mensajes: 63
Antigüedad: 15 años, 10 meses
Puntos: 0
Generar un List (combo)

Hola, necesito de su ayuda.

Tengo el siguiente problema... En un formulario que ire capturando, tengo un input
el cual llamaremos "clave"... al teclearlo, necesito que con el valor me genere un List (Select) para seleccionar alguna opcion de las distintas que pueda tener el Valor introducido en el inmput


Espero y que alguien pueda ayudarme con algun ejemplo. Gracias de Antemano
  #2 (permalink)  
Antiguo 18/09/2008, 10:47
Avatar de the_web_saint  
Fecha de Ingreso: mayo-2008
Ubicación: localhost/tierra/america/panama
Mensajes: 1.229
Antigüedad: 15 años, 11 meses
Puntos: 43
Respuesta: Generar un List (combo)

Creo que este tema te ayudara:

http://www.forosdelweb.com/f13/agreg...select-188073/

ademas creo que se a tratado muchas veces, realiza una busqueda o mira en las faq de javascript, ya que con esto se realiza.
Al hacer onclick en un boton, tomaras el valor del input y generas una opcion en el select.

Saludos
__________________
..::The Saint::..
El pesimista se queja del viento; el optimista espera que cambie; el realista ajusta las velas.
  #3 (permalink)  
Antiguo 18/09/2008, 10:58
 
Fecha de Ingreso: junio-2008
Mensajes: 63
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: Generar un List (combo)

Me funciono a la perfeccion:

Pero lo que yo Requiero es lo siguiente:

Tengo un Input Text, y cuando yo tecle algo en este caso seria la "clave", se haga un select (query) a una base de datos y con ese query se llene un Select (Combo, Lista) de acuerdo al valor del Input text capturado.

Gracias, Y ojala alguien pueda ayudarme.

Perdon por mi ignorancia, pero son novato... :(
  #4 (permalink)  
Antiguo 18/09/2008, 11:06
Avatar de the_web_saint  
Fecha de Ingreso: mayo-2008
Ubicación: localhost/tierra/america/panama
Mensajes: 1.229
Antigüedad: 15 años, 11 meses
Puntos: 43
Respuesta: Generar un List (combo)

Pues se complica el asunto un tanto!
esto necesitara de ajax, porque cuando escribas algo en el input text y presiones agregar se debe llamar a una funcion en ajax que haga la consulta y retorne la opcion, esta se agregara al combo con el codigo del post que te mencione!.

Salu2
__________________
..::The Saint::..
El pesimista se queja del viento; el optimista espera que cambie; el realista ajusta las velas.
  #5 (permalink)  
Antiguo 18/09/2008, 12:20
Avatar de the_web_saint  
Fecha de Ingreso: mayo-2008
Ubicación: localhost/tierra/america/panama
Mensajes: 1.229
Antigüedad: 15 años, 11 meses
Puntos: 43
Respuesta: Generar un List (combo)

Bueno aquí te dejo un codigo que te servira mucho:

solo deberías modificar la sentencia sql del archivo combo.php
form1.php
Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html xmlns="http://www.w3.org/1999/xhtml">
<
head>
<
meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<
title>Untitled Document</title>
<
script type="text/javascript">
function 
objetoAjax(){
    var 
xmlhttp=false;
    try {
        
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (
e) {
        try {
           
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        } catch (
E) {
            
xmlhttp false;
          }
    }

    if (!
xmlhttp && typeof XMLHttpRequest!='undefined') {
        
xmlhttp = new XMLHttpRequest();
    }
    return 
xmlhttp;
}
//Funcion Desarrollada por Jesus Liñán [email protected] ribosomatic.com

//************************************************para la insercion de registros*************************************************
function enviarDatos(divResuldestinoid)
{    
        
//donde se mostrará lo resultados
        
divResultado document.getElementById(divResul);
        
idValor document.getElementById(id).value;
        
divResultado.innerHTML="<center>Cargando ...</center>";
        
cadenaFormulario='id='+encodeURI(idValor);
        
//instanciamos el objetoAjax
        
ajax=objetoAjax();
        
//uso del medotod POST
        //archivo que realizará la operacion
        //registro.php
        
ajax.open("POST"destinotrue);
        
ajax.onreadystatechange=function() {
            if (
ajax.readyState==4) {
                
//mostrar resultados en esta capa
                
divResultado.innerHTML ajax.responseText;
            }
            else
            {
                
divResultado.innerHTML="<center>Cargando ...</center>";
            }
        }
        
ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
        
//enviando los valores
        
ajax.send(cadenaFormulario);
}
</script>
</head>

<body>
<form name="form1">
<input type="text" name="clave" id="clave" />
<input type="button" value="Buscar" onclick="enviarDatos('opciones', 'combo.php', 'clave')"/>
</form>

<form name="form2">
<div id="opciones">
<select name="opc" id="opc">
<option value="0">Seleccione</option>
</select>
</div>
</form>
</body>
</html> 
combo.php
Código PHP:
<?php
include('conect.php');
$link=Conectarse();
//variables POST
$id=$_POST['id'];

$sql="select * from opciones where id=".$id;
$resCons=mysql_query($sql);
$cadena="<select name=\"opc\">";
while(
$row=mysql_fetch_array($resCons))
{
    
$cadena.="<option value='".$row['id']."'>".$row['nombre']."</option>";
}
$cadena.='</select>';
echo 
$cadena;
?>
No esta probado, ya que no tengo idea como será la estructura de tu DB, pero estoy seguro que te ayudara un montón.

Salu2

EDITADO: Upss, sorry por no editar el anterior, se me paso. Disculpen!
Salu2
__________________
..::The Saint::..
El pesimista se queja del viento; el optimista espera que cambie; el realista ajusta las velas.
  #6 (permalink)  
Antiguo 18/09/2008, 13:09
 
Fecha de Ingreso: junio-2008
Mensajes: 63
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: Generar un List (combo)

Gracias


mil gracias
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 19:29.