Foros del Web » Programando para Internet » Jquery »

[SOLUCIONADO] login con $(document).on("pagebeforeshow","#page4",function( )) no funciona bien

Estas en el tema de login con $(document).on("pagebeforeshow","#page4",function( )) no funciona bien en el foro de Jquery en Foros del Web. Les queria hacer una consulta resulta que estoy creando una pagina pero necesito que la persona que entra tenga que logearse ya realice la base ...
  #1 (permalink)  
Antiguo 10/07/2015, 13:02
 
Fecha de Ingreso: julio-2015
Mensajes: 10
Antigüedad: 9 años, 4 meses
Puntos: 0
Pregunta login con $(document).on("pagebeforeshow","#page4",function( )) no funciona bien

Les queria hacer una consulta resulta que estoy creando una pagina pero necesito que la persona que entra tenga que logearse ya realice la base de datos con una tabla (usuario y el password ) en php cree un PHP con varables

$_SESSION['logueado'] = true;
$_SESSION['usuario'] = $usuario;

el problema que tengo es el siguiente estoy utilizando jquery mobil "<div data-role="page" id="page4">"

lo que quiero es que la persona no pueda entrar directamente a las paginas sin estar logeado, traté de hacer esto:

$(document).on("pagebeforeshow","#page4",function( )){
comprobarLogin();
});

comprobarLogin() es una funcion que realiza un post ajax y recibe si esta logeado el nombre de usuario y el valor de logeado true o false.
el problema que veo es que algunas veces la pagina carga y despues que se termina de comprobar el post saca a la persona si no esta registrada. Pero la pagina si la alcanza a mostrar.

Creo que debe haber alguna forma mejor de acerlo, alguine me podria decir el truco?
  #2 (permalink)  
Antiguo 10/07/2015, 18:55
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años
Puntos: 977
Respuesta: login con $(document).on("pagebeforeshow","#page4",function( )) no funcion

Bienvenido a FDW.

No hace falta realizar ninguna petición asíncrona (Ajax), basta con que hagas la comprobación al cargar el archivo.

Código PHP:
Ver original
  1. //Inicias/Recuperas la sesión
  2.  
  3. //Si no se ha identificado
  4. if (!$_SESSION['logueado']){
  5.     //Lo redireccionas hacia la página de identificación
  6.     header('Location: paginadelogin.php');
  7. }
  8.  
  9. //Caso contrario, muestras la página

Lo anterior debe de ir al inicio de cada archivo PHP de tu página/aplicación web.

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #3 (permalink)  
Antiguo 12/07/2015, 19:07
 
Fecha de Ingreso: julio-2015
Mensajes: 10
Antigüedad: 9 años, 4 meses
Puntos: 0
Respuesta: login con $(document).on("pagebeforeshow","#page4",function( )) no funcion

Quisiera hacer una consulta el codigo php no puede ser visto desde el usuario, osea que no se comprometeria nada si obtengo una clave por alli, como $_SESSION['password']?
  #4 (permalink)  
Antiguo 12/07/2015, 21:36
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años
Puntos: 977
Respuesta: login con $(document).on("pagebeforeshow","#page4",function( )) no funcion

Necesitas leer un manual de PHP.

Debes de saber que PHP es un lenguaje que se ejecuta en el lado del servidor, lugar al cual el usuario no tiene acceso desde el navegador web, por lo tanto, a priori, no tendría de qué preocuparte trabajando con sesiones. Hay formas en las que podrían obtener información, aunque quien lo intente tendría que ser alguien que sepa sobre seguridad informática, pero, ¿por qué vas a guardar la contraseña en la sesión? Con que guardes un código identificador sería suficiente para autentificar al usuario.

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #5 (permalink)  
Antiguo 13/07/2015, 16:31
 
Fecha de Ingreso: julio-2015
Mensajes: 10
Antigüedad: 9 años, 4 meses
Puntos: 0
Respuesta: login con $(document).on("pagebeforeshow","#page4",function( )) no funcion

Cita:
Iniciado por Alexis88 Ver Mensaje
Necesitas leer un manual de PHP.

Debes de saber que PHP es un lenguaje que se ejecuta en el lado del servidor, lugar al cual el usuario no tiene acceso desde el navegador web, por lo tanto, a priori, no tendría de qué preocuparte trabajando con sesiones. Hay formas en las que podrían obtener información, aunque quien lo intente tendría que ser alguien que sepa sobre seguridad informática, pero, ¿por qué vas a guardar la contraseña en la sesión? Con que guardes un código identificador sería suficiente para autentificar al usuario.

Saludos
Pues la idea seria utilizar esa contraseña para poder conectar a un basa de datos creada para ese cliente.
Y estube leyendo sobre lo que me contaste y si encontre la misma respuesta solo se pueden ver los echo, el resto del codigo no. Sin embargo tengo otra pregunta resulta que me puse a organizar mi codigo creando un documento con nombre Javascrp.js y pegando todas la funciones, el prblema que se me presento es que si coloco lo sigueinte dentro del html

$(document).on("pagebeforeshow",function(event){
alert("fired!");
});

me funciono bien cada ves que abro una pagina me da esa alert, pero ahora que la coloque en un documento aparte no la ejecuta.
ya la coloque la ruta en el encabezado es mas todas las otras funciones las ejecuta pero esa no,

<link rel="stylesheet" href="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css" />
<script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
<script type="text/javascript" src="Archivos/scripts/Javascrp.js"></script>
<script src="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>
  #6 (permalink)  
Antiguo 14/07/2015, 00:14
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años
Puntos: 977
Respuesta: login con $(document).on("pagebeforeshow","#page4",function( )) no funcion

El evento pagebeforeshow es parte de jQuery Mobile, pero tú incluyes a dicha librerías después del archivo con las funciones. Corrige eso.

Por otro lado, eso de que el cliente "cree" la base de datos y por eso necesites su contraseña, no me parece lo más adecuado. Lo usual es que el usuario pueda almacenar datos asociados a su código identificador y más adelante pueda acceder a ellos luego de haberse identificado. Creo que tienes que replantear el diseño de lo que pretendes hacer, a menos de que nos expliques más al respecto y así podamos orientarte mejor.

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #7 (permalink)  
Antiguo 14/07/2015, 09:34
 
Fecha de Ingreso: julio-2015
Mensajes: 10
Antigüedad: 9 años, 4 meses
Puntos: 0
Respuesta: login con $(document).on("pagebeforeshow","#page4",function( )) no funcion

Si me gustaria un poco de ayuda la verdad no se si lo que estoy haciendo esta del todo bien, la idea es la siguiente:

La idea seria crear una pagina de registro la cual cree una base de datos para cada usuario de forma independiente. aunque viendolo bien utilizando $_SESSION, puedo crear un $_SESSION['nombrebasededatos'] y $_SESSION['contraseña'], de esta forma no tendria que llamarlo cada vez que necesite hacer una consulta.

Etiquetas: html, login, mobil
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 10:00.