Here ya go!
This gives a random string with number and letters, some uppercase, some lowercase.
//returns a pw based on the username
function getPw($un)
{
$pw = md5($un . time() );
$pw = substr($pw, 0, 8); //md5 string 7 chars long
srand((double)microtime()*1000000); //seed the random # gen
for($i=0; $i < strlen($pw); $i++) //loop throught the md5 string
{
if( ereg('[a-zA-Z]', substr($pw, $i, 1)) ) //find the letters
{
$oldLetter = substr($pw, $i, 1); //get the letter found
$rnd = rand(); //a random number
if($rnd % 2 == 0) //if it's an even number
{
//replace the old letter with an uppercase version of itself.
//md5 seems to create only lower case letters so...
$pw = ereg_replace($oldLetter, strtoupper($oldLetter), $pw);
}
}
}
return $pw;
}