Carlos, me parece que estas teniendo un conflicto interno :P, relee todo lo explicado, o entendé como funciona
md5. Esta todo explicado arriba como debería funcionarte la aplicación.
PD:
mayerly, lo que propones es ilógico, la idea de usar md5 es darle al usuario la seguridad de no obtener de ninguna manera su pass, es mas, no tiene mucho sentido pasarlo por md5 sin una "sal" como lo esta haciendo Carlos (ej, Mal o no del todo seguro: md5($pass) Correcto o mas seguro: md5($pass.$sal), habiendo variantes mas complejas ), así, aún teniendo la db es casi imposible por brutal force obtener algún dato.