Foros del Web » Programando para Internet » PHP »

Include especial

Estas en el tema de Include especial en el foro de PHP en Foros del Web. Hola, foreros: Mi web tiene dos includes uno para la cabecera y otro para el pie. Me preguntaba si existe alguna forma de que solo ...
  #1 (permalink)  
Antiguo 24/05/2008, 15:37
Avatar de salbatore  
Fecha de Ingreso: abril-2007
Ubicación: Springfield
Mensajes: 1.567
Antigüedad: 17 años, 7 meses
Puntos: 19
Include especial

Hola, foreros:

Mi web tiene dos includes uno para la cabecera y otro para el pie. Me preguntaba si existe alguna forma de que solo inserte uno, es decir, que por medio de un include pueda insertar la cabecara y el pie, y que en medio este el contenido de la web.

Por ejemplo:

En el include siguiente: <?php include ("cabecera_y_pie.php"); ?> si se inserta en una web, esta tiene una cabecara y un pie, y en medio el contenido de la web.

¿Se entiende?, jeje... ¿Se puede?
  #2 (permalink)  
Antiguo 24/05/2008, 15:54
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 9 meses
Puntos: 52
Respuesta: Include especial

<?
include ("cabecera.php");
?>

<head><body><? echo "Hola Mundo"; ?> </body></head>

<?
include ("pie.php");
?>

Espero que sea lo que pides
Un saludo
  #3 (permalink)  
Antiguo 24/05/2008, 16:14
Avatar de salbatore  
Fecha de Ingreso: abril-2007
Ubicación: Springfield
Mensajes: 1.567
Antigüedad: 17 años, 7 meses
Puntos: 19
Respuesta: Include especial

Hola, de nuevo...

Lo que me has respondido no me sirve, jeje. Logicamente se hacerlo que me has escrito. Lo que busco es tener solo un include no dos.

Es decir, se pone uno que llame a los dos, y de algun modo, que no se, en medio se inserte el contenido...

¿Se entiende?
  #4 (permalink)  
Antiguo 24/05/2008, 16:24
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 9 meses
Puntos: 52
Respuesta: Include especial

Si, guarda en dos funciones, en un archivo llamado FUCIONES.php por ejemplo,

function display_header()
{
// HTML header
}

function display_footer()
{
// HTML footer
}

Haces un include a FUNCIONES.php y en el momento que quieras las muestras asi

Cita:
<?
display_header("");

?>
el contenido html o lo que sea

Cita:
<?
display_footer("");

?>

es una menera de hacerlo, espero que te sirva
Un saludo
  #5 (permalink)  
Antiguo 24/05/2008, 19:18
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 21 años, 2 meses
Puntos: 41
Respuesta: Include especial

No entiendo muy bien las ventajas que tendría hacer lo que pides. Creo que sería más fácil hacer dos includes que tratar de forzar la situación.

Los dos ejemplos que te pusieron arrriba, de todas maneras hacen las dos llamadas a la función.

Lo único que se me ocurre es que pongas el header en un <div> y el footer en otro <div> y los escribas de una sola llamada. Luego los posicionas desde css. Pero, como te dije, sería forzar algo que se soluciona más rápido con dos llamadas.

Saludos,
  #6 (permalink)  
Antiguo 27/05/2008, 06:58
Avatar de salbatore  
Fecha de Ingreso: abril-2007
Ubicación: Springfield
Mensajes: 1.567
Antigüedad: 17 años, 7 meses
Puntos: 19
Respuesta: Include especial

Hola de nuevo...

Muchas gracias por las soluciones. Ahora mismo las pruebo, aunque seguramente me funcionen perfectamente, jeje.

La razon era tener todo lo comun de una web en un mismo documento...

Gracias...
  #7 (permalink)  
Antiguo 27/05/2008, 08:58
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: Include especial

Hola salbatore,

En ese caso te recomendaría usar algún sistema de plantillas.

Saludos.
  #8 (permalink)  
Antiguo 27/05/2008, 12:57
Avatar de salbatore  
Fecha de Ingreso: abril-2007
Ubicación: Springfield
Mensajes: 1.567
Antigüedad: 17 años, 7 meses
Puntos: 19
Respuesta: Include especial

Hola, GatorV...

No entiendo a que te refieres con un sistema de platillas, te puedes explicar mejor?
  #9 (permalink)  
Antiguo 27/05/2008, 13:34
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 8 meses
Puntos: 336
Respuesta: Include especial

tampoco lo creo tan util ni eficaz hacerlo asi pero tendras tus razones

Quieres una web asi:

Código PHP:
<?php include ("cabecera_y_pie.php"); ?>
<div align="center">mi titulo</div>
mi texto
que muestre esto:

Código:
CABECERA
texto
PIE
si ves ambos te daras cuenta que es casi imposible que el pie se pegue solo, si no quieres modificar esa web entonces debes modificar el include

supongamos que tienes el include con la cabecera y el pie de esta forma:

cabecera.php
Código PHP:
aqui va la cabezera 
pie.php
Código PHP:
aqui va el pie 
las mezclas en uno asi:

cabecera_y_pie.php
Código PHP:
echo "aqui va la cabezera"
echo "aqui va el pie" 
ahora volvemos a la pagina y guarda toooodo el contenido de la pagina en una variable xD, ya te imaginas que voy a hacer cierto? XD

Código PHP:
<?
$texto
="<div align=\"center\">mi titulo</div>
mi texto"
;
include (
"cabecera_y_pie.php");
?>
fijate que si el texto tiene comillas ( " ) debes anteponer un backslash ( \ ), ademas he puesto el include abajo del texto, no te confundas

ahora en cabecera_y_pie.php

cabecera_y_pie.php
Código PHP:
echo "aqui va la cabezera".$texto."aqui va el pie" 
creo que no falta nada xD
  #10 (permalink)  
Antiguo 27/05/2008, 13:51
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 21 años, 2 meses
Puntos: 41
Respuesta: Include especial

Cita:
Iniciado por salbatore Ver Mensaje
La razon era tener todo lo comun de una web en un mismo documento...
No siempre tener menos líneas de código significa más eficiencia. A veces tener cada cosa por su lado, es más ordenado (y, por ende, más fácil de modificar/reparar).

En todo caso, tener todo eso (html + imágenes + css + js + swf) en una misma carpeta está bien... pero en un mismo archivo, repito... es forzar demasiado.

Si insistes con tener todo en un mismo archivo, la solución te la dio jaronu en el cuarto post de este thread.

----

Un motor de plantillas te ayuda a separar el diseño visual de todos los procesos internos que generan el contenido.

----

Saludos,
  #11 (permalink)  
Antiguo 27/05/2008, 14:19
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 9 meses
Puntos: 52
Respuesta: Include especial

Tiene mucha razon jpinedo, yo no lo tengo todo en el mismo archivo, lo que hago es un include a un archivo llamado BOOK_FNS.php

Y en todas mis paginas solo hago un include, pero dentro de este archivo BOOK_FNS.php hago hasta seis includes mas, a otros archivos como la conexion a la BD,

Todo centralizado a traves de BOOK_FNS.php pero al mismo tiempo separado, como dice jpinedo, porque en ese archivo hago el resto de includes. a si todo esta ordenado.
Espero haberme explicado
un saludo
  #12 (permalink)  
Antiguo 27/05/2008, 19:37
Avatar de salbatore  
Fecha de Ingreso: abril-2007
Ubicación: Springfield
Mensajes: 1.567
Antigüedad: 17 años, 7 meses
Puntos: 19
Respuesta: Include especial

Hola de nuevo...

Muchas gracias por la solucion a todos... jeje. El problema lo tenia en que estoy haciendo una web con casi 100 paginas base, y temia el dia en que tuviese que modificar algun contenido, no solo del pie y la cabecera, jeje...

Gracias por la solucion...
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 12:55.