“Measuring programming progress by lines of code is like measuring aircraft building progress by weight.”
by Bill Gates

Googlebot Sitemizi Ne Zaman Ziyaret Etti Öğrenelim

Tarih: Mart 14th, 2010 | Yazar: | Kategoriler: Php | Etiketler: , | Yorum Yok »

Site sahipleri olarak hep merak ederiz Googlebot sitemize ziyaret etti mi ettiyse hangi sayfaları ne zaman ziyaret etti? Bu yazımda bu soruya Php ile cevap vermeye çalışacağım.

Bir ziyaretçi sunucuya istek gönderdiğinde yanında bazı bilgiler de gönderir. Bu bilgiler gelen olarak cookie ve tarayıcı ile ayarlardır. Bu bilgileri görüntülemek için aşağıdaki kodu kullanabilirsiniz.

<?php
print_r($_SERVER);
print_r($_COOKIE);
?>

Eğer yukarıdaki kodu çalıştırdıysanız karşınıza birçok veri listelenmiştir. Biz bu verilerden bir tanesi kullanarak Googlebot’un sitemize ziyaret edip etmediğini tespit edeceğiz. Kullanacağımız değişken $_SERVER['HTTP_USER_AGENT']. Bu değişken  sayfamızı ziyaret eden tarayıcı ile ilgili bilgi veriyor. Googlebot’ları kullandığı tarayıcı ismi olarak  “Googlebot/2.1 (+http://www.google.com/bot.html)” bunu kullanıyor. Bizde bundan yola çıkarak Googlebot’un sitemizi ziyaretini tespit edeceğiz. Tespit ettikten sonra istediğiniz e-mail adresine mail gönderebilirsiniz.
Kodumuz aşağıda:

<?php
if (strpos( $_SERVER['HTTP_USER_AGENT'], 'Googlebot' ) !== false) {
//E-mail gönderiyoruz
mail(
'email@adresiniz.com',
'Googlebot Sitenizi Ziyaret Etti!',
'Ziyaret edilen sayfa:' . $_SERVER['REQUEST_URI'] . ' Ziyaret saati' . date('Y-m-d h:m:s')
);
}
?>

Bu kodu kullandığınız scripte tüm sayfalarda çalışacak şekilde yerleştirirseniz Googlebot’un sitenizi ziyaret zamanına ve hangi sayfaları ziyaret ettiğini öğrenebilirsiniz.


jQuery de live() Kullanımı

Tarih: Mart 10th, 2010 | Yazar: | Kategoriler: Javascript, jQuery | Etiketler: , | Yorum Yok »

jQuery daha doğrusu JavaScript ile az çok uğraştıysanız eğer, bir sorunu fark etmişsinizdir. Sayfa ilk yüklendikten sonra eklenen elementleri daha önce eklediğimiz eventler(click, hover…)  tanımaz, tanıması için bu eventleri tekrar çalıştırmamız gerekir. Örnek ile göstermek gerekirse bu durumu.

$(document).ready(function(){
$('p').click(function(){
$('p').parent().append('<p>Tıkla Bana</p>');
});
});

Kodumuz yukarıda nasıl olduğuna bakmak için tıklayın.

Gördüğümüz gibi tıklama ile eklediğimiz paragraflara(p) tıkladığımız zaman hiçbir tepki vermiyor oysa sayfamıza ilk yüklenen paragraf(p) den hiçbir farkı yok. Bu sorunu aşmak için eklediğimiz event’i tekrar çalıştırmamız gerekiyordu daha önceden.
jQuery 1.4.0 da gelen live() methodu ile artık sayfaya yeni eklenen elementleri tanıtmak için eventleri tekrar çalıştırmamız gerek kalmadı. Şimdi yukarıdaki event’i live() methodu kullanarak tekrar yazalım ve daha iyi anlayalım.

$(document).ready(function(){
$('p').live('click', function(){
$('p').parent().append('<p>Tıkla Bana</p>');
});
});

Kodumuz yukarıda nasıl olduğuna bakmak için tıklayın.

Gördüğümüz gibi son eklenen element ile ilk gelen element arasında bir fark yok. Yani ile paragrafa(p) tıklandığında da tıklama sonucu gelen paragrafa(p) da tıklandığında aynı tepkiyi görebiliyoruz. Bunu live methodu ile mümkün kıldık.

Son olarak live methoduna bir bakalım.

.live( eventType, handler )
eventType(Olay tipi): Click, hover, keydown, keyup gibi hangi olaya tepki vermesini belirlediğimiz kısım.
handler(işleyici): Olay gerçekleştiğinde çalışacak işleyici tanımladığımız kısım. Mesela ben örnekte yeni nesne ekledim.


Godaddy de Auto Renew Seçeneğini Kapatma

Tarih: Mart 6th, 2010 | Yazar: | Kategoriler: Dışlananlar | Etiketler: | Yorum Yok »

Bildiğiniz üzere Godaddy dünyada ki en popüler alan adı kaydetme servislerinden biri hatta en popüleri. Bu güzel alan adı kayıt edici bize sürekli bir şeyler satma peşinde. Bunlardan en can sıkıcısı da auto renew seçeneğini (yani alan adının süresi bittiğinde otomatik olarak yenilemesi) bizim yerimize seçmesi. Aslında alan adını alırken bu seçeneği pasif duruma geçirebiliyoruz ama gözden kaçırdığımız durumlarda yada bu seçeneği bilmeyenler için bu yazımda auto renew nasıl pasif duruma geçireceğimizi anlatmaya çalışacağım zaten 7 adımda yapabileceğimiz kolay bir uygulama.

godaddy disable auto renew

Hesabımıza giriş yaptıktan sonra;

  1. Sol menüden My Renewals & Upgrades tıklıyoruz.
  2. Açılan menüden Payments & Renewing Items tıklıyoruz.
  3. Auto linkine tıklıyarak auto renew aktif olan domainleri listeliyoruz.
  4. Auto Renew seçeneğini pasif yapacağımız alan adlarının kutucuğuna tik atıyoruz.
  5. Auto Renew butonuna basıyoruz.
  6. Sağ tarafta karşımıza gelen radyo butonlardan Disable Auto Renew seçiyoruz.
  7. Son olarak Save Changes butonuna tıklıyoruz.

Your changes have been submitted! There will be a short duration while your request is pending update. Bu mesajı aldığımızda işlemimiz başarı ile yapılmıştır. Birkaç dakika sonra alan adlarındaki auto renew seçeneğinin pasif olduğunu göreceksiniz.


30 Adet Veri Görselleştirme Aracı

Tarih: Mart 3rd, 2010 | Yazar: | Kategoriler: Dışlananlar | Etiketler: , , | 2 Yorum »

Verilerimizi her zaman klasik tablolarda değil de daha görsel resimler veya grafik kullanarak görselleştirebiliriz. Bunun içinde bir çok araç mevcut bu yazımda bu araçların 30 tanesini tanıtacağım. Lafı daha fazla uzatmadan araçlar nelermiş bakalım.

Ajax.org

AnyChart

Axiis

BirdEye

Degrafa

DojoX Data Chart

Chronoscope

Dundas

ExtJs

Flex

FlexMonster Pivot Table and Charts

FusionCharts

Google Chart API

gRaphaël

iLog Exlixir

JFreeChart

JQuery Plugins

JPowered

JSCharts

Kap IT Labs Diagrammer and Visualizer

MilkChart

Open Flash Charts

PlotKit

Protovis

Silverlight

Stack

Telerik Charts for Silverlight, WFP, ASP.NET

VisiFire

Websites as Graphs

yFiles for Ajax , .NET or Flex


jQuery ile Tablomuzdan Satır Silelim

Tarih: Mart 2nd, 2010 | Yazar: | Kategoriler: jQuery | Etiketler: | Yorum Yok »

Bu yazımda sizlere çok kolay bir şekilde jQuery kullanarak tablomuzda ki satırları nasıl sileceğimizi göstereceğim. Ancak satır silme işlemini sadece istemci tarafında çalışacak. Tabi isterseniz ajax ile silme işlemini sunucu tarafına da göndererek tamamlayabilirsiniz.

<table width="100%" border="1" bordercolor="#000000" cellspacing="2" cellpadding="2">
<tr>
<td>Sutun1</td>
<td>Sutun2</td>
<td>Silme İşlemi</td>
</tr>
<tr>
<td>Değer1</td>
<td>Değer2</td>
<td><a href="#" class="silinicekSatir">Sil</a></td>
</tr>
<tr>
<td>Değer3</td>
<td>Değer4</td>
<td><a href="#" class="silinicekSatir">Sil</a></td>
</tr>
<tr>
<td>Değer5</td>
<td>Değer6</td>
<td><a href="#" class="silinicekSatir">Sil</a></td>
</tr>
<tr>
<td>Değer7</td>
<td>Değer8</td>
<td><a href="#" class="silinicekSatir">Sil</a></td>
</tr>
</table>

Yukarıdaki kod da klasik bir tablo oluşturduk. Tek fark içerisine bir adet link yerleştirdik. Bu linke silinicekSatır olarak sınıf tanımladık. Bu sınıfı tanımlama nedenimiz jQuery ile yapacağımız sorgularda bize yardımcı olması.

$(document).ready(function() {
$('.silinicekSatir').click(function (){
if (confirm('Silmek istediğinizden emin misiniz?')){
$(this).parent('td').parent('tr').remove();
}
});
});

Yukarıdaki kodu satır satır değerlendirirsek.

  1. Numaralı satırda: Döküman hazırsa ise fonksyionu çalıştır emri veriyoruz. Yani sayfamızın yüklenmesi bittiğinde fonksiyon çalışacaktır.
  2. Numaralı satırda: .silinicekSatır sınıfına sahip elementlere tıklandığında çalışacak olayı tanımladık.
  3. Numaralı satırda: Kullanıcıya yapmak istediği işlem hakkında emin olup olmadığını soruyoruz. Kullanıcı Tamam butonuna basar ise true değeri dönüyor.
  4. Numaralı satırda: Tıklanan linkin ait olduğu satırı aile metodunu kullanarak buluyoruz ve bu satırı siliyoruz.

Hepsi bu kadar! Demo’ya bakmak isterseniz aşağıdaki link den faydalanabilirsiniz.

DEMO