PAGINA HTML POR CAPAS (SOLUCIONADO)

Iniciado por smagno, 23 Octubre 2009, 05:14 AM

0 Miembros y 2 Visitantes están viendo este tema.

smagno

Mr. Crowley
Revisastes tu correo??? Please.

Mr. Crowley

Ese script lo puede colocar en el head de la pagina (todo el codigo) o guardarlo en un
archivo independiente y luego desde el head incluirlo.

Por lo que veo no es necesario usar los includes, a fin y al cabo lo unico que cambia
es el contenido (mediante ajax) y el menu lo maneja esa funcion... No hay problema  :)

Si quiere guardar el script en un documento independiente (con el nombre: prueba.js, ejemplo)... lo puede incluir asi:


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Prueba</title>
<script type="text/javascript" language="javascript" src="prueba.js"></script>
</head>
<body>
<div id="divEncabezado">
    Encabezado que o cambia
   </div>
<div id="divMenu">
    Codigo del menu que es manejado por la funcion en el archivo prueba.js
   </div>
   <div id="contenido">
    Contenido que cambia por medio de Ajax
   </div>
<div id="divPie">
    Pie que o cambia
   </div>
</body>
</html>


Para colocar la funcion en el documento:


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Prueba</title>
<script language="javascript">
stuHover = function() {
var cssRule;
var newSelector;
for (var i = 0; i < document.styleSheets.length; i++)
for (var x = 0; x < document.styleSheets[i].rules.length ; x++)
{
cssRule = document.styleSheets[i].rules[x];
if (cssRule.selectorText.indexOf("LI:hover") != -1)
{
newSelector = cssRule.selectorText.replace(/LI:hover/gi, "LI.iehover");
document.styleSheets[i].addRule(newSelector , cssRule.style.cssText);
}
}
var getElm = document.getElementById("nav").getElementsByTagName("LI");
for (var i=0; i<getElm.length; i++) {
getElm[i].onmouseover=function() {
this.className+=" iehover";
}
getElm[i].onmouseout=function() {
this.className=this.className.replace(new RegExp(" iehover\\b"), "");
}
}
}
if (window.attachEvent) window.attachEvent("onload", stuHover);
</script>
</head>
<body>
<div id="divEncabezado">
    Encabezado que o cambia
   </div>
<div id="divMenu">
    Codigo del menu que es manejado por la funcion
   </div>
   <div id="contenido">
    Contenido que cambia por medio de Ajax
   </div>
<div id="divPie">
    Pie que o cambia
   </div>
</body>
</html>
Mi blog personal: www.calirojas.com

smagno

Mr.Crowley
Tu opinion es mejor no usar include.

Mr. Crowley

#13
Personalmente no lo haria, solo en caso de que lo necesite. No se que pensaran l@s demas.

El script (‭‬javascript) se puede colocar en un archivo independiente como le respondi
mas arriba. Tambien, se puede colocar directamente en el documento.

El menu sea por include o directamente en el documento siempre va a ser el mismo.
De todas formas lo maneja la funcion. No le veo beneficio al hacer el include, ya que
lo unico que se va a recargar es el contenido. En caso de que su pagina no use Ajax y
tenga que regargar todo cada vez que hace clic en un link del menu, ahi si seria util.
Pero creo que en su caso si hace uso de Ajax.

Bueno, esto es solo una opinion personal... hay muchas formas de hacer una cosa,
depende del gusto de la gente y de las necesidades que tengamos ;D

Cita de: smagno en 23 Octubre 2009, 19:17 PM
Mr. Crowley
Revisastes tu correo??? Please.

1) Necesito es como valido al usuario en la session del menu principal que si no hay usuario valido lo mande al frmlogin.html para que entre un usuario o se registre.
2) Como hago que me aparezca o me muestre el usuario que esta activo.

Con respecto a eso... un ejemplo sencillo:

login.php

Código (php) [Seleccionar]

<?php
session_start();
?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Prueba</title>
</head>
<body>
Colocar usuario y contraseña para login
</body>
</html>


principal.php (suponiendo que es la pagina donde estan el menu y las principales opciones de la aplicacion):

Código (php) [Seleccionar]

<?php
session_start();

if(trim($_SESSION["usuario"])==""){
header("Location: login.php");
}
?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Prueba</title>
<script type="text/‭‬javascript" language="‭‬javascript" src="prueba.js"></script>
</head>
<body>
Contenido de la pagina principal
   Menu, opciones, etc
</body>
</html>


1. login.php es quien llamaria al script que valida al usuario, si el usuario es valido
entonces crea la variable $_SESSION["usuario"] y le coloca el login del mismo.

2. Cuando valida el usuario (por medio del script que llama login.php), ahi mismo
puede obtener el nombre del usuario y almacenarlo en otra variable de sesion. Asi
nada mas en la pagina principal lo imprime:

Código (php) [Seleccionar]

   echo $_SESSION["nombre_usuario"];


Tambien, si no quiere almacenarlo en la variable de sesion, puede consultarlo en la
tabla que contiene los usuarios (usando como referencia el contenido de la variable
$_SESSION["usuario"]).

Edito:
Veo que esta usando paginas con extension html. Si va a usar sesiones entonces
debe cambiarlo a PHP, ya que no le funcionaria; solo si el server esta configurado
para procesar los html como si fueran php.
Mi blog personal: www.calirojas.com

smagno