Foros del Web » Programando para Internet » PHP »

Listas dependientes

Estas en el tema de Listas dependientes en el foro de PHP en Foros del Web. Quiero consultarles si por casualidad alguien tiene algun script en donde cargen listas dependientes con php/mysql, para tomarlo como ejemplo ya que tengo uno y ...
  #1 (permalink)  
Antiguo 06/12/2004, 14:11
 
Fecha de Ingreso: noviembre-2004
Mensajes: 176
Antigüedad: 13 años, 1 mes
Puntos: 0
Pregunta Listas dependientes

Quiero consultarles si por casualidad alguien tiene algun script en donde cargen listas dependientes con php/mysql, para tomarlo como ejemplo ya que tengo uno y creo que anda un tanto lento, ya que recarga la pagina al seleccionar un item del select dependiente.
Lo que deseo seleccionar es el producto a traves de su codigo y viceversa...

Gracias!!!
  #2 (permalink)  
Antiguo 06/12/2004, 14:33
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Las otras opciones que tienes son:

1) usar Remote Scripting, un ejemplo:
http://www.ashleyit.com/rs/jsrs/select/php/select.php

2) Pre-cargar (mejor dicho, generar) arrays de javascript .. eso implica que todo el posible resultado de todas las combinaciones lo envias al "cliente" para que este lo procese. En algunos casos esto puede hacer pesado el trabajo para el "cliente" más incluso que la recarga de una página completa o usando "Remote Scripting". Ejemplo: busca algo así de listas dependientes en javascript y lo "portamos" a PHP y Mysql ... De hecho si usas el buscador .. creo que alguna propuesta ya se ha hecho al respecto.

Un saludo,
  #3 (permalink)  
Antiguo 06/12/2004, 14:43
 
Fecha de Ingreso: noviembre-2004
Mensajes: 176
Antigüedad: 13 años, 1 mes
Puntos: 0
Esto es lo que encontre, y he destacar que funciona rapidisimo

<script language="JavaScript">
function cambiar()
{
var index=document.forms.formulario.trimestres.selecte dIndex;

formulario.meses.length=0;

if(index==0) trimestre1();
if(index==1) trimestre2();
if(index==2) trimestre3();
if(index==3) trimestre4();
}

function trimestre1(){
opcion0=new Option("Enero","Enero","defauldSelected");
opcion1=new Option("Febrero","Febrero");
opcion2=new Option("Marzo","Marzo");

document.forms.formulario.meses.options[0]=opcion0;
document.forms.formulario.meses.options[1]=opcion1;
document.forms.formulario.meses.options[2]=opcion2;
}

function trimestre2(){
opcion0=new Option("Abril","Abril","defauldSelected");
opcion1=new Option("Mayo","Mayo");
opcion2=new Option("Junio","Junio");

document.forms.formulario.meses.options[0]=opcion0;
document.forms.formulario.meses.options[1]=opcion1;
document.forms.formulario.meses.options[2]=opcion2;
}

function trimestre3(){
opcion0=new Option("Julio","Julio","defauldSelected");
opcion1=new Option("Agosto","Agosto");
opcion2=new Option("Septiembre","Septiembre");

document.forms.formulario.meses.options[0]=opcion0;
document.forms.formulario.meses.options[1]=opcion1;
document.forms.formulario.meses.options[2]=opcion2;
}

function trimestre4(){
opcion0=new Option("Octubre","Octubre","defauldSelected");
opcion1=new Option("Noviembre","Noviembre");
opcion2=new Option("Diciembre","Diciembre");

document.forms.formulario.meses.options[0]=opcion0;
document.forms.formulario.meses.options[1]=opcion1;
document.forms.formulario.meses.options[2]=opcion2;
}

</script>
<form name="formulario" method="post" action="">
<div align="center">Trimestre
<select name="trimestres" OnChange="cambiar()">
<option value="1er. Trimestre" selected>1er. Trimestre</option>
<option value="2do. Trimestre">2er. Trimestre</option>
<option value="3er. Trimestre">3er. Trimestre</option>
<option value="4to. Trimestre">4to. Trimestre</option>
</select>
Meses
<select name="meses">
<option value="Enero" selected>Enero</option>
<option value="Febrero">Febrero</option>
<option value="Marzo">Marzo</option>
</select>
</div>
</form>

... lo que si es que si tengo 500 productos tendre que escribir 500 funciones ???

Gracias
  #4 (permalink)  
Antiguo 06/12/2004, 14:46
 
Fecha de Ingreso: noviembre-2004
Mensajes: 176
Antigüedad: 13 años, 1 mes
Puntos: 0
ahhhh...

se me olvido algo y es que es en un solo sentido, es decir al seleccionar el trimestre se despliegan los meses correspondientes, pero lo que necesito es que solamente al seleccionar el codigo del producto aparezca seleccionado en el otro select su descripcion y viceversa.

Saludos
  #5 (permalink)  
Antiguo 06/12/2004, 15:10
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Realmente son muchos datos para generarlos y entregarselos al cliente para que lo trabaje. Intenta ver el tema de "Remote Scripting" o sigue usando "PHP puro". Todo tiene su "precio". Con mucho dato .. javascript también se va a "atragantar" .. también dependerá del PC que lo ejecutes como "cliente" (navegador).

Un saludo,
  #6 (permalink)  
Antiguo 07/12/2004, 10:11
 
Fecha de Ingreso: noviembre-2004
Mensajes: 176
Antigüedad: 13 años, 1 mes
Puntos: 0
...Mi problema es que al utilizar "PHP puro" anda un tanto lento el refresco de la pagina.

Se puede agilizar esta recarga de la pagina de otra forma ???
  #7 (permalink)  
Antiguo 07/12/2004, 13:15
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Usando "Remote Scripting" .. por lo menos ahí no se recarga la página entera y podrías hacer como los ejemplos (que no sé si has visto) que en ese link de ese tutorial y dempos que tiene veras que hace cuando está "cargando datos".

Un saludo,
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 20:11.