Actualizar en php una parte de la página al clicar un combobox o botón. Ocultar paneles

Respuesta de
a
Usuario
Hola que tal, mi nombre es Raul de Mexico.
Mi duda es la siguiente.
Ando buscando alguna forma en php de que al dar click en cierto botón o combobox se actualice solo una parte de la página. Como por ejemplo, he programado en aspx y ahí había un panel (<asp:panel> si no mal recuerdo) el cual se podía poner oculto con cierta información, y al causar un evento (onclick() por ejemplo) se miraba el panel.
Espero halla sido claro con mi duda.

Gracias de antemano por tu atención.
Experto
Hola

Yo no conozco ASP, y no conozco la función del panel que comentas. En PHP creo que no existe algo similar. Cuando creas la página se crea toda entera de una vez en el servidor y se envía al cliente. Supongo que no hay otra forma de hacerlo aunque tampoco lo descarto.

Puedes usar frames, javascript, o la etiqueta iframe.


Un ejemplo con iframe es el siguiente

<div align="center">
<iframe name="nombre" src="pagina.html" width="400" height="300" marginwidth="50" marginheight="50" frameborder="0">
tu navegador no soporta iframes
</iframe>
</div>

En ese ejemplo tendrías que modificar página.html de forma dinámica en php.


De todas formas, en php cualquier página tiene que crearse entera. Incluso usando frames. Quizá puedas crear varias capas don la etiqueta DIV y mediante javascript mostrar una u otra ocultando el resto que no quieras que se vea. La página podría crearse en php pero la actualización se hacía en el navegador cliente mediante javascript.


Otra opción es cargar toda la página entera. En PHP es muy común tener páginas que realizan varias funciones. Me explico: por ejemplo tienes una página con dos combos y un botón. La primera vez que se carga se muestra ese formulario, cuando se rellena el primer combo, se manda la página al servidor y a partir de la selección realizada se rellena el segundo combo. En este punto el cliente obtiene la misma página pero con la selección que ha realizado en el primer combo y con las opciones pertenecientes a esa selección en el segundo combo. Por ultimo cuando seleccione una opción del segundo combo o pulse el botón enviar, en el servidor se cargan datos referentes a esos dos combos.

Un ejemplo: en el combo1 seleccionas un país, y se rellena el combo2 con las provincias de ese país. Cuando se seleccione una provincia, se muestra toda la información sobre ella. Y todo esto realizado en el mismo script php.

No se si este ejemplo te sirve y se asemeja a lo que pretendes realizar.

Saludos.
Usuario
Antes que nada gracias por tu tiempo y tu ayuda. No es exactamente lo que tenia pensado, pero creo que eso me sirve muy bien.