si doy click aun link antes de cargar la pagina me diga si la session ya caduco
saludos
espero sus comentarios amigos
|
|
#1 (permalink) |
![]() Fecha de Ingreso: julio-2003
Mensajes: 1.284
|
si doy click aun link antes de cargar la pagina me diga si la session ya caduco saludos espero sus comentarios amigos
__________________
gerardo |
|
|
|
|
|
#2 (permalink) |
![]() Fecha de Ingreso: marzo-2004
Ubicación: Bermio (Bizkaia)
Mensajes: 1.171
|
Pistas:
html Código HTML:
<a href="tu_url" .... onclick="return abc(this)" /> ... <div id="error"> </div>
Código:
en PHP:function abc(esto)
{
// verificar mediante ajax y guardar en variable resultado
var resultado=ajax.responseText;
if(resultado=='true')
{
location.href=esto.href;
return false;
}
else if(resultado=='false')
{
var error=document.getElementById('error');
error.innerHTML='se te caduco la sesion...';
return false;
}
}
si tiene sesion Código PHP:
Código PHP:
|
|
|
|
|
|
#3 (permalink) |
![]() Fecha de Ingreso: julio-2003
Mensajes: 1.284
|
Cita:
orale que gracias amigo pero, si no es mucha molestia
Iniciado por ZiTAL
Pistas:
html Código HTML:
<a href="tu_url" .... onclick="return abc(this)" /> ... <div id="error"> </div>
Código:
en PHP:function abc(esto)
{
// verificar mediante ajax y guardar en variable resultado
var resultado=ajax.responseText;
if(resultado=='true')
{
location.href=esto.href;
return false;
}
else if(resultado=='false')
{
var error=document.getElementById('error');
error.innerHTML='se te caduco la sesion...';
return false;
}
}
si tiene sesion Código PHP:
Código PHP:
en que parte se esta preguntando por la session y una disculpa por hacerte esta pregunta lo que pasa que en php normalmente pregunto si la sesion esta activa asi: session_start(); if ($_session("User")!=null) saludos espero sus comentarios
__________________
gerardo |
|
|
|
|
|
#4 (permalink) |
![]() Fecha de Ingreso: marzo-2004
Ubicación: Bermio (Bizkaia)
Mensajes: 1.171
|
Re: verficar sesion de php al oprimir un href
HTML
Código HTML:
<a href="pagina.php" onclick="return abc(this)">pagina</a> <div id="error" style="display:none"> </div>
Código:
sesion.phpfunction ajaxFunction()
{ var xmlHttp;
try { xmlHttp=new XMLHttpRequest();return xmlHttp; }
catch (e) { try { xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");return xmlHttp; }
catch (e) { try { xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");return xmlHttp; }
catch (e) { alert("Your browser does not support AJAX!");return false; }
}}}
function abc(esto)
{
var ajax = new ajaxFunction();
ajax.onreadystatechange=function()
{
if(ajax.readyState==4)
{
var resultado=ajax.responseText; // guardar respuesta de sesion.php en variable
if(resultado=='true')
{
location.href=esto.href; // si pagina sesion.php imprime true es que tiene sesion, por lo tanto iremos al enlace del link
return false;
}
else if(resultado
{
var error=document.getElementById('error');
error.innerHTML='Se te acabo la sesion :('; // añadimos codigo a la capa error
error.style.display='block'; // mostramos la capa, ya que esta oculta
return false;
}
}
}
ajax.open("GET","sesion.php",true);
ajax.send(null);
}
Código PHP:
|
|
|
|
|
|
#6 (permalink) |
![]() Fecha de Ingreso: julio-2003
Mensajes: 1.284
|
fijate que estoy probando el script solo modifique esta parte porque no se si te falto pornerlo el
if(resultado=='false') { var error=document.getElementById('error'); error.innerHTML='Se te acabo la sesion :('; // añadimos codigo a la capa error error.style.display='block'; // mostramos la capa, ya que esta oculta return false; } bueno el datalle es que si logra ver el mensaje cuando no hay session pero, el direccionamiento si realiza aun si no hay , que puedo hacer? saludos espero sus comentarios
__________________
gerardo |
|
|
|
|
|
#7 (permalink) |
![]() Fecha de Ingreso: julio-2003
Mensajes: 1.284
|
hola parace que se logro pero me gustaria saber tu opinion
modifique esto: original: <a href="pagina.php" onclick="return abc(this)">pagina</a> <div id="error" style="display:none"> </div> despues: <a href="#" onclick="return abc('pagina.php')">pagina</a> <div id="error" style="display:none"> y modifique esto tambien antes: if(resultado=='true') { location.href=esto.href; // si pagina sesion.php imprime true es que tiene sesion, por lo tanto iremos al enlace del link return false; } despues: if(resultado=='true') { location.href=esto; // si pagina sesion.php imprime true es que tiene sesion, por lo tanto iremos al enlace del link return false; } saludos espero tus comentarios gracias
__________________
gerardo |
|
|
|
|
|
#8 (permalink) |
![]() Fecha de Ingreso: marzo-2004
Ubicación: Bermio (Bizkaia)
Mensajes: 1.171
|
Re: verficar sesion de php al oprimir un href
te explico porque no te funciona:
1.- si pones el # en href luego no te funcionara ya que:
Código:
que hace esto:location.href=esto.href; location.href (redirecciona a pagina) esto.href (esto lo hemos pasado como this, y que es this, pues en este caso el elemento A entonces: elemento A.href (la propiedad href del elemento a pues es # y no como antes que era un enlace) Solucion? Código HTML:
<a href="#" onclick="return abc(this,'pagina.php')">pagina</a>
Código:
ya nos contaras.function abc(esto,enlace)
...
if(resultado=='true')
{
location.href=enlace;
return false;
}
PD: El elemento this se usa para enviar dicho elemento a la funcion, pero se podria usar por ejemplo el id y hacer un getElementById, eso a gusto de cada uno ;) |
|
|
|
|
|
#10 (permalink) |
![]() Fecha de Ingreso: julio-2003
Mensajes: 1.284
|
hola men aqui nuevamente molestando fijate que deseo aplicar el script pero ahora ya no usando
un href si no que una función llame a tu funcion de ajax que muy amablemente has hecho es decir asi tengo una funcion que haces unas operaciones y en las cuales quiero incluir tu funcion <script> function invocar() { resultadoA = abc(); alert(resultado ); } </script> html <input type="button" name="ver" onclick="invocar()"> que debo modificar en la funcion para ya no usar <a href="#" onclick="return abc(this,'pagina.php')">pagina</a> y saber como regresar el valor de la funcion ajax en resultadoA saludos espero tus comentarios
__________________
gerardo Última edición por chalchis; 28-may-2008 a las 10:22. |
|
|
|
|
|
#11 (permalink) |
![]() Fecha de Ingreso: julio-2003
Mensajes: 1.284
|
trate de hacer esto
esto lo puede en un archivo js function ajaxFunction() { var xmlHttp; try { xmlHttp=new XMLHttpRequest();return xmlHttp; } catch (e) { try { xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");return xmlHttp; } catch (e) { try { xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");return xmlHttp; } catch (e) { alert("Your browser does not support AJAX!");return false; } }}} function abc() { var ajax = new ajaxFunction(); ajax.onreadystatechange=function() { if(ajax.readyState==4) { var resultado=ajax.responseText; // guardar respuesta de sesion.php en variable if(resultado=='true') { //location.href=esto.href; // si pagina sesion.php imprime true es que tiene sesion, por lo tanto iremos al enlace del link //return false; return resultado;//esto fue lo que cambie } else if(resultado { //var error=document.getElementById('error'); //error.innerHTML='Se te acabo la sesion :('; // añadimos codigo a la capa error //error.style.display='block'; // mostramos la capa, ya que esta oculta //return false; return resultado;//esto fue lo que cambie } } } ajax.open("GET","sesion.php",true); ajax.send(null); } en la pagina tengo esto <script> function invocar() { resultadoA = abc(); alert(resultadoA); } </script> html <input type="button" name="ver" onclick="invocar()"> el problema es que abc me regresa indefinido que debo hacer o que se esta haciendo mal saludos espero sus comentarios amigos
__________________
gerardo Última edición por chalchis; 28-may-2008 a las 11:27. |
|
|
|
|
|
#12 (permalink) |
![]() Fecha de Ingreso: marzo-2004
Ubicación: Bermio (Bizkaia)
Mensajes: 1.171
|
Código:
Procura poner el codigo entre [*CODE*] y [*/CODE*] (sin asteriscos) ya que sino la gente ni siquiera leera el codigo (me incluyo).function ajaxFunction()
{ var xmlHttp;
try { xmlHttp=new XMLHttpRequest();return xmlHttp; }
catch (e) { try { xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");return xmlHttp; }
catch (e) { try { xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");return xmlHttp; }
catch (e) { alert("Your browser does not support AJAX!");return false; }
}}}
function abc()
{
var ajax = new ajaxFunction();
ajax.onreadystatechange=function()
{
if(ajax.readyState==4)
{
return ajax.responseText;
}
}
ajax.open("GET","sesion.php",true);
ajax.send(null);
}
function invocar()
{
var resultadoA = abc();
alert(resultadoA);
}
Prueba con esto |
|
|
|
|
|
#14 (permalink) |
![]() Fecha de Ingreso: julio-2003
Mensajes: 1.284
|
hola nuevamente he probado y me sigue marcando undefined en el alert
lo que estoy haciendo es que la funcion de ajax lo estoy insertando dentro de un js
Código:
<html>
<title>
<head>
<script type="text/javascript" src="http://sitio/directorio/Js/Verificar_sess/verificar.js"></script>
//---------
function invocar()
{
var resultadoA = abc();
alert(resultadoA);
}
</head>
<body>
<input type="button" name="ver" onclick="invocar()">
</body>
</html>
__________________
gerardo |
|
|
|
|
|
#15 (permalink) |
![]() Fecha de Ingreso: julio-2003
Mensajes: 1.284
|
hola amigos he tratado de entender esto de ajax no soy un experto
pero por lo que he podido documentar es que debo tratar la funcion en modo sincronico osea asi
Código:
y efectivamente ya obtengo el valor enfunction abc()
{
var ajax = new ajaxFunction();
ajax.open("GET","int_verificar.php",false);
ajax.send(null);
return ajax.responseText;
}
Código:
mi duda es realmente necesario hacer esto function invocar()
{
var resultadoA = abc();
alert(resultadoA);
}
ya que lei sobre esto Método Open El método open prepara una conexión HTTP a través del objeto XMLHttpRequest con un método y una URL especificados. XMLHttpRequest.open ( sMetodo, sURL [, bSincronia [, sUsuario [, sPwd ] ] ] ); sMetodo es la cadena que nos indicara el tipo de conexión (GET o POST) sURL es la url a la que realizamos la petición bSincronia es un campo booleano con el que podemos utilizar modo asíncrono o síncrono, si lo fijamos en "false" modo síncrono perderiamos las mejores características de AJAX, los datos sUsuario y sPwd son opcionales y sólo aplicables en caso de caída del servidor. eh aqui unas referencias a lo que comento http://www.webmasterworld.com/javascript/3483187.htm http://lists.evolt.org/pipermail/jav...er/011585.html http://swik.net/Ajax/How+to+use+XMLHttpRequest http://swik.net/Ajax/How+to+use+XMLHttpRequest esperos sus comentarios amigos en especial de ZiTAL ya que el me ha ayudado en este caso saludos
__________________
gerardo |
|
|
|
|
|
#16 (permalink) |
![]() Fecha de Ingreso: marzo-2004
Ubicación: Bermio (Bizkaia)
Mensajes: 1.171
|
efectiviwonder amigo, es eso, poner el parametro en false, ya que de lo contrario sigue ejecutando las lineas siguientes si lo pones en true, con false espera a que le llegue la respuesta y sigue con su funcion.
Me alegro de que lo hayas solucionado tu solo documentandote ;) |
|
|
|
|
|
#17 (permalink) |
![]() Fecha de Ingreso: julio-2003
Mensajes: 1.284
|
ok entonces no hay vuelta de hoja la funcion se que daria asi:
asi: antes:
Código:
nuevofunction ajaxFunction()
{ var xmlHttp;
try { xmlHttp=new XMLHttpRequest();return xmlHttp; }
catch (e) { try { xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");return xmlHttp; }
catch (e) { try { xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");return xmlHttp; }
catch (e) { alert("Your browser does not support AJAX!");return false; }
}}}
function abc()
{
var ajax = new ajaxFunction();
ajax.onreadystatechange=function()
{
if(ajax.readyState==4)
{
return ajax.responseText;
}
}
ajax.open("GET","sesion.php",true);
ajax.send(null);
}
Código:
gracias zital nuevamentefunction ajaxFunction()
{ var xmlHttp;
try { xmlHttp=new XMLHttpRequest();return xmlHttp; }
catch (e) { try { xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");return xmlHttp; }
catch (e) { try { xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");return xmlHttp; }
catch (e) { alert("Your browser does not support AJAX!");return false; }
}}}
//solo esto cambio
function abc()
{
var ajax = new ajaxFunction();
ajax.open("GET","int_verificar.php",false);
ajax.send(null);
return ajax.responseText;
}
saludos
__________________
gerardo Última edición por chalchis; 29-may-2008 a las 09:04. |
|
|
|
![]() |
| Herramientas | |
| Desplegado | |
|
|