Hocam eline sağlık ama çok karışık olmuş. Geliştirmek, değiştirmek isteyen biri için çözmesi bile belki saatler alır. Ben de kendi yazdığımı paylaşayım.
// Link kısaltma fonksiyonu, Hkan @ r10.net (biggboss35@gmail.com)
function shortenLink($q, $l = 5)
{
$uc = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'; // uc = usable chars;
$return = '';
for($i=0; $i < $l; ++$i)
{
$return .= $uc[rand(0, strlen($uc)-1)];
}
// MySQL controls
$check = mysql_query("SELECT `abbr` FROM `link` WHERE `abbr` = '$return'");
if($check && mysql_num_rows($check) > 0)
return shortenLink($q, $l);
elseif($check || @mysql_num_rows($check) == 0)
$newLink = mysql_query("INSERT INTO link (`abbr`, `to`) VALUES ('$return', '$q')");
// MySQL controls - end
return $return;
}Çalışma mantığı ve kullanımı: