
25/09/2006, 09:37
|
| | Fecha de Ingreso: octubre-2005
Mensajes: 778
Antigüedad: 19 años, 5 meses Puntos: 1 | |
Búsquedas con LIKE en php+mysql no valida bien.. Digo esto porque he accesado datos inválidos o que no existen en la base de datos. Me explico :
Tengo una base de datos llamada "tramites", y su table de "usuarios" con los campos : usuario(varchar : 12), clave(varchar : 12), privilegio(char : 1).
Realizo la búsqueda en el script :
$conexion_host_tramites = mysql_connect("localhost", "root", "root");
mysql_select_db("tramites", $conexion_host_tramites);
$consulta_usuarios = mysql_query("SELECT * FROM usuarios WHERE usuario LIKE '%$usuario%' AND clave LIKE '%$clave%'", $conexion_host_tramites);
if ($reg_actual = mysql_fetch_array($consulta_usuarios))
$privilegio = $row->privilegios;
else
echo "<DIV align='center'>Error...usuario o clave incorrecta</DIV>";
Los datos del usuario en la tabla "usuarios" son los siguientes :
Registro 1 :
usuario : jglorenzos
clave : lorenzos
Registro 2 :
usuario : lorenzo
clave : loren
Bueno, la validación con "LIKE", permite accesar con usuario = "jglorenzo" y clave=lorenzo, y no debería porque no es válido, solamente por una letra al final del datos.
Porqué valida esto si es incorrecto? |