Foros del Web » Programando para Internet » PHP »

Cargar paginas PHP en Divs

Estas en el tema de Cargar paginas PHP en Divs en el foro de PHP en Foros del Web. Hola, tras ciertos problemas que estoy teniendo con cargar una página con Divs, vengo aquí para que me aporteis una alternativa en PHP a esto.. ...
  #1 (permalink)  
Antiguo 08/11/2011, 13:07
Avatar de oNefl0w189  
Fecha de Ingreso: abril-2010
Ubicación: Valladolid
Mensajes: 117
Antigüedad: 14 años
Puntos: 4
Información Cargar paginas PHP en Divs

Hola, tras ciertos problemas que estoy teniendo con cargar una página con Divs, vengo aquí para que me aporteis una alternativa en PHP a esto.. a ver como podría hacerlo o si hay alguna funcion ya programada que lo haga o algo.

La cosa es que quiero tener una pagina (index.php) con una cabezera y pie de página común para el resto de páginas, y en esa página dentro de un DIV llamando Contenido cargar el resto de la página.

Ya probé utilizando el código de Ajax, pero así no consigo cargar los estilos(.css) para visualizar la página correctamente.


Alternativas?
  #2 (permalink)  
Antiguo 08/11/2011, 13:09
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Cargar paginas PHP en Divs

Revisa las FAQs del foro, puedes usar algo que se conoce como Webs modulares:

http://www.forosdelweb.com/wiki/PHP:...x.php%3Fid%3D2

Saludos.
  #3 (permalink)  
Antiguo 08/11/2011, 13:10
Avatar de skiper0125  
Fecha de Ingreso: octubre-2010
Ubicación: $this->Mexico('Toluca');
Mensajes: 1.127
Antigüedad: 13 años, 6 meses
Puntos: 511
Respuesta: Cargar paginas PHP en Divs

Hola que tal.

puedes usar el include()

Saludos
__________________
Recuerda que estamos aquí para orientarte, y no para hacer tu trabajo.
Si mi aporte fue de ayuda, recuerda que agradecer no cuesta nada +1

Skiper0125
  #4 (permalink)  
Antiguo 08/11/2011, 13:25
Avatar de oNefl0w189  
Fecha de Ingreso: abril-2010
Ubicación: Valladolid
Mensajes: 117
Antigüedad: 14 años
Puntos: 4
Respuesta: Cargar paginas PHP en Divs

Gracias por las respuestas, no había caido en utilizar un swtich tan sencillo como ese, yo tiraba mas a hacer algo parecido pero con bucle if.

Muchas gracias a los dos!

Última edición por GatorV; 08/11/2011 a las 13:52
  #5 (permalink)  
Antiguo 08/11/2011, 15:11
Avatar de oNefl0w189  
Fecha de Ingreso: abril-2010
Ubicación: Valladolid
Mensajes: 117
Antigüedad: 14 años
Puntos: 4
Respuesta: Cargar paginas PHP en Divs

Ya he creado el Switch, aquí os dejo el código:
Código PHP:
<?php
$id
=$_GET['id'];
 
switch (
$id) {
   case 
1:
       include(
"quien.php");
       break;
   case 
2:
       include(
"proyectos.php");
       break;
   case 
3:
       include(
"contacto.php");
       break;
   default:
       include(
"inicio.php");
        break;
// estado default .. nos determina el estado 
// "si no es ninguna opcion de las anteriores".

?>


Y para que me cambie tambien el color de los menús dependiendo en la página que estemos, he creado este IF (pues los menús estaban en la cabecera, y si no no cambiaba de color aunque cambiases de página).

Código PHP:
<?php 
                $id
=$_GET['id'];
                if (
$id == 0){
                echo 
"<li id=\"menu_active\"><a href=\"index.php?id=0\">Inicio</a></li>";
                echo 
"<li><a href=\"index.php?id=1\">Quien somos</a></li>";
                echo 
"<li><a href=\"index.php?id=2\">Proyectos</a></li>";
                echo 
"<li><a href=\"index.php?id=3\">Contacto</a></li>";
                }elseif (
$id == 1){
                echo 
"<li><a href=\"index.php?id=0\">Inicio</a></li>";
                echo 
"<li id=\"menu_active\"><a href=\"index.php?id=1\">Quien somos</a></li>";
                echo 
"<li><a href=\"index.php?id=2\">Proyectos</a></li>";
                echo 
"<li><a href=\"index.php?id=3\">Contacto</a></li>";
                }
                elseif (
$id == 2) {
                echo 
"<li><a href=\"index.php?id=0\">Inicio</a></li>";
                echo 
"<li><a href=\"index.php?id=1\">Quien somos</a></li>";
                echo 
"<li id=\"menu_active\"><a href=\"index.php?id=2\">Proyectos</a></li>";
                echo 
"<li><a href=\"index.php?id=3\">Contacto</a></li>";
                }else{
                echo 
"<li><a href=\"index.php?id=0\">Inicio</a></li>";
                echo 
"<li><a href=\"index.php?id=1\">Quien somos</a></li>";
                echo 
"<li><a href=\"index.php?id=2\">Proyectos</a></li>";
                echo 
"<li id=\"menu_active\"><a href=\"index.php?id=3\">Contacto</a></li>";
                };
                
?>

El problema es que al entrar en la pagina (ejemplo) www.asir.com me da errores, ya que la variable id no existe, entonces no puede hacer el get.

Que debería hacer para decirle que si en la direccion no esta indicada ninguna página (ej; www.asir.com/index.php?id=2) me coja automaticamente como si tubiese puesto un .php?id=0? (Teniendo en cuenta, que el ID=0, es el home).


Un saludo y gracias de ante mano.

PD: GatorV, lo siento. ;)
  #6 (permalink)  
Antiguo 08/11/2011, 15:16
Avatar de SetheR  
Fecha de Ingreso: enero-2009
Mensajes: 265
Antigüedad: 15 años, 3 meses
Puntos: 44
Respuesta: Cargar paginas PHP en Divs

Pon algo como esto en la primera línea.

Código PHP:
if (isset($_GET['id']) {
    
$id =  $_GET['id'];
} else {

    
$id 0;

SAludos
  #7 (permalink)  
Antiguo 09/11/2011, 10:17
Avatar de oNefl0w189  
Fecha de Ingreso: abril-2010
Ubicación: Valladolid
Mensajes: 117
Antigüedad: 14 años
Puntos: 4
Respuesta: Cargar paginas PHP en Divs

Tiene un error el codigo que me has puesto SetheR, pero arreglado Funciona de maravilla, el caso es que sigue sin hacerme lo que yo quiero. xD

Yo sigo accediendo a la pagina web, a través de www.web.com o incluso www.web.com/index.php y no me carga el www.web.com/index.php?id=0
que es lo que debería cargar..

El codigo lo he pegado arriba del todo en la página.

Código PHP:
<?php
header
('Content-Type: text/html; charset=iso-8859-1');
//Comprobamos que tenga una ID si no tiene, carga la ID 0 que es el index.
if (isset($_GET['id'])) {
    
$id =  $_GET['id'];
} else {
    
$id 0;
}  
?>
<!DOCTYPE html>
<html> 
//aqui ya empieza el html..
</html>





Dejo el codigo arreglado, por si alguien lo quiere utilizar, simplemente era que se le olvido cerrar un paréntesis. xD

Código PHP:
if (isset($_GET['id'])) {
    
$id =  $_GET['id'];
} else {

    
$id 0;


Última edición por oNefl0w189; 09/11/2011 a las 10:24
  #8 (permalink)  
Antiguo 09/11/2011, 11:36
Avatar de oNefl0w189  
Fecha de Ingreso: abril-2010
Ubicación: Valladolid
Mensajes: 117
Antigüedad: 14 años
Puntos: 4
Respuesta: Cargar paginas PHP en Divs

Creo que los tiros podrían ir encaminados por

$_SERVER['PHP_SELF']

y la verdad es que lo único que se me ha ocurrido es esto:
Código PHP:
if ($_SERVER['PHP_SELF'] = "/index.php") {
header("location:index.php?id=0"); 
}else{
//aqui cargo todo el resto de la pagina

Pero con este código, que funcionar funciona pues hace lo que quiero.., (que no se si estara bien, o hay mejores formas de hacerlo) me da el error:


Código:
La página no está redirigiendo adecuadamente.

          Firefox ha detectado que el servidor está redirigiendo la solicitud a esta dirección de una manera en la que nunca terminará.
        
  Este problema a veces está causado por desactivar o rechazar
    la recepción de cookies.

He probado a ponerle un exit; despues del header location, pero nada...

Alguna ayuda?
  #9 (permalink)  
Antiguo 09/11/2011, 11:43
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Cargar paginas PHP en Divs

Creo que el problema es que deberías de agregar el if, donde esta tu menu, ya que ahí es donde estas rescatando la variable nuevamente desde $_GET.

Saludos.
  #10 (permalink)  
Antiguo 09/11/2011, 11:49
Avatar de oNefl0w189  
Fecha de Ingreso: abril-2010
Ubicación: Valladolid
Mensajes: 117
Antigüedad: 14 años
Puntos: 4
Respuesta: Cargar paginas PHP en Divs

Cita:
Iniciado por GatorV Ver Mensaje
Creo que el problema es que deberías de agregar el if, donde esta tu menu, ya que ahí es donde estas rescatando la variable nuevamente desde $_GET.

Saludos.
El problema de esa solucion, es que si alguien entra a la página a traves de
www.ejemplo.com
o a través de
www.ejemplo.com/index.php
aunque busque la variable no la va a encontrar obviamente, puesto que no existe..

Por eso he pensado en rescatar la URL mediante $_SERVER['PHP_SELF'] y si en la url no esta puesto el .php?id= que me haga una redireccion automaticamente a la misma pagina pero correctamente es decir, www.ejemplo.com/index.php?id=0.

Pero con el script que he puesto ahí arriba no lo consigo, y no entiendo bien porque.. ya que creo que esta bien echo pero me da el error ese que he comentado mas arriba..
  #11 (permalink)  
Antiguo 09/11/2011, 11:50
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Cargar paginas PHP en Divs

Para eso es el if(), para verificar, si no existe la variable, la predefines al valor que tu deseas para que puedas mostrar el contenido por defecto.

Saludos.
  #12 (permalink)  
Antiguo 09/11/2011, 11:52
Avatar de oNefl0w189  
Fecha de Ingreso: abril-2010
Ubicación: Valladolid
Mensajes: 117
Antigüedad: 14 años
Puntos: 4
Respuesta: Cargar paginas PHP en Divs

Cita:
Iniciado por GatorV Ver Mensaje
Para eso es el if(), para verificar, si no existe la variable, la predefines al valor que tu deseas para que puedas mostrar el contenido por defecto.

Saludos.
Eso me serviria si alguien introdujese la url asi: www.ejemplo.com/index.php?id=
que entonces si que cambiaría, o añadiría un 0 para que cargase la web correctamente.

Pero si no existe el ID ni esta definido en la url ni nada... no lo hará no? (Y si lo hace, algo falla, pues no funciona xD).
  #13 (permalink)  
Antiguo 09/11/2011, 12:03
 
Fecha de Ingreso: junio-2006
Mensajes: 133
Antigüedad: 17 años, 11 meses
Puntos: 5
Respuesta: Cargar paginas PHP en Divs

Hola !!

Con el if que te recomendaron (if isset(.....)) te funciona lo que necesitas. Si alguien ingresa www.web.com, como no pasa id=algo entonces el if coloca el id automaticamente a 0. Si alguien escribiera www.web.com?id=987 entonces el if asigna id el valor de 987.

Lo que tienes es que colocar dicho if al comienzo de la pagina, y donde estes utilizadno el $_GET['id'] reemplazarlo por $id, y listo...
__________________
http://www.hostingyweb.net
  #14 (permalink)  
Antiguo 09/11/2011, 12:31
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Cargar paginas PHP en Divs

Exacto, para eso sirve isset() es para preguntar si existe o no la variable:
Código PHP:
Ver original
  1. if (!isset($_GET['id'] || empty($_GET['id'])) {
  2.        $id = 0;
  3. } else {
  4.        $id = $_GET['id'];
  5. }

Saludos.
  #15 (permalink)  
Antiguo 09/11/2011, 13:40
Avatar de oNefl0w189  
Fecha de Ingreso: abril-2010
Ubicación: Valladolid
Mensajes: 117
Antigüedad: 14 años
Puntos: 4
Respuesta: Cargar paginas PHP en Divs

Código PHP:
Ver original
  1. if (!isset($_GET['id']) || empty($_GET['id'])) {
  2.            $id = 0;
  3.     } else {
  4.            $id = $_GET['id'];
  5.     }

Ahora sí, aunque te faltaba un parentesis, jaja! (sí, otra vez, vaya mania les tienes no? jja)

Muchas gracias, todo solucionado.


PD: Aunque la verdad la idea de :
Código PHP:
Ver original
  1. if ($_SERVER['PHP_SELF'] = "/index.php") {
  2. header("location:/index.php?id=0");
  3. }else{
  4. echo "el resto de la pagina";
  5. }

tampoco me disgustaba mucho, lo que pasa es que fallaba algo.. :/ xD
  #16 (permalink)  
Antiguo 09/11/2011, 13:48
Avatar de oNefl0w189  
Fecha de Ingreso: abril-2010
Ubicación: Valladolid
Mensajes: 117
Antigüedad: 14 años
Puntos: 4
Respuesta: Cargar paginas PHP en Divs

Por cierto, todo esto no lo podría hacer de una manera oculta al usuario? es decir, sin que el usuario viera en el navegador ?id=0 ??

Si es mediante cookies, paso, no me apetece meterme con cookies para esta pagina..

Un saludo.
  #17 (permalink)  
Antiguo 09/11/2011, 14:07
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Cargar paginas PHP en Divs

Lo puedes hacer con AJAX, así el usuario no vería en la URL el id, pero de alguna forma tienes que transmitir el id que quieres cargar desde la pagina web al servidor, ya sea por POST o GET.

Saludos.
  #18 (permalink)  
Antiguo 09/11/2011, 14:11
 
Fecha de Ingreso: junio-2006
Mensajes: 133
Antigüedad: 17 años, 11 meses
Puntos: 5
Respuesta: Cargar paginas PHP en Divs

Hola!!!


Para que el usuario no lo vea, lo mejor es utilizar el metodo POST. La funcion en php solamente cambiarias $_GET por $_POST. Lo mismo el metodo en el formulario. Todo lo demas quedaria igual.
__________________
http://www.hostingyweb.net
  #19 (permalink)  
Antiguo 09/11/2011, 14:19
Avatar de oNefl0w189  
Fecha de Ingreso: abril-2010
Ubicación: Valladolid
Mensajes: 117
Antigüedad: 14 años
Puntos: 4
Respuesta: Cargar paginas PHP en Divs

Osea que con eso, debería funcionar igual pero ocultamente?
Código PHP:
Ver original
  1. if (!isset($_POST['id']) || empty($_POST['id'])) {
  2.            $id = 0;
  3.     } else {
  4.            $id = $_POST['id'];
  5.     }

Y los links? como los tendría que hacer? igual?
Código PHP:
Ver original
  1. <a href=\"index.php?id=3\">Contacto</a>
  #20 (permalink)  
Antiguo 09/11/2011, 14:56
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Cargar paginas PHP en Divs

No si lo vas a hacer por POST, tendrías que en lugar de poner links dos cosas:

- O usar un formulario oculto y con javascript hacer un "post back" como lo hace ASP
- O usar botones en lugar de links y todo ponerlo dentro de un <form>

Saludos.
  #21 (permalink)  
Antiguo 09/11/2011, 16:57
Avatar de oNefl0w189  
Fecha de Ingreso: abril-2010
Ubicación: Valladolid
Mensajes: 117
Antigüedad: 14 años
Puntos: 4
Respuesta: Cargar paginas PHP en Divs

Uff, que movida, ademas con eso a dejado de funcionarme tambien un formulario que si que va por POST. jaja, mejor lo dejo, que jueguen con ello si quieren, que no conseguirán nada. xD

Etiquetas: divs
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 18:11.