Etiket Bulutu Yapalım (wp tarzı)
Merhaba Arkadaşlar size basit bir etiket bulutu nasıl yapılır onu göstermek istiyorum bugün ![]()

Çok basit bir sistem ve sitelerinizde rahatlıkla kullanabilirsiniz…
<?php header('Content-type: text/html; charset="iso-8859-9"', true); $host = "localhost"; $username = "root"; $password = " şifre"; $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>
Etiketler: etiket bulutu, Php, php dersleri, php makaleleri, php tutorial, php yazıları
Toplam 252 kez okunmuş
Bugün hiç okunmamış
Yazı Katagorisi: PHP Kod Örnekleri, Php, Php Fonksiyonları, Webmaster Kaynakları
Toplam 252 kez okunmuş
Bugün hiç okunmamış
Yazı Katagorisi: PHP Kod Örnekleri, Php, Php Fonksiyonları, Webmaster Kaynakları
Eğer yazıyı beğendiyseniz ya da ekleyecekleriniz varsa, lütfen yorumunuz yazın veya RSS aboneliği ile yeni yazılardan anında haberdar olun.













Merhaba.Ben bu sekilde etiket.php seklinde yaptım ama hata verdi.Sanirim birde etketler tablosu için sql sorgusu yapmamız gerekiyor yoksa yanlışmı biliyorum.
$table_name = ” db “; su kısımda ne yazıyoruz tam olarak.Birde mesela bu etiketleri ekledigimiz konularda altında gösterebilirmiyiz