Código (php) [Seleccionar]
function calcHash($num)
{
$chars = 'zaq1xsw2cde3vfr4bgt5nhy6mju7ki8lo9p0ZAQXSWCDEVFRBGTNHYMJUKILOP';
$hash = "";
$cont = 0;
do {
$pila[$cont] = $chars[$num%strlen($chars)];
$num = (int)$num/strlen($chars);
$cont++;
} while($num);
$cont--;
while($cont--)
$hash .= $pila[$cont];
return $hash;
}
Esa función te hará las combinaciones basadas en un numero.
Ahora, que tal que guardas el numero del ultimo ID generado en una tabla aparte. Y cada ves que metas un nuevo ID le sumas 1 al anterior y posteriormente revisas en la tabla para ver si ese nuevo ID no ha sido previamente reservado (los ID's que puedes elegir). Después de guardar el nuevo ID actualizas el campo que lleva el ultimo ID aleatorio generado.
Espero te sirva.