Ver Mensaje Individual
  #5 (permalink)  
Antiguo 14/10/2010, 12:37
LOD_Fredy
 
Fecha de Ingreso: abril-2009
Mensajes: 341
Antigüedad: 15 años
Puntos: 3
Busqueda Respuesta: Llenar un select a partir de la opcion elegida en otro select

OK, bueno seria ver tambien como realizar esa conexion remota entre el servidor apache y el servidor de base de datos (supongo en la cadena de conexion tendra que ir la ip del servidor apache aunque aun no se como codificar eso).

Sobre la configuracion de oracle seria verlo mas alrato que este en el trabajo y hacer pruebas supongo.

Sobre los selects dependienrtes estoy teniendo problemas ya que yo necesito meter codigo php dentro de javascript, te pondre un ejemplo que no esta completo y que tal vez no funcione pero que igual y se entiende mas que es lo que necesito.

Este codigo me crea el select con las publicaciones las cuales las obtengo de una consulta a la base de datos. Esto es sencillo pues este select se llena con todas las publicaciones. En el evento onchange llamo al metodo recedicion que es donde necesito que a partir del valor del index seleccionado me llene el otro select (esto tambien es facil si los datos del otro select no fueran de una consulta a una base de datos).
Código PHP:
<tr><td>Publicaci&oacute;n</td><td><select name='publicacion' onChange='RecEdicion(this)'>
                <
option value=''>Seleccione la publicaci&oacute;n</option>";
                for($i=0;$i<count($publicacion);$i++)
                    echo "
<option value='".$publicacion[$i]."'>".$publicacion[$i]."</option>";
                echo "
</select></td></tr
el problema viene con las ediciones ya que cada publicacion tiene sus propias ediciones y es lo que necesito mostrar en el otro select, este seria el codigo de ilustracion.

Código PHP:
<tr><td>Edici&oacute;n</td><td><select name='edicion'>
                <
option value=''>Seleccione la edici&oacute;n</option>
                </
select></td></tr
este el codigo javascript de la funcion que llena el select de las ediciones.
[javascript]
function RecEdicion(publicacion)
{
if(publicacion.options[publicacion.options.selectedindex].value="Valor del indice seleccionado")
{
//aqui es donde iria el codigo php necesario para no se, llenar variables javascript que despues utilizo para crear una nueva opcion para el select de las ediciones, el llenado seria con el resultado de la consulta correspondiente (esa consulta ya la tengo)
variable = new Option("text","value","defaultSelected","selected" );
document.menu.edicion.options[i]=variable;
}
}
[/javascript]

i seria una variable que aumentaria hasta i-1 donde en cada iteracion crea una nueva opcion con la siguiente edicion correspondiente a la publicacion seleccionada.

El problema es poder usar variables de php y asignarlas a variables javascript (en este caso seria un arreglo con las ediciones correspondientes)

Bien, ahora, se me ocurre otra cosa por hacer sin embargo tampoco encuentro la solucion completa:

Puedo en vez de querer hacer la consulta a la base de datos en el momento que se selecciona cierta publicacion, mejor guardar en arreglos la consulta para las ediciones de cada publicacion. Ahora ya teniendo todos los datos en arreglos de php, el problema seria meterlos en javascript para llenar el select con el arreglo correspondiente. Como daro adicional, se me ocurre hacer un arreglo bidimensional, donde la segunda dimension contendra un numero del 1 al n, en este arreglo meto todas las ediciones de todas las publicaciones y las distingo por el numero 1 para la primer publicacion, 2 para la segunda publicacion, 3 .... etc. Asi, este arreglo lo paso en la funcion javascript RecEdicion y solo me preocupo por leer el arreglo y agregar al select de las ediciones solo las ediciones que le correspondan.

Epero haberme dado a entender y decir, que todo esto es solo teoria, aun no lo pongo en practica (nisiquiera se si se pueda hacer realmente).