login en php y mysql como comparar datos en la DB para poder loguearse

gfxgfx
 
Bienvenido(a), Visitante. Favor de ingresar o registrarse.
¿Perdiste tu email de activación?

Ingresar con nombre de usuario, contraseña y duración de la sesión
 
gfx gfx
gfx
21208 Mensajes en 4872 Temas por 20720 Usuarios - Último usuario: vkqiilptye Mayo 20, 2012, 03:25:52
*
gfx*InicioAyudarssBuscarCalendarioIngresarRegistrarsegfx
gfxgfx
0 Usuarios y 1 Visitante están viendo este tema.       « anterior próximo »
Páginas: [1] Ir Abajo Imprimir
Autor Tema: login en php y mysql como comparar datos en la DB para poder loguearse  (Leído 1597 veces)
bendroide
Super Usuario
***
Desconectado Desconectado

Mensajes: 364


"YO BANCO EL EGO TEAM"


Ver Perfil WWW
login en php y mysql como comparar datos en la DB para poder loguearse
« en: Octubre 12, 2011, 23:39:05 »

hola gente de hdl,
 tengo una duda estoy haciendo un sistema de registro de usuarios en php




entonces como puedo comparar los users registrados al momento de loguearse y entrar al carrito, es un carrito de compras
la otra es como puedo encriptar los password y almacenar los password encriptados  en la db , saludos...

Código
Code (php):
<?php
//se crea la conexion
$db = mysql_connect("localhost", "root", "");
 
//se conetcta a la base de datos
$declarar = mysql_select_db("usuario", $db);
 
 
$usuario = $_POST['nombre'];
$pass = $_POST['pwd'];
$correo=$_POST['correo'];
//creamos uns consulta a la tabla en la base de datos
$consulta = mysql_query("
INSERT INTO `usuario`.`cliente` (
`id` ,
`nombre` ,
`pass`,
`correo`
)
VALUES (
NULL , '"
. $usuario . "', '" . $pass . "', '" . $correo . "'
);"

);
 
mysql_close($db);
 
header('Location: index.html')

ese es el code para registrar usuarios,

saludos gente de hdl SmileySmiley
En línea

www.bengeekside.blogspot.com



Muchas, pero muchas muchas gracias raikosx por la firma:)
taul
HdL Beta
***
Desconectado Desconectado

Mensajes: 485



Ver Perfil WWW
Re: login en php y mysql como comparar datos en la DB para poder loguearse
« Respuesta #1 en: Octubre 13, 2011, 03:40:49 »

pedaso de culiao llegas a subir ese code a algun server y te hago un drop db...fixea eso por favor.
En línea

C Nuestro, q estas en la Memoria,Compilado sea tu código,venga a nosotros tu software,carguense tus punteros.así en la RAM como en el Disco Duro,Danos hoy nuestro Array de cada día,Perdona nuestros Warnings,así como nosotros también los eliminamos,
no nos dejes caer en Bucles,y libranos del Windows
[u]nsigned
Moderator
*****
Desconectado Desconectado

Mensajes: 341


Download profile...


Ver Perfil
Re: login en php y mysql como comparar datos en la DB para poder loguearse
« Respuesta #2 en: Octubre 13, 2011, 10:21:42 »

Mas allá de los temas de seguridad (XSS, SQLi, RFI, etc)...lo mas usado en php para cifrar contraseñas es MD5
En línea



No me interesa romper ventanas, me interesa criar pingüinos
y0m4357r0
Principiantes
*
Desconectado Desconectado

Mensajes: 115


Ver Perfil
Re: login en php y mysql como comparar datos en la DB para poder loguearse
« Respuesta #3 en: Octubre 13, 2011, 12:25:10 »

Hola bendroide, no le des bolilla a los locos esto, mi consejo primero hace que ande y despues le metemos seguridad.. Si le llevaria el apunte a undesign, de guardar la pass en md5. PHP tiene una funcion para esto, directamente cuando haces que es md5($variable);

lo haces de la siguiente manera:

$pass = md5($_POST['pwd']);

Lo bueno de eso que te lo convierte a md5 y dps lo asignamos a la variable para que lo guarde, y se guarda encriptado en un codigl alfanumerico de 32 caracteres creo que era... y es un algoritmo que no tiene vuelta atras, entonces si el que esta mas arriba que dijo que te iba a hackear te hackea y te roba la db, el pass va a estar encriptado y no le sirve de mucho..

ahora vamos con lo tuyo, hacer el login:

Código
Code (php):
<?php
//se crea la conexion
$db = mysql_connect("localhost", "root", "");
 
//seleccionamos la db
$declarar = mysql_select_db("usuario", $db);
 
 
$usuario = $_POST['usuario'];
$pass = md5($_POST['contrasena']);
 
//creamos uns consulta a la tabla en la base de datos
$consulta = mysql_query("SELECT id, nombre, pass, correo FROM nombreTabla WHERE nombre = '$usuario'");
if($reg == mysql_fetch_array($consulta))
{
    if($pass == $reg['pass'])
    {
         $_SESSION['id'] = reg['id'];
         $_SESSION['nombre'] = reg['nombre'];
         $_SESSION['correo'] = reg['correo'];
         echo "Gracias por utilizar nuestro servicio";
    }
    else
    {
          echo "PASS INCORRECTO";
    }
}
else
{
      echo "Registrate o pone bien los dedos en el teclado";
      header('Location: index.html')
}
 

No lo probe pero ahi deberia andar! Cheesy Saludos..
« Última modificación: Octubre 13, 2011, 12:27:16 por y0m4357r0 » En línea
bendroide
Super Usuario
***
Desconectado Desconectado

Mensajes: 364


"YO BANCO EL EGO TEAM"


Ver Perfil WWW
Re: login en php y mysql como comparar datos en la DB para poder loguearse
« Respuesta #4 en: Octubre 13, 2011, 16:08:11 »

pedaso de culiao llegas a subir ese code a algun server y te hago un drop db...fixea eso por favor.
y si parece a los 2codigos bien escritos del canal de cordoba que defaseaste jajaja xD

si ya los guarde con md5 encriptados
Gracias y0m4357r0 , tome en cuanta lo que aportas

saludos gente de hdl Cheesy
En línea

www.bengeekside.blogspot.com



Muchas, pero muchas muchas gracias raikosx por la firma:)
y0m4357r0
Principiantes
*
Desconectado Desconectado

Mensajes: 115


Ver Perfil
Re: login en php y mysql como comparar datos en la DB para poder loguearse
« Respuesta #5 en: Octubre 13, 2011, 16:55:41 »

De nada!  Smiley Despues contanos si anda, te paso una funcion chomaza que hice una vez que puede llegarte a ser de utilidad, sirve para comprobar si una cadena es correcta.. Simplemente lo que hace es recibir 4 parametros: cadena a comprobar, simbolos que se permiten, longitud min y longitud max.. Si es correcta la cadena osea si contiene solo caracteres que estan dentro de la cadena $permitidos que se define dentro de la funcion, devuelve true y sino un false...

es para asegurarte que no venga nadie y te meta un <?php echo "CODIGO MALICIOSO"; ?>

Código
Code (php):
function comprobarCadenaAviso($string, $permitidos,$longitudMin, $longitudMax) {//Esta funcion lo uqe hace es comprobar que una cadena no tenga ningun caracter raro. si tiene algo raro devuelve false, si tiene letras, o algun caracter opcional que le mandamos por paramaetro, todo ok! ;)
   //compruebo que el tamaño del string sea válido.
   if (strlen($string) < $longitudMin || strlen($string) > $longitudMax) {
       return false;
   }
 
   //compruebo que los caracteres sean los permitidos
if($permitidos == 'todos') $permitidos = "\r\n
abcdefghijklmnñopqrstuvwxyzABCDEFGHIJKLMNÑOPQRCSTUVWXYZº)(.,:;-_¡!¿?@1234567890+áéíóúÁÉÍÓÚÜü$ "
;
if($permitidos == 'localidad') $permitidos = "abcdefghijklmnñopqrstuvwxyzABCDEFGHIJKLMNÑOPQRCSTUVWXYZ1234567890áéíóúÁÉÍÓÚ ";
if($permitidos == 'tel') $permitidos = "-1234567890 ";
 
   for ($i = 0; $i < strlen($string); $i++) {
       if (strpos($permitidos, substr($string, $i, 1)) === false) {
           $GLOBALS['mensaje'] = "Error en el campo que introdujo: " . $string;
           return false;
       }
   }
   return true;
}
 

yo use 2 variantes de esta funcion, una definiendo la variable permitidos de acuerdo a lo que meta como parametro, y la otra que me fue de utilidad una vez fue declarando como permitidos letras mayusuculas y minusculas por ejemplo, y concatenandole simbolos que los recibo por parametro en la variable $permitidos..

Saludos!
En línea
bendroide
Super Usuario
***
Desconectado Desconectado

Mensajes: 364


"YO BANCO EL EGO TEAM"


Ver Perfil WWW
Re: login en php y mysql como comparar datos en la DB para poder loguearse
« Respuesta #6 en: Octubre 13, 2011, 22:13:33 »

Bastante inseguro, pero bueno es como un buen inicio, saludos

http://bit.ly/p6xNoh
En línea

www.bengeekside.blogspot.com



Muchas, pero muchas muchas gracias raikosx por la firma:)
snf
Administrator
*****
Desconectado Desconectado

Mensajes: 692


Ver Perfil
Re: login en php y mysql como comparar datos en la DB para poder loguearse
« Respuesta #7 en: Octubre 14, 2011, 14:11:15 »

Creo que md5 asi nomas, ya no es recomendable, es casi como guardarlo en texto plano :p.
Lo ideal seria usar un hash salteado, no se si esta funcion se usa, pero parece la recomendable: http://php.net/manual/en/function.crypt.php , ahi hay un ejemplo de como usar el salt.
En línea

Posts "interesantes"
================
Que es una shellcode?
Bad chars y encoders/decoders en payloads

El tiempo es un gran profesor, pero lamentablemente mata a todos sus alumnos.
y0m4357r0
Principiantes
*
Desconectado Desconectado

Mensajes: 115


Ver Perfil
Re: login en php y mysql como comparar datos en la DB para poder loguearse
« Respuesta #8 en: Octubre 14, 2011, 20:57:18 »

Sabes que hago yo en mis script para aumentar la seguridad de encriptacion? agarro el email y la contraseña los concateno y los convierto a md5 y lo guardo, entonces cada vez que ponen el email y pass para ingresar los concateno, los convierto a md5 y dps comparo! Cheesy
En línea
gfx
Páginas: [1] Ir Arriba Imprimir 
gfx
Ir a:  
gfx
Powered by SMF 1.1.16 | SMF © 2006, Simple Machines
HDL Group hackers

gfx