Foros del Web » Programando para Internet » PHP »

Campo de un formulario que provenga de una base de datos

Estas en el tema de Campo de un formulario que provenga de una base de datos en el foro de PHP en Foros del Web. Hola a todos, estoy empezando con php y mysql y lo que necesito hacer es que en un formulario un campo del mismo sea una ...
  #1 (permalink)  
Antiguo 20/11/2006, 21:27
 
Fecha de Ingreso: agosto-2004
Mensajes: 58
Antigüedad: 19 años, 8 meses
Puntos: 0
Campo de un formulario que provenga de una base de datos

Hola a todos, estoy empezando con php y mysql y lo que necesito hacer es que en un formulario un campo del mismo sea una lista que proviene de una tabla de la base de datos, pero que al elegir una opcion la lista siguiente cambie, y al elegir una opcion de la siguiente cambie tambien, por ejemplo la lista seria de marcas de carros (estas marcas estarian dentro de la base de datos), al elegir la marca en la siguiente lista aparecen los modelos que stan en la base de datos referentes a esa marca y al elegir la marca que en la siguiente aparescan los colores referente a ese modelo, no se si me explique bien, espero que puedan ayudarme.
  #2 (permalink)  
Antiguo 20/11/2006, 21:50
 
Fecha de Ingreso: noviembre-2006
Mensajes: 1
Antigüedad: 17 años, 5 meses
Puntos: 0
Busca en google por Combo País - Provincia - Ciudad. PHP y MySQL , el primer resultado es bueno.

Adios. Ricardo
  #3 (permalink)  
Antiguo 21/11/2006, 04:50
 
Fecha de Ingreso: abril-2005
Mensajes: 70
Antigüedad: 19 años
Puntos: 0
No es difícil, obtiene tus listas de la base de datos y con estos resultados crea arreglos en JavaScript, y podras cambiar los values de tus selects con el evento onchange de cada uno; por ejemplo, digamos que ya tienes el resultado de una Query en un arreglo, arias lo siguiente

<script language="javascript"> ArraySelect = new Array(); </script>
<?

$QueryArray[0]="A";
$QueryArray[1]="B";
$QueryArray[2]="C";
$QueryArray[3]="D";

$idx = 0;
$strJava = "<script language='javascript'>" ;

foreach ( $QueryArray as $temporal )
{
$strJava .= "ArraySelect[".$idx."] = '".$QueryArray[$idx]."' ;" ;
$idx++ ;
}

$strJava .= "</script>" ;

echo $strJava ;
?>
<form name="form1" method="post" action="">
<select id="MiSelect" name="MiSelect" onChange="javascript:CambiaSelectValues(this.value )">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
</form>
<script language="javascript">
function CambiaSelectValues(SelectedValue)
{
switch(SelectedValue)
{
case "1":
for (i=0; i<4; i++)
{
document.form1.MiSelect.options[i].value = i ;
document.form1.MiSelect.options[i].text = ArraySelect[i]
}
break;
default: alert("sigues haciendo arreglos.");
}
}
</script>

copia este código y veras que funciona, analízalo, yo creé un arreglo manual mente para no perder tiempo. Si tienes dudas pregunta.
  #4 (permalink)  
Antiguo 21/11/2006, 04:57
 
Fecha de Ingreso: abril-2005
Mensajes: 70
Antigüedad: 19 años
Puntos: 0
Ah!!! Olvidé una cosa, en el ejemplo que te puse la condición para cambiar los valores y textos del select es que la opción seleccionada sea 1, pero como es la que sale por defecto como seleccionada no se ejecuta el evento onchage, primero selecciona el dos o el tres y después selecciona nuevamente el uno y veras como cambian todos los valores, obviamente el primer valor del select debía ser nulo.
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 14:25.