hola amigos habra la manera de verificar con ajax si la sesion que se creo con php esta activa, es decir
si doy click aun link antes de cargar la pagina me diga si la session ya caduco
saludos
espero sus comentarios amigos
| ||||
Re: verficar sesion de php al oprimir un href 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: |
| ||||
Re: verficar sesion de php al oprimir un href 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 |
| ||||
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: |
| ||||
Re: verficar sesion de php al oprimir un href 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 |
| ||||
Re: verficar sesion de php al oprimir un href 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 |
| ||||
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 ;) |
| ||||
Respuesta: verficar sesion de php al oprimir un href 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/05/2008 a las 10:22 |
| ||||
Respuesta: verficar sesion de php al oprimir un href 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/05/2008 a las 11:27 |
| ||||
Respuesta: verficar sesion de php al oprimir un href
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 |
| ||||
Respuesta: verficar sesion de php al oprimir un href 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 |
| ||||
Respuesta: verficar sesion de php al oprimir un href 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 |
| ||||
Respuesta: verficar sesion de php al oprimir un href 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 ;) |
| ||||
Respuesta: verficar sesion de php al oprimir un href 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/05/2008 a las 09:04 |