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

 

 


Tema destacado: AIO elhacker.NET 2021 Compilación herramientas análisis y desinfección malware


+  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 1,812 veces)
Leguim


Desconectado Desconectado

Mensajes: 719



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.850



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: 719



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 5,677 Último mensaje 16 Diciembre 2007, 13:00 pm
por Shaddy
[Pregunta]: Escucho sugerencias (Validar email)
Desarrollo Web
Leguim 5 2,120 Último mensaje 1 Octubre 2019, 19:18 pm
por #!drvy
[Pregunta]: Escucho sugerencias (Validar email) PARTE 2
Desarrollo Web
Leguim 2 1,758 Último mensaje 2 Octubre 2019, 05:28 am
por Leguim
[Pregunta]: Aplicación tiempo real (Sugerencias)
Desarrollo Web
Leguim 3 3,067 Último mensaje 10 Octubre 2019, 03:01 am
por MinusFour
[Pregunta]: Optimizar tabla notificaciones.
Desarrollo Web
Leguim 1 2,186 Último mensaje 21 Mayo 2021, 13:35 pm
por Serapis
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines