Hola sariputra, seria bueno que encriptes las contraseñas (el campo clave_usuario) con la funcion md5 (revisa el manual). Tu consulta seria:
//define primero las longitudes de la contraseña en la base de datos.
Código PHP:
$ssql = "SELECT * FROM usuario WHERE nombre_usuario='$usuario' and MD5(clave_usuario)=MD5('$contrasena')";
Luego en tu archivo : aplicacion.php, tendrias que generar una nueva contraseña algo asi como esto:
Código PHP:
$nueva_contraseña = substring(md5(uniqid(rand())),5); //le creamos una nueva de longitus 5.
enviarle a si mail la nueva contraseña y luego cambiar en la base de datos:
Código PHP:
$new_password = substring(md5($nueva_contraseña),10); //digamos que la longitus sea 10.
$id_inicial = $_session['id'];
mysql_query("update usuario set clave_usuario='$new_password'" WHERE id='$id_inicial'");
Esto supone que cuando ingreso, se inicio una sesion a base de su id del usuario.
Ojala que te sirva,

.
Saludos
Gildus