[Php-avanzado] Problema con passwords
Leonardo Tadei - Pegasus Tech Supply
leonardot en pegasusnet.com.ar
Vie Sep 10 21:14:26 ART 2010
Hola Maia,
El vie, 10-09-2010 a las 09:20 -0300, Maia Cordero escribió:
> Exacto Leo. Mi algoritmo asume que no hay dos usuario que se llamen
> igual porque eso nunca puede suceder debido a la estructura de la
> tabla
>
>
> CREATE TABLE TB_Usuarios(
> id_user tinyint unsigned not null auto_increment,
> login varchar(12) not null,
> pass char(32) not null,
> nombre varchar(50) not null,
> PRIMARY KEY (id_user),
> UNIQUE KEY usuario (login)
> ) ENGINE=InnoDB;
>
>
> Al especificar UNIQUE KEY usuario el motor me asegura que nunca van a
> existir dos nombres de usuarios que se llamen igual.
Está clarísimo, pero es una asumsión que tu programa no debería hacer,
ya que si alguien crea mal la tabla, o si se porta sin los índices de un
server a otro, o si un sysadmin distraido lo saca, tu sistema falla.
Pensá que tu software es una cosa, y la DB es otra cosa, y asumir así
porque sí que "el otro software" tenga ciertas características,
configuraciones o privilegios de acceso no tiene justificación alguna.
Un sistema, pensado como una caja negra, tiene entradas y salidas. A
veces esas entradas y salidas las generan personas, y a veces como en
este caso la generan programas: no debés confiar ni en las personas ni
en los programas para hacer un software de calidad!
http://www.google.com/search?sourceid=chrome&ie=UTF-8&q=sanitize+input
+and+output
--
Leonardo Tadei
leonardot en pegasusnet.com.ar
http://blog.pegasusnet.com.ar
Firma pública: http://www.pegasusnet.com.ar/LeonardoTadei-public.key
Más información sobre la lista de distribución Php-avanzado