elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Entrar al Canal Oficial Telegram de elhacker.net


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web (Moderador: #!drvy)
| | |-+  [Pregunta]: Sugerencias (Optimizar)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Pregunta]: Sugerencias (Optimizar)  (Leído 624 veces)
Leguim


Desconectado Desconectado

Mensajes: 661



Ver Perfil
[Pregunta]: Sugerencias (Optimizar)
« en: 2 Octubre 2019, 09:12 am »

Buenas noches,
cada vez que se carga una pagina lo que hago es verificar que dicho usuario tenga el email verificado en el caso de que no lo tenga lo enviará a x pagina...
Lo hago de la siguiente manera

Código
  1. if(users::Check_Email_Verified($_SESSION['id_user']) == false)
  2. {
  3. ?>
  4.     <script type="text/javascript">
  5.        window.location.href = 'verify_email';
  6.        </script>
  7.        <?php
  8. }
  9.  

retorna false si dicho usuario no tiene el correo verificado
retorna true si dicho usuario tiene el correo verificado

Código
  1.        function Check_Email_Verified($id_user)
  2. {
  3. $con = Connection('root', '');
  4. $query = $con->prepare('SELECT (email_verified) FROM usuarios WHERE id_user = :id_user');
  5. $query->execute(array(':id_user' => $id_user));
  6. $results = $query->fetchAll();
  7.  
  8. $result = false;
  9.  
  10. if(!empty($results))
  11. {
  12. if($results[0]['email_verified'] == 1)
  13. {
  14. $result = true;
  15. }
  16. }
  17.  
  18. return $result;
  19. }
  20.  

La alternativa que tenia en mente sería usar una $_SESSION

Código
  1. if($_SESSION['email_verified'] == false)
  2. {
  3.     [Redirige a x pagina]
  4. }
  5.  

No sabría cual debería usar si como lo hago hasta ahora realizando consultas o con una $_SESSION.

¿Cual podría ser la forma más segura y optima de hacer esto?

Muchas gracias


« Última modificación: 15 Octubre 2019, 10:54 am por #!drvy » En línea

#!drvy
Moderador
***
Desconectado Desconectado

Mensajes: 5.677



Ver Perfil WWW
Re: [Pregunta]: Sugerencias (Optimizar)
« Respuesta #1 en: 15 Octubre 2019, 10:59 am »

Yo lo que haría es que cada vez que se carga una página, se construya una sesión con los datos del usuario (nombre, fechas, correo verificado etc) y ahí dentro ya compruebas si el usuario tiene verificado o no el correo.

Además, te recomiendo que en vez de redirigir por javascript, uses cabeceras HTTP y mates la ejecución del resto del código pues le estas dando la oportunidad al usuario de ejecutar otras acciones sin antes de redirigirlo.

Código
  1. if ($_SESSION['current_user']['email_verified'] != true) {
  2.    header('Location: http://blabla.com/verifica-tu-correo');
  3.    exit;
  4. }

Saludos


En línea

Leguim


Desconectado Desconectado

Mensajes: 661



Ver Perfil
Re: [Pregunta]: Sugerencias (Optimizar)
« Respuesta #2 en: 16 Octubre 2019, 22:58 pm »

Yo lo que haría es que cada vez que se carga una página, se construya una sesión con los datos del usuario (nombre, fechas, correo verificado etc) y ahí dentro ya compruebas si el usuario tiene verificado o no el correo.

Además, te recomiendo que en vez de redirigir por javascript, uses cabeceras HTTP y mates la ejecución del resto del código pues le estas dando la oportunidad al usuario de ejecutar otras acciones sin antes de redirigirlo.

Código
  1. if ($_SESSION['current_user']['email_verified'] != true) {
  2.    header('Location: http://blabla.com/verifica-tu-correo');
  3.    exit;
  4. }

Saludos

¡Muchas gracias!
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Pregunta (MOVIDO de Sugerencias) « 1 2 »
Ingeniería Inversa
mapejorge 13 3,824 Último mensaje 16 Diciembre 2007, 13:00 pm
por Shaddy
[Pregunta]: Escucho sugerencias (Validar email)
Desarrollo Web
Leguim 5 714 Último mensaje 1 Octubre 2019, 19:18 pm
por #!drvy
[Pregunta]: Escucho sugerencias (Validar email) PARTE 2
Desarrollo Web
Leguim 2 595 Último mensaje 2 Octubre 2019, 05:28 am
por Leguim
[Pregunta]: Aplicación tiempo real (Sugerencias)
Desarrollo Web
Leguim 3 540 Último mensaje 10 Octubre 2019, 03:01 am
por MinusFour
[Pregunta]: Optimizar tabla notificaciones.
Desarrollo Web
Leguim 1 303 Último mensaje 21 Mayo 2021, 13:35 pm
por Serapis
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines