Foros del Web » Programando para Internet » PHP »

Autentificación y DDBB

Estas en el tema de Autentificación y DDBB en el foro de PHP en Foros del Web. Tengo un script de autentificación que recibe de un form GET un usuario y una contraseña, y comprueba si son correctos. Si los datos están ...
  #1 (permalink)  
Antiguo 30/06/2006, 17:47
Avatar de Netfrank  
Fecha de Ingreso: marzo-2006
Ubicación: Las Talitas - Tucumán
Mensajes: 226
Antigüedad: 18 años, 1 mes
Puntos: 3
Autentificación y DDBB

Tengo un script de autentificación que recibe de un form GET un usuario y una contraseña, y comprueba si son correctos.
Si los datos están bien, redirige a un panel de control. Sino me devuelve al login.

El código es el siguiente:
Código PHP:
<?
$Usuario
=$HTTP_GET_VARS["usuario"]; 
//veo si el usuario y contraseña es váildo 
if ($_GET["usuario"]=="Usuario" && $_GET["contrasena"]=="contr987654"){ 
    
//usuario y contraseña válidos 
    //defino una sesion y guardo datos 
    
session_start(); 
    
$_SESSION["autentificado"]= "SI"
    
header ("Location: administrar_perfiles.php?usuario=$Usuario"); 
}else { 
    
//si no existe le mando otra vez a la portada 
    
header("Location: contactos_update_login.php?errorusuario=si"); 

?>
Lo que necesito es que me lo arreglen para obtener los datos consultando una tabla.

Gracias.
  #2 (permalink)  
Antiguo 30/06/2006, 17:53
Avatar de spider_boy  
Fecha de Ingreso: diciembre-2003
Ubicación: Chile
Mensajes: 1.855
Antigüedad: 20 años, 4 meses
Puntos: 89
A ver...

Código PHP:
<?
$usuario
=$_GET["usuario"]; 
$usuario addslashes($usuario); // para evitar el típico ' or '1'='1
$usuario htmlentities($usuario); // para evitar los carácteres html

$pass $_GET['contrasena'];
$pass addslashes($pass);
$pass htmlentities($pass);

//veo si el usuario y contraseña es váildo 
$query mysql_query("SELECT usuario, contrasena FROM usuarios WHERE usuario='$usuario'");
$row mysql_fetch_assoc($query);

if (
$usuario==$row['usuario'] && $pass==$row['contrasena']){ 
    
//usuario y contraseña válidos 
    //defino una sesion y guardo datos 
    
session_start(); 
    
$_SESSION["autentificado"]= "SI"
    
header ("Location: administrar_perfiles.php?usuario=$usuario"); 
}else { 
    
//si no existe le mando otra vez a la portada 
    
header("Location: contactos_update_login.php?errorusuario=si"); 

?>
aunque te recomendaría 100% post, así puedes limitar la cantidad de carácteres a ingresar y evitar posibles inyecciones :)... espero te haya ayudado
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 19:02.