ASP.NET C# C/C++ Genel HTML/CSS Java JS/Ajax PHP XML Forum

phpBB Forum Mesajlarındaki Linkleri Kısaltın

phpBB Forum Mesajlarındaki Linkleri Kısaltın

Merhaba arkadaşlar,

Bugün sizlere TR Kodlama tarafından geliştirilen bir phpBB modifikasyonunu anlatıyorum. Bu eklenti sayesinde mesajlarda kendi domaininiz dışında girilen bütün linkler togl.me aracılığıyla kısaltılarak yayınlanır.

Peki neden böyle bir kısaltmaya ihtiyaç duyabilirsiniz? Öncelikle bu sayede forum sitenizde paylaşılan linkler sadece iki türlü olacaktır. Bir tanesi sizin alan adınızla çıkış yapan linkler diğeri de togl.me aracılığıyla çıkış yapan linkler. Ayrıca bir API keyi aracılığıyla yönetici olarak bütün linklerinizi yönetebileceğinizi de biliyor muydunuz? Yani bu linklere kaç kere tıklandı vs. gibi bilgilere ulaşabilirsiniz.

Ayrıca ileride kullanıcılarınız kayıt olduğu zaman otomatik olarak onların togl.me hesapları açılacak ve kullanıcılarınızda isterse togl.me üzerinden isterse kullanıcı panelinden hesaplarını yönetebilecekler.

Mod Adı: Togl URL Shortener
Mod Yazarı: trkodlama
Mod Web Sitesi: http://www.trkodlama.com
Mod Sürümü: 1.0.0
Açıklama: Atılan mesajlarda ki site dışına çıkan linkleri http://togl.me adresinden kısaltarak onları ekrana basar.
Phpbb.com: http://togl.me/5d5
Phpbbturkey.com http://togl.me/fe2
Kurulum: 1 dakika
Kurulum Zorluğu: Kolay

Kurulumun nasıl yapıldığını install.xml dosyasından öğrenebilirsiniz: http://www.trkodlama.com/file.php?file=Togl_URL_Shortener.rar




jQuery ile Checkbox Kontrolü

jQuery ile Checkbox Kontrolü

Merhaba arkadaşlar,

Bu makalemde yine jQuery ile bir kontrol işlemi gerçekleştiriyoruz. jQuery ile bir checkbox'ın(seçim kutusunun) seçili olup olmadığını nasıl kontrol edebileceğimizi anlatıyorum. Bunun için checked attribute'una bakacağız(kusura bakmayın attribute kelimesinin türkçe karşılığı nedir bilmiyorum). Önce bir adet input oluşturalım:

<input id="sec" type="checkbox" value="1" /> Seçersen alert verir

Şimdi bu input seçildiğinde alert ile ekrana seçim kutusunun işaretlendiğini belirtelim:

<script>
$(document).ready(function(){
    $("#sec").click(function(){
        if( $("#sec").attr("checked")=="checked" ) {
            alert("Seçim kutusu işaretlendi..");
        }
        else {
            alert("Seçim kutusu işareti kaldırıldı");
        }
    });
});
</script>

Yukarıdaki javascript kodunun neler yaptığını anlatalım.. Öncelikle id="sec" olan elementine tıklandığında if...else ile id="sec" elementinin checked niteliğine bakıyoruz. eğer checked="checked" şeklinde ise işaretlendiğini belirtiyor ve seçim kutusu işaretlendi alerti veriyor. Eğer tekrar tıklanıp işaret kaldırılırsa yine aynı kontroller yapılıyor fakat bu sefer checked="checked" olmadığı için seçim kutusu işareti kaldırıldı alerti veriliyor.
Umarım anlatabilmişimdir arkadaşlar, basit bir işlem zaten.
Kolay gelsin,





Yönlendirmeli Sayfanın Yönlendirildiği Sayfayı Bulma

Yönlendirmeli Sayfanın Yönlendirildiği Sayfayı Bulma

Merhaba arkadaşlar,

Bugünkü makalemde sizlere PHP ile bağlanmaya çalıştığınız sayfada 301 veya 302 HTTP yönlendirmesi varsa bu sayfanın hangi sayfaya yönlendirdiğini bulmanızı sağlayacak bir fonksiyon veriyorum. Fonksiyonumuz aşağıdaki gibidir:

function asil_url( $url,  $javascript_dongu = 0, $zaman_asimi = 5 ){
    $url = str_replace( "&", "&", urldecode(trim($url)));
    $cerez = tempnam ("/tmp", "CURLCOOKIE");
    $curl = curl_init();
    curl_setopt( $curl, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; rv:1.7.3) Gecko/20041001 Firefox/0.10.1" );
    curl_setopt( $curl, CURLOPT_URL, $url );
    curl_setopt( $curl, CURLOPT_RETURNTRANSFER, 1 );
    curl_setopt( $curl, CURLOPT_MAXREDIRS, 10 );
    $content = curl_exec( $curl );
    $cevap = curl_getinfo( $curl );
    curl_close ( $curl );
    if ($cevap['http_code'] == 301 || $cevap['http_code'] == 302){
        ini_set("user_agent", "Mozilla/5.0 (Windows; U; Windows NT 5.1; rv:1.7.3) Gecko/20041001 Firefox/0.10.1");
        if ($baslik = get_headers($cevap['url'])){
            foreach($baslik as $deger){
                if ( substr( strtolower($deger), 0, 9 ) == "location:" )
                    return get_url( trim( substr( $deger, 9, strlen($deger) ) ) );
            }
        }
    }
    if (( preg_match("/>[[:space:]]+window.location.replace('(.*)')/i", $content, $deger) || preg_match("/>[[:space:]]+window.location="(.*)"/i", $content, $deger)) && $javascript_dongu < 5){
        return get_url( $deger[1], $javascript_dongu+1 );
    }
    else{
        return array( $content, $cevap );
    }
}

// fonksiyonun kullanımı
echo asil_url("http://trkodlama.com"); // Ekran çıktısı http://www.trkodlama.com olacaktır.

Önceki makalemde HTTP durum kodunu en başarılı nasıl bulabileceğinizi anlatmıştım. O fonksiyon aracılığıyla önce HTTP durum kodunu kontrol edebilirsiniz eğer 301 veya 302 varsa şimdi paylaştığım fonksiyon aracılığıyla yönlendirme sonucu gidilen adresi bulabilirsiniz.

Umarım faydalı olur, birinin işine de yarar.. Kolay gelsin arkadaşlar 



cURL ile HTTP Durum Kodunu Alma

cURL ile HTTP Durum Kodunu Alma

Merhaba arkadaşlar,

Bu makalemde sizlerebir web sayfasının HTTP durum kodunu nasıl alacağınızı anlatıyorum. Aslında bunun çok basit bir şekilde get_headers() fonksiyonu ile halledebilirsiniz. Fakat bazı sunuculara bu şekilde bağlanamazsınız. Mesela örnek vermek gerekirse trkodlama.com adresine get_headers() ile file_get_contents() ile bağlanamazsınız. cURL ile bile CURLOPT_USERAGENT tanımlaması yapmazsanız bağlanamazsınız. Bugün paylaşacağım fonksiyon ile her sitenin HTTP durum kodunu rahatlıkla alabileceksiniz. Fonksiyon aşağıdaki gibidir:

function http_durum_kodu($url="http://www.trkodlama.com"){
    $agent   = "Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7.12) Gecko/20050915 Firefox/1.0.7";
    $curl = curl_init($url);
    curl_setopt($curl, CURLOPT_USERAGENT, $agent); // Mozilla gibi göründük
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // Burayı 0 yaparsanız sitenin çıktısını da ekrana basar. Bunu istemeyiz..
    $cikti = curl_exec($curl);
    $kod = curl_getinfo($curl, CURLINFO_HTTP_CODE); // HTTP durum kodunu aldık
    return $kod;
}

Fonksiyonun kullanımı da şöyledir:

echo http_durum_kodu("http://togl.me"); // Ekran Çıktısı "400" olacaktır..

Umarım faydalı olmuştur. Herkese kolay gelsin,



Tüm Ziyaretçilerimize Teşekkür Ederiz

Tüm Ziyaretçilerimize Teşekkür Ederiz

Merhaba Değerli Ziyaretçilerimiz,

TR Kodlama bildiğiniz üzere Mart ayında yeni anlayışı ile yani tamamen programlamaya yönelik olarak hizmete girmişti. Bugün istatistiklerimize baktığımız zaman gerçekten dört ay gibi kısa bir sürede çok iyi bir noktaya geldik. Sizlere istatistiklerimizi daha doğrusu sizlerin başarısını göstermekten büyük bir mutluluk ve gurur duyarım.

Pagerank: 3
Alexa: 879,339 | Alexa TR: 12,722
Günlük ortalama ziyaret: 100
Aylık sayfa görüntüleme: 8,652
Aylık ziyaret: 4,056
Aylık tekil ziyaretçi: 3,163

Sizlere hizmet vermeye devam edeceğimi büyük bir keyifle söyleyebiliyorum. Sizden hiçbir beklentim olmadan bu hizmeti vermemi sağlayan da bu zaten. Bu paylaşım ortamını büyük bir keyifle yürütebiliyorum. Umarım beraber daha nice zamanlara erişebiliriz.

Sizlerin aradıklarını bizde arayıp buluyoruz.. Bulamazsak kendimiz üretmeye çalışıyoruz ve sizlere geri sunuyoruz. 

Teşekkürler,

Oral ÜNAL
TR Kodlama Kurucusu



SEOmoz API'sini Kullanarak Bilgi Çeken Fonksiyon

SEOmoz API\'sini Kullanarak Bilgi Çeken Fonksiyon

Merhaba arkadaşlar,
Bugünkü makalemde bir fonksiyon paylaşıyorum. Fonksiyonu hazırlamam bugün üç saatimi aldı ne yazık ki. SEOmoz'un wiki'sinde yeterli dökümanı bulamadığım için bu üç saatimin çoğu araştırmakla geçti.. Şimdi SEOmoz'dan veri çekmek için hazırladığım bu fonksiyonu paylaşıyorum:

<?php
/**
 * seomoz()
 * @author oralunal
 * 
 * @param mixed $url = İncelenmesini istediğiniz sitenin URL'si
 * @param mixed $accessID = Bunu http://togl.me/c adresinden temin ediyorsunuz
 * @param mixed $secretKey = Bunu da aynı adresten temin ediyorsunuz
 * @return
 */
function seomoz($url, $accessID, $secretKey){
    $Expires          = mktime() + 50; // Son kullanma tarihini ayarlayalım. Min. 50 isterseniz arttırabilirsiniz
    
    // Burada Signature elde etmek için işlemler yapıyoruz
    $imzaya           = $accessID."n".$Expires;
    $binaryImza       = hash_hmac('sha1', $imzaya, $secretKey, true);
    $imza             = urlencode(base64_encode($binaryImza));
    
    // Bu da veriyi çekeceğimiz URL
    $api_url          = "http://lsapi.seomoz.com/linkscape/url-metrics/".$url."?AccessID=".$accessID."&Expires=".$Expires."&Signature=".$imza;
    $sonuc            = @file_get_contents($api_url); // İçeriği alalım
    // Eğer boş dönerse veya hata alırsak başa dönelim
    while($sonuc == "NULL" || !$sonuc) seomoz($url, $accessID, $secretKey);
    // json_decode ile ile gelen veriyi dizilere atalım
    $sonuc = json_decode($sonuc, true);
    return $sonuc;
}
?>

Gözünüzü fazla korkutmasın arkadaşlar açıklama yarısından fazlası. Fonksiyon tamamı dokuz satırdır sadece. Şimdi bir de kullanımını gösterelim:

$json = seomoz("www.trkodlama.com/","member-xxxxxxx", "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx");
echo "
";
var_dump($json);
echo "
";

Bu şekilde çalıştırdığımızda ekran çıktısı aşağıdaki gibi olacaktır:

array(13) {
  ["fmrp"]=>
  float(3.0741889752691)
  ["fmrr"]=>
  float(6.8230103124604E-10)
  ["pda"]=>
  float(20.624589977163)
  ["ueid"]=>
  int(30)
  ["ufq"]=>
  string(18) "www.trkodlama.com/"
  ["uid"]=>
  int(421)
  ["umrp"]=>
  float(4.4399377088343)
  ["umrr"]=>
  float(3.9712982973246E-10)
  ["upa"]=>
  float(27.094229777475)
  ["upl"]=>
  string(14) "trkodlama.com/"
  ["us"]=>
  int(200)
  ["ut"]=>
  string(43) "TR Kodlama - Güncel Programlama Makaleleri"
  ["uu"]=>
  string(18) "www.trkodlama.com/"
}

Farkettiğiniz gibi başlık Türkçe karakter problemli. Bunun sebebi json_decode() fonksiyonunun ISO-8859-1 ile çalışmasıdır. Bunu da şu şekilde çözümleyebiliriz:

// Verimizi çekelim
$json = seomoz("www.trkodlama.com/","member-xxxxxxx", "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx");

// Şimdi başlığımızı çekelim
$baslik_bozuk = $json["ut"]; // Ekran çıktısı: TR Kodlama - Güncel Programlama Makaleleri
$baslik_okay  = iconv("UTF-8", "ISO-8859-9", $baslik_bozuk); // Ekran çıktısı: TR Kodlama - Güncel Programlama Makaleleri

Umarım açıklayıcı olmuştur arkadaşlar, işinize yaraması dileğiyle, kolay gelsin..











RSSTwitter

En son yazılanlardan ilk senin haberin olsun


Valid HTML 5 Valid CSS!

Güncel Programlama Makaleleri by TR Kodlama © 2009 is licensed under a Creative Commons Alıntı-TicariOlmayan 3.0 Unported License.