Foros del Web » Programando para Internet » Javascript »

Problemas con referencias a otras páginas

Estas en el tema de Problemas con referencias a otras páginas en el foro de Javascript en Foros del Web. Hola buenos días... Tengo una duda con respecto a un script de Javascript (obvio, no? si estoy en este subforo... xDD). Bueno, tengo dos páginas ...
  #1 (permalink)  
Antiguo 11/03/2014, 11:11
Avatar de Middrel  
Fecha de Ingreso: abril-2005
Mensajes: 835
Antigüedad: 19 años
Puntos: 27
Problemas con referencias a otras páginas

Hola buenos días...

Tengo una duda con respecto a un script de Javascript (obvio, no? si estoy en este subforo... xDD).

Bueno, tengo dos páginas que comparten información en cierto momento cuando estás logueado dentro de alguna de ellas.

www.pagina1.com
www.pagina2.com


Ahora, si estoy logueado en www.página2.com, hay un enlace que me lleva a www.pagina1.com, pero me envía ya logueado, es decir, sin necesidad de llegar a www.pagina1.com y tener que loguearme.

Bueno, el enlace al que le doy click para que haga esto es el siguiente:

Código HTML:
Ver original
  1. <a class="listar" title="Pagina1" href='javascript:AbrirPagina("Pagina1")'>Pagina1</a>

cuando eso sucede me abre la siguiente página:

www.pagina1.com/enlace.php

y dentro de enlace.php hay el siguiente código:

Código Javascript:
Ver original
  1. <script language="javascript1.1">
  2. if (document.referrer.indexOf("www.pagina2.com") > -1)
  3. {
  4.   location.href='enlace.php?oaraebtraraqyu=www.pagina2.com';
  5. }
  6. </script>

y me redirecciona a www.pagina1.com/main.php pero ya con la sesión abierta.

Bueno... cabe aclarar que funciona muy bien en Firefox, Chrome, Explorer en versiones anteriores a la 10... pero en las veriones 10 y 11 no funciona, cuando le doy click al enlace se queda en www.pagina1.com/enlace.php como una página en blanco y no da el salto a www.pagina1.com/main.php

Mi fuerte no es Javascript, pero no sé si haya cambiado en algo la forma de hacer las declaraciones en el código antes mencionado o si ya estén obsoletas, o si sea alguna configuración de IE10+ sobre javascript...

¿Alguien tiene alguna idea de que puede ser? De antemano, les agradezco por sus comentarios.

Saludos!!
  #2 (permalink)  
Antiguo 11/03/2014, 11:39
Colaborador
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 3.648
Antigüedad: 10 años, 8 meses
Puntos: 578
Respuesta: Problemas con referencias a otras páginas

Para empezar no es recomendable utilizar links hacia contenido javascript...

¿Te suelta algún error la consola? Porque claro, tampoco sabemos que haces en la función "AbrirPagina"...
  #3 (permalink)  
Antiguo 11/03/2014, 11:46
Avatar de Middrel  
Fecha de Ingreso: abril-2005
Mensajes: 835
Antigüedad: 19 años
Puntos: 27
Respuesta: Problemas con referencias a otras páginas

Precisamente estoy buscando esa función de AbrirPagina... disculpen no desarrollé esté sitio y es un lío encontrar donde esta todo... no hay referencias en el código :/

Odio cuando me pasan códigos de terceros y que nunca comentan, ni identan, ni nada :/

En cuanto lo tenga lo pongo, saludos!!
  #4 (permalink)  
Antiguo 11/03/2014, 11:50
Colaborador
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 3.648
Antigüedad: 10 años, 8 meses
Puntos: 578
Respuesta: Problemas con referencias a otras páginas

Dinos que te devuelve y acabamos rápido:

Código Javascript:
Ver original
  1. console.log(AbrirPagina);

  #5 (permalink)  
Antiguo 11/03/2014, 12:08
Avatar de Middrel  
Fecha de Ingreso: abril-2005
Mensajes: 835
Antigüedad: 19 años
Puntos: 27
Respuesta: Problemas con referencias a otras páginas

Me regresa lo siguiente:

Código Javascript:
Ver original
  1. La Consola JavaScript está conectada y acepta comandos.
  2. console.log(AbrirPagina);
  3. undefined
  4.  
  5. function AbrirPagina(Tipo) {  
  6.    
  7.  
  8.     if (Tipo == 'Pagina1') {
  9.         window.open('www.pagina1.com/enlace.php');
  10.     }
  11. }

Veo que debo aprender más a manejar la consola en IE... sino me pones como poner el console.log(AbrirPagina); estaría dando vueltas por internet :/

Saludos!!
  #6 (permalink)  
Antiguo 11/03/2014, 12:19
Colaborador
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 3.648
Antigüedad: 10 años, 8 meses
Puntos: 578
Respuesta: Problemas con referencias a otras páginas

Pues prueba a poner la URL completa:

http://www.pagina1.com/enlace.php

Aun así me extraña que no de ningún error.
  #7 (permalink)  
Antiguo 11/03/2014, 13:02
Avatar de Middrel  
Fecha de Ingreso: abril-2005
Mensajes: 835
Antigüedad: 19 años
Puntos: 27
Respuesta: Problemas con referencias a otras páginas

Estoy viendo el código completo de enlace.php...

Código PHP:
<?
    session_start
();
    include (
'conectabd.php');
    
$coneccion=conectarse();
?>
Código Javascript:
Ver original
  1. <script language="javascript1.1">
  2.     if (document.referrer.indexOf("www.pagina2.com") > -1){
  3.  
  4.         location.href='enlace.php?oaraebtraraqyu=www.pagina2.com';
  5.     }
  6.     </script>

Código PHP:
<?
    
if ($_GET['oaraebtraraqyu'] == 'www.pagina2.com'){
    
        
$selectUsuario="SELECT * FROM Usuarios WHERE  `password`='abcdefghijk'";
        
$queryUsuario=mysql_query($selectUsuario);
        
$numRegistros=mysql_num_rows($queryUsuario);
        
$datCliente=mysql_fetch_object($queryUsuario);


        if (
$numRegistros != 0){    
            
            
$_SESSION["cliente"] =$datCliente->id_Usuarios;
            
$_SESSION["clienteNomb"]=$datCliente->Clave;
            
$_SESSION["correo"]=$datCliente->Email;
            
$_SESSION["telefono"]=$datCliente->Telefono;
            
$_SESSION["empresa"]=$datCliente->Empresa;
            
$_SESSION["dof"]=$datCliente->Contenido_Dof;
            
$_SESSION["foro"]=$datCliente->Contenido_Foro;
            
$_SESSION["gaceta"]=$datCliente->Contenido_Gaceta;
            
$_SESSION["b_fiscal"]=$datCliente->Contenido_Fiscal;
            
$_SESSION["b_empresarial"]=$datCliente->Contenido_Empresarial;
            
$_SESSION["videoteca"]=$datCliente->Contenido_Videoteca;
            
$_SESSION["Admin"]=$datCliente->Admin;
            
$_SESSION["A_Contenido_Dof"]=$datCliente->A_Contenido_Dof;
            
$_SESSION["A_Cursos"]=$datCliente->A_Cursos;
            
$_SESSION["A_Banners"]=$datCliente->A_Banners;
            
$_SESSION["A_Foro"]=$datCliente->A_Foro;
            
$_SESSION["A_Usuarios"]=$datCliente->A_Usuarios;
        }
?>
Código Javascript:
Ver original
  1. <script language="javascript1.1">
  2.         location.href='main.php';
  3.     </script>
Código PHP:
<?
    
}
?>
Utilicé un var_dump($_GET) para ver que valor traía, pero llegó vacío :/

De igual forma, veo que no es muy necesario hacerlo con Javascript, sólo lo usan para redireccionar, podría ser puro PHP en está página.
  #8 (permalink)  
Antiguo 11/03/2014, 17:10
Avatar de Middrel  
Fecha de Ingreso: abril-2005
Mensajes: 835
Antigüedad: 19 años
Puntos: 27
Respuesta: Problemas con referencias a otras páginas

Realicé la siguiente prueba:

console.log(document.referrer.indexOf("www.pagina2 .com"));

Tanto en Chrome, IE y Firefox...

En IE me da este resultado:


Cita:
La Consola JavaScript está conectada y acepta comandos.
console.log(document.referrer.indexOf("www.pagina2 .com"));
-1
undefined
y en Firefox y Chrome me da lo siguiente:


Cita:
La Consola JavaScript está conectada y acepta comandos.
console.log(document.referrer.indexOf("www.pagina2 .com"));
7
undefined
entonces, sí la función dice:

Código Javascript:
Ver original
  1. if (document.referrer.indexOf("www.pagina2.com") > -1){
  2.     location.href='enlace.php?oaraebtraraqyu=www.pagina2.com';
  3. }

si es mayor a menos uno que vaya a la siguiente dirección, en caso contrario no hace nada. Por ello IE no me envía a donde necesito.

Ahora, no sé porque en Firefox y Chrome me da 7 y en IE me da -1, en estos momentos lo desconozco. Estaba pensando, pero creo que no es lo correcto, obtener el navegador actual y dependiendo de este, enviar a la url que requiero, es decir:

1. Detectar el navegador y la versión.
2. Si es Chrome, Firefox usar

Código Javascript:
Ver original
  1. if (document.referrer.indexOf("www.pagina2.com") > -1){
  2.     location.href='enlace.php?oaraebtraraqyu=www.pagina2.com';
  3. }

3. Si es IE usar:

Código Javascript:
Ver original
  1. if (document.referrer.indexOf("www.pagina2.com") = -1){
  2.     location.href='enlace.php?oaraebtraraqyu=www.pagina2.com';
  3. }

pero no sé si es lo correcto y si con explorer siempre se cumpla ese -1.

¿Alguna idea o comentario?

Saludos!!

Etiquetas: funcion, páginas, php, referencias
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 16:54.