Básicamente sería así:
Código PHP:
<?php
// haces la conexión con la BD.(yo lo obvio aquí)
// incluyes la definición de la función genera_password().(yo lo obvio aquí)
$contrasena = genera_password(8);// de 8 caracteres (o lo que quieras)
$sql = "UPDATE tabla SET campo_password = '$contrasena' WHERE campo_email='".$_POST['email']."'";
mysql_query($sql) or die("error en <b>$sql</b> :::". mysql_error());
if(mysql_affected_rows() == 1){// si hay una fila afectada (o sea si el email existe en la BD)
mail ( $_POST['email'], "nuevo password", "su nuevo password es: $contrasena");
}
?>
Saludos