Cita:
Iniciado por Cluster Haz un echo a tu $password antes de tu UPDATE para ver si hay problemas con tu consulta SQL o es de la función que no sea tan "aleatória".
Pues parece que no es tan aleatoria... porque la semilla de generación aleatoria la toma de time()...
time() devuelve la hora actual (en TimeStamp...) con una precisión de segundos. Si el script se ejecuta en menos de un segundo.... todos tendrán el mismo password. Y si se ejecuta en más de un segundo.. habrá bloques enteros de usuarios con passwords iguales por cada segundo de ejecución.
O sea que en este caso sí es recomendable utilizar una función como rand() en lugar o junto con el time() dentro de la función genera_password().
Podría ponerse por ejemplo:
md5(time()+rand())
o simplemente:
md5(rand())
saludos
PD: ojo que para utilizar la función rand() así directamente se necesita una versión de PHP >= 4.2.0. En versiones menores habrá que inicializar la semilla del generador de números aleatorios. (ver manual
http://www.php.net/rand)