Mira, disculpa pero estoy en mi trabajo, este lo saqué de este mismo foro:
    
Código PHP:
Ver original<?
 
$keychars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVW XYZ0123456789";
$length = 16;
 
$randkey = "";
 
for ($i=0;$i<$length;$i++) {
}
 
echo $randkey;
 
?>
  
De ese modo obtienes un random de 16 caracteres, si quieres mas o menos modificas el valor numerico de esta variable: $length = 
16; 
Luego metes la variable $randkey en la query asi guardas el dato y lo envias por email. 
Saludos,
Gustavo.