Foros del Web » Programando para Internet » Javascript »

Obligar a cargar el frame principal + PHP

Estas en el tema de Obligar a cargar el frame principal + PHP en el foro de Javascript en Foros del Web. Hola a todos: Primero quisiera felicitar a Tunait por un script que consegui muy bueno y que es parte de esta pregunta. ¿Cómo puedo lograr ...
  #1 (permalink)  
Antiguo 24/10/2003, 13:46
 
Fecha de Ingreso: julio-2003
Mensajes: 13
Antigüedad: 20 años, 9 meses
Puntos: 0
Obligar a cargar el frame principal + PHP

Hola a todos: Primero quisiera felicitar a Tunait por un script que consegui muy bueno y que es parte de esta pregunta.
¿Cómo puedo lograr que si alguien llega a una sección de mi sitio sin cargar los frames, ésta se redirija a la estructura de marcos cargando por defecto dicha sección?.

Resp: (Esto es lo publicado por Tunait)
http://www.faqsdelweb.com/index.php?...id=93&q_id=350

Ahora bien cual es el problema:
Ej: Desde el buscador Google aparece una página interna de el sitio

http://www.google.com.ar/search?q=pu...&start=10&sa=N

Ahi abajo si miran esta una empresa llamada Búho S.A. y dice:

http://www.buhosa.com.ar/catalogos_d...20para%20radio

el problema es que cuando uno hace "click" se va a la pagina pero hace esto:

http://www.buhosa.com.ar/index.htm?url=/catalogos_d.php

O sea me borra el código dinámico de PHP
Lo que necesito es que tengo que poner ademas de lo dado por Tunait

frames.htm

<html>
<head>
<title>Página de Marcos</title>
<script language="javascript">
//###script por tunait

cadena=document.location.search.substring(1,locati on.search.length);
cadena2=cadena.split('=')
pagina=cadena2[1]
if (pagina==null)
{
pagina='principal.htm'
}
document.write('<frameset rows="80,*" frameborder="YES" border="1" framespacing="1" cols="*">')
document.write(' <frame name="arriba" scrolling="NO" noresize src="arriba.htm" >')
document.write('<frame name="principal" src="' + pagina + '">')
document.write ('</frameset>')
</script>
</head>
<noframes>
<body bgcolor="#FFFFFF" text="#000000">
</body>
</noframes>
</html>

Y en cada pagina anidada en la index se agrega esto:

<script language="javascript">
url=this.location.pathname
if(top==self) top.location="frames.htm?url=" + url
</script>

para que me agregue ademas de todo lo maravilloso que hace el código dinámico de PHP y así me muestre la página con el contenido.

Muchas Gracias

Diego
  #2 (permalink)  
Antiguo 24/10/2003, 16:07
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Hola Diego,

caramba, esto que me comentas es importante a tener en cuenta, me alegra que me lo hayas planteado.

Y ahí va la solución, mira ....

substituye esto

<script language="javascript">
url=this.location.pathname
if(top==self) top.location="frames.htm?url=" + url
</script>


por esto
Código:
<script language="javascript">
url=this.location.pathname
if(top==self){
	argus = document.location.search.substr(1)
	if (argus != ""){
		argus = "?" + argus
		}
	top.location ="frames.html?url=" + url + argus
	}
</script>
Y aquí substituyes esto.... (lo que está en negritas)

<html>
<head>
<title>Página de Marcos</title>
<script language="javascript">
//###script por tunait

cadena=document.location.search.substring(1,locati on.search.length);
cadena2=cadena.split('=')
pagina=cadena2[1]
if (pagina==null)
{
pagina='principal.htm'
}

document.write('<frameset rows="80,*" frameborder="YES" border="1" framespacing="1" cols="*">')
document.write(' <frame name="arriba" scrolling="NO" noresize src="arriba.htm" >')
document.write('<frame name="principal" src="' + pagina + '">')
document.write ('</frameset>')
</script>
</head>
<noframes>
<body bgcolor="#FFFFFF" text="#000000">
</body>
</noframes>
</html>

... por esto otro (lo de negritas)

<html>
<head>
<title>Página de Marcos</title>
<script language="javascript">
//###script por tunait

var pagina
cadena=document.location.search.substr(1);
pagina = cadena.substr(cadena.indexOf('=')+1)
if (pagina=='')
{
pagina='principal.htm'
}


document.write('<frameset rows="80,*" frameborder="YES" border="1" framespacing="1" cols="*">')
document.write(' <frame name="arriba" scrolling="NO" noresize src="arriba.htm" >')
document.write('<frame name="principal" src="' + pagina + '">')
document.write ('</frameset>')
</script>
</head>
<noframes>
<body bgcolor="#FFFFFF" text="#000000">
</body>
</noframes>
</html>


Cuéntame qué tal te fue

un saludo
  #3 (permalink)  
Antiguo 24/10/2003, 17:22
 
Fecha de Ingreso: julio-2003
Mensajes: 13
Antigüedad: 20 años, 9 meses
Puntos: 0
tunait: No se cómo agradecerte

Bueno no se cómo darte las gracias. lo que hiciste es por mí es de otro planeta, la verdad es que me gustaría contactarme con vos y no se tenernos en cuenta para otras cosas. Yo no se mucho de esto pero por ahí en otras cosas te puedo ayudar, creo que es impresionante tu nivel.
Un saludo y espero mantenerme en contacto.

Diego Ferrari

mi mail es: [email protected]
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 08:28.