Foros del Web » Programando para Internet » PHP » Frameworks y PHP orientado a objetos »

PHP OO Esta bien esta clase de login ?

Estas en el tema de Esta bien esta clase de login ? en el foro de Frameworks y PHP orientado a objetos en Foros del Web. Estoy iniciandome en la POO (la cual no logró comprender :( ), y me he propuesto desarrollar una función que me permita manejar los eventos ...
  #1 (permalink)  
Antiguo 09/09/2011, 16:53
Avatar de BaByRoDrI  
Fecha de Ingreso: julio-2009
Ubicación: Mexico
Mensajes: 60
Antigüedad: 14 años, 9 meses
Puntos: 1
Pregunta Esta bien esta clase de login ?

Estoy iniciandome en la POO (la cual no logró comprender :( ), y me he propuesto desarrollar una función que me permita manejar los eventos clasicos de un sistema de login (registro, entrada, salida), me ha rsultado esto:

Código PHP:
Ver original
  1. <?php
  2.    
  3.     class usuario
  4.     {
  5.    
  6.         function debug_mail($correo)
  7.         {
  8.             if(filter_var($correo, FILTER_VALIDATE_EMAIL)) {
  9.                 return $correo;
  10.             } else {
  11.                 return 0;
  12.             }
  13.         }
  14.    
  15.         function debug_db($dato)
  16.         {
  17.                 $dato = mysql_real_escape_string($dato);
  18.                 return $dato;
  19.         }
  20.        
  21.         function registrar($usuario, $correo, $password)
  22.         {
  23.             if (isset($usuario)) {
  24.                 if(isset($password)) {
  25.                     if(isset($correo)) {
  26.                         if ($this->debug_mail($correo) != 0) {
  27.                        
  28.                         $usuario = $this->debug_db($usuario);
  29.                
  30.                         @include("config.db.php");
  31.                         $consulta = mysql_query("INSERT INTO soirausu VALUES ('$usuario', '$password', '$correo')");
  32.                         @mysql_close($conexion);
  33.                        
  34.                         } else { return "Correo invalido, intente de nuevo"; }
  35.                     } else { return "Debe introducir un correo"; }
  36.                 } else { "Debe introducir una contraseña"; }
  37.             } else { "Debe introducir un usuario"; }
  38.         }
  39.        
  40.         function confirmar()
  41.         {
  42.            
  43.         }
  44.    
  45.         function entrar($usuario, $password)
  46.         {
  47.             if(isset($usuario)) {
  48.                 if(isset($password)) {
  49.                
  50.                     $usuario = $this->debug_db($usuario);
  51.                     $password = $this->debug_db($password);
  52.                    
  53.                     @include("config.db.php");
  54.                     $consulta = mysql_query("SELECT id, usuario FROM soirausu WHERE usuario = '$usuario'");
  55.            
  56.                     while($fila = mysql_fetch_array($consulta)) { $passwd = $fila['password']; }
  57.                    
  58.                     @mysql_close($conexion);
  59.                    
  60.                     if ($password == $passwd) {
  61.                         $_SESSION['usuario'] = $usuario;
  62.                         return "OK";
  63.                     } else {
  64.                         return "Contraseña incorrecta";
  65.                     }
  66.                 } else {
  67.                     return "Debe introducir una contraseña";
  68.                 }
  69.             } else {
  70.                 return "Debe introducir un usuario";
  71.             }
  72.         }
  73.        
  74.         function salir()
  75.         {
  76.             session_destroy();
  77.         }
  78.        
  79.     }
  80. ?>

No se si me puedan dar recomendaciones y alguno que otro manual de POO, porque aunque he leido algunos sigo sin entender...
  #2 (permalink)  
Antiguo 11/09/2011, 19:00
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Esta bien esta clase de login ?

Creo no esta bien diseñada tu clase, recuerda que una de las principales ventajas de la POO, es la encapsulación, y tu clase usa muchas cosas de todo en la misma, muchos métodos se podrían separar en otras clases, y podrías delegar funcionalidades a otras cosas.

Saludos.

Etiquetas: clase, login, php
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 15:47.