Merhaba Arkadaşlar Etrafı Dolaştım urdan kaliteli webmaster forumu bulamadım neyse işin özüne gelelim.bn tag cloud dediğimiz yani etiket bulutu olan 2.0 yeniliklerinden olan sistemi AvArcade ye eklenilmesini istiyorum yardımcıı olabilecek arkadaşlara şimdiden teşekkür ederim. Ben Kodu buldum fakat tam manasıyla uygulayamdım ..
Script adresi: http://www.avscripts.net/avarcade/
DataBase de Tablo Oluşturma Kodu;
Etiket bulutu Php Kodu;
Script adresi: http://www.avscripts.net/avarcade/
DataBase de Tablo Oluşturma Kodu;
PHP:
CREATE TABLE `etiketler` (
`e_id` int(20) NOT lisanssız auto_increment,
`e_tr` varchar(255) NOT lisanssız default '',
PRIMARY KEY (`e_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=0 ;
PHP:
<?php
header('Content-type: text/html; charset="iso-8859-9"', true);
$host = "localhost";
$username = "root";
$password = "";
$table_name = "db";
$dbh=mysql_connect ($host, $username, $password) or die ('I cannot connect to the database because: ' . mysql_error());
mysql_select_db ($table_name);
function dost_Linkler($url)
{
$url = trim($url);
$url = strtolower($url);
$find = array('<b>', '</b>');
$url = str_replace ($find, '', $url);
$url = preg_replace('/<(\/{0,1})img(.*?)(\/{0,1})\>/', 'image', $url);
$find = array('ı','İ');
$url = str_replace($find, 'i', $url);
$find =array('Ş','ş');
$url = str_replace ($find, 's', $url);
$find = array(' ', '"', '&', '&', '\r\n', '\n', '/', '\\', '+', '<', '>');
$url = str_replace ($find, '-', $url);
$find = array('é', 'è', 'ë', 'ê', 'É', 'È', 'Ë', 'Ê');
$url = str_replace ($find, 'e', $url);
$find = array('í', 'i', 'ì', 'î', 'ï', 'ı', 'I', 'I', 'Í', 'Ì', 'Î', 'Ï', 'İ');
$url = str_replace ($find, 'i', $url);
$find = array('ó', 'ö', 'Ö', 'ò', 'ô', 'Ó', 'Ò', 'Ô');
$url = str_replace ($find, 'o', $url);
$find = array('á', 'ä', 'â', 'à', 'â', 'Ä', 'Â', 'Á', 'À', 'Â');
$url = str_replace ($find, 'a', $url);
$find = array('ú', 'ü', 'Ü', 'ù', 'û', 'Ú', 'Ù', 'Û');
$url = str_replace ($find, 'u', $url);
$find = array('ç', 'Ç');
$url = str_replace ($find, 'c', $url);
$find = array('s', 'ş', 'S', 'Ş');
$url = str_replace ($find, 's', $url);
$find = array('g', 'ğ', 'G', 'Ğ');
$url = str_replace ($find, 'g', $url);
$find = array('/[^a-z0-9\-<>]/', '/[\-]+/', '/<[^>]*>/');
$repl = array('', '-', '');
$url = preg_replace ($find, $repl, $url);
$url = str_replace ('--', '-', $url);
return $url;
}
//etiketleri alacağınız tabloyu seçin
//altta $r[e_tr]; war orda e_tr ye etiketleri tabloda hangi field dan alıyorsanız işte onu yazın...
$q = mysql_query("select * from etiketler order by rand() ");
$etk= "";
if(mysql_num_rows($q) > 0) {
while ($r = mysql_fetch_array($q) ) {
$etk.= str_replace(" ", "_", $r[e_tr])." ";
}
}
// Etiket Arrayımız
$etiketArray = array();
// kelimeler
$etiketler = $etk;
// kelimeleri say
foreach( str_word_count( $etiketler, 1, 'ıİüÜöÖğĞşŞçÇ1234567890' ) as $etiket )
{
// Tekrarlanmayı silip saymayı attır
array_key_exists( $etiket, $etiketArray ) ? $etiketArray[ $etiket ]++ : $etiketArray[ $etiket ] = 0;
}
// ==============================================================
// = Bulutla Fonksiyonumuz =
// ==============================================================
function bulutla( $etiketArray, $enDusukFont = 12, $enYuksekFont = 30 )
{
$minSay = min( array_values( $etiketArray ) );
$maxSay = max( array_values( $etiketArray ) );
$spread = $maxSay - $minSay;
$bulutArray = array();
$spread == 0 && $spread = 1;
foreach( $etiketArray as $etiket => $say )
{
$size = $enDusukFont + ( $say - $minSay )
* ( $enYuksekFont - $enDusukFont ) / $spread;
$bulutArray[] = '<a style="font-size: ' . floor ( $size ) . 'px'
. '" class="tag_cloud" href="http://siteniz.com/etiket/' . dost_Linkler($etiket)
. '" title="\'' . $etiket . '\' toplam bulunan ' . $say . '">'
. str_replace("_", " ", $etiket) . '</a>';
}
return join( "\n", $bulutArray ) . "\n";
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-9" />
<title>Etiket Bulutu</title>
<style type="text/css" media="screen">
.tag_cloud { padding: 3px; text-decoration: none; }
.tag_cloud:link { color: #81d601; }
.tag_cloud:visited { color: #019c05; }
.tag_cloud:hover { color: #ffffff; background: #69da03; }
.tag_cloud:active { color: #ffffff; background: #ACFC65; }
</style>
</head>
<body>
<fieldset style="background:#FF6600; padding:5px; border:#FF6000 5px dashed; width:480px;">
<legend style="font-size:25px; color:#333333; border:#FF6000 3px solid; background:#FF6600; padding:5px;">Etiket Bulutu</legend>
<div style="width:500px;">
<?php echo bulutla( $etiketArray ); ?>
</div>
</fieldset>
</body>
</html>