Ver Mensaje Individual
  #1 (permalink)  
Antiguo 21/05/2013, 21:33
Avatar de bowiecamaleon
bowiecamaleon
 
Fecha de Ingreso: mayo-2013
Ubicación: Mexico
Mensajes: 15
Antigüedad: 11 años, 6 meses
Puntos: 1
Mi sistema de Login con cookie (aporte para checar errores)

Hola soy nuevo en esto del php, pero no en programar, solo que ya tenia años de no hacerlo, c++ y visual basic.

Navegando por la red, recolectando codigos fuentes hice mi propia version, con conexion a mysql y con cookies para recordar.

Solo tengo algunas dudas

Código PHP:
<?php 
include("includes/conexion.php"); // Se incluye conexion a la base de datos
include("includes/Evitar-inyeccion.php"); // Se incluye funcion para evitar inyecciones
include("includes/fechas.php");// Funcion Fecha
session_start();// Se inicia el session_star para crear las sesiones

//Array con los posibles mensajes que se presentaran.
$mensajes = array(  
        
0=>"Ingresa tus datos"
        
1=>"Falto ingresar nombre"
        
2=>"Falto ingresar contraseña"
        
3=>"Nombre de usuario no valido",
        
4=>"Contraseña no valida"
        
5=>"Bienvenido",);




//Declaracion de variables
$msg="";
$tiempodate("Y-m-d H:i:s");




// Se comprueba si ya se establecio la variable "MM_insert"
if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "Envio")) 
{
        
//Si faltan ingresar los dos campos.
        
if (($_POST["user"]=="") AND ($_POST["pass"]=="")) 
        {
            
$msg=$mensajes['0'];
        }
        
//Si falto ingresar el nombre.
        
if (($_POST["user"]=="") AND ($_POST["pass"]!="")) 
        {
            
$msg=$mensajes['1'];
        }
        
//Si falto ingresar la contraseña.
        
if (($_POST["user"]!="") AND ($_POST["pass"]=="")) 
        {
            
$msg=$mensajes['2'];
        }
        
//Si se ingresaron los dos .
        
if (($_POST["user"]!="") AND ($_POST["pass"]!="")) 
        {
            
$user       $_POST['user'];
            
$user_clear strtolower(GetSQLValueString($_POST['user'], "text"));
             
$pass_clear GetSQLValueString(md5($_POST['pass']), "text");
            
$user_end   trim(str_replace("'"""$user_clear));
            
$pass_end   trim(str_replace("'"""$pass_clear));
            
            
            
$consultasprintf("SELECT * FROM usuarios WHERE usuario = %s",$user_clear);
            
$resultadomysql_query($consulta,$conexion) or die (mysql_error());
            
$fila=mysql_fetch_array($resultado);
            
            

                    if (!
$fila[0]) //Si el usuario NO existe. 
                    
{
                    
$msg=$mensajes['3'];
                    }
                    else 
//Usuario logueado correctamente (Falta verificar contraseña)
                    
{                                
                                if(
$fila['5']!=$pass_end && $fila['3']==$user_end)//SI la contraseña no es valide
                                
{
                                        
$msg=$mensajes['4'];    
                                }
                                
                                if(
$fila['5']==$pass_end && $fila['3']==$user_end)//Si la contraseña y usuarios son validos
                                
{
                                        
$msg=$mensajes['5'];
                                         if(isset(
$_POST['checkbox'])==1
                                        {
                                                echo 
"Recuerdame"."</br>";
                                        } else {
                                                echo 
"Olvidame"."</br>";
                                        }

                                        
//Insertamos la hora de registro para informacion
                                        
$last sprintf("UPDATE usuarios SET last_date = '$tiempo' WHERE usuario =%s",$user_clear);
                                        
$inserta mysql_query($last,$conexion) or die (mysql_error());
                                        
                                        
//Definimos las variables de sesión                                        
                                          // Se comienzan a asignar los valores para el array
                                        
$ID=$fila['ID'];
                                        
$nombre=$fila['nombre']; 
                                        
$apellidos=$fila['apellidos'];
                                        
$usuario=$fila['usuario'];
                                        
$email=$fila['email'];
                                        
$pass=$fila['pass'];
                                        
$permisos=$fila['permisos'];
                                        
$imagen=$fila['imagen'];
                                        
$fecha_ingreso=$fila['fecha_ingreso'];
                                        
$last_date=$fila['last_date'];
                                        
                                        
//Se crea un array con el valor de la tabla
                                        
$mi_sesion=array(
                                            
'ID' =>$ID,
                                            
'nombre'=> $nombre,
                                            
'apellidos' => $apellidos,
                                            
'usuario'  => $usuario,
                                            
'email' => $email,
                                            
'pass' => $pass,
                                            
'permisos'=> $permisos
                                            
'imagen'  => $imagen,
                                            
'fecha_ingreso'=> $fecha_ingreso,
                                            
'last_date'=> $last_date,);
                                        
                                        
                                        
//Se creara variables de sesion de acuerdo a su nivel de usuario
                                        
switch ($mi_sesion['permisos']) {
                                              case 
'baneado':
                                              
$_SESSION['General'] = 1;
                                              
$_SESSION['mi_sesion']=$mi_sesion;
                                              
//header("Location: panel_general.php");
                                              
break;
                                              case 
'proceso':
                                              
$_SESSION['General'] = 2;
                                              
$_SESSION['mi_sesion']=$mi_sesion;
                                              
//header("Location: panel_general.php");
                                              
break;
                                              case 
'usuario':
                                              
$_SESSION['General'] = 3;
                                              
$_SESSION['mi_sesion']=$mi_sesion;
                                              
//header("Location: panel_general.php");
                                              
break;
                                              case 
'escritor':
                                              
$_SESSION['General'] = 4;
                                              
$_SESSION['mi_sesion']=$mi_sesion;
                                              
//header("Location: panel_general.php");
                                              
break;
                                              case 
'master':
                                              
$_SESSION['General'] = 5;
                                              
$_SESSION['mi_sesion']=$mi_sesion;
                                              
//header("Location: panel_general.php");
                                              
break;
                                              }
                                          
                      
                                        
                                }
//Fin de proceso
                    
                    
                                
                        
                        
                    
}

                
                
                
        }




}
?>