“Gerçek keşif yeni diyarlar bulmak değil, yeni gözlerle bakmaktır.”
by Marcel Proust

HTML5 ile Gelen Yeni Bir Özellik Geolocation

Tarih: Ekim 14th, 2010 | Yazar: | Kategoriler: HTML5 | Etiketler: , , , | 3 Yorum »

İnternetin ilk dönemlerinde insanlar genellikle rumuzlar(nickname) ile internette var olmayı tercih ederken, günümüzde gerçek isimleri ve gerçek kişilikleri ile var olmayı tercih ediyorlar. Eğilim bu yönde olunca sadece ad ve soyad paylaşmak da yetmiyor haliyle. Kullanıcılar gittikleri mekanları, o an bulundukları yerleri de bir şekilde paylaşmak istiyorlar. W3C konsorsiyumu da bu ihtiyacı görmüş olacak ki HTML5’e  Geolocation özelliğini ekledi. Bende bu yazımda basit olarak Geolocation’dan bahsetmek istiyorum.

Peki Geolocation nedir?

Geolocation eğer kullandığımız cihazda bir GPS aygıtı var ise GPS’den gelen veriler ile konumumuz tespit ediyor. Eğer herhangi bir GPS aygıtımız yoksa cihazımızda, “IP address, RFID, WiFi and Bluetooth MAC addresses, and GSM/CDMA cell IDs” bu bilgilerden yararlanarak konumuzu tespit etmeye çalışıyor. Çalışıyor diyorum çünkü bu yöntem ile pek doğru sonuçlar elde edemiyoruz :).  Geolocation bu işleri bizim adımıza yapan API’dir.

Hangi tarayıcılar Geolocation destekliyor?

Buradan hangi tarayıcıların Geolocation’a destek verdiğine bakabilirsiniz. Ayrıca buradan kullandığınız tarayıcının destek verip vermediğini test edebilirsiniz.

Nasıl kullanabiliriz?

Aslında kullanmak oldukça kolay. “navigator” nesnesi ile kolayca konumu tespit edebiliriz. Aşağıda kullanımını görebilirsiniz.

	if (navigator.geolocation) {
		navigator.geolocation.getCurrentPosition(function(position) {
			var lat = position.coords.latitude;
			var lng = position.coords.longitude;
		});
	} else {
		alert('Tarayıcınız Geolocation desteklemiyor.');
	}	

“navigator” nesnesi üzerinden “getCurrentPosition” methodu ile kullanıcının konumunu öğreniyoruz. Ancak bu işlemin gerçekleşmesi tarayıcıdan izin almamız gerekiyor, bu işlemi “getCurrentPosition” methodu bizim adımıza kendi gerçekleştiriyor.

“lat” değişkenimizin değeri enlemi “lng” değişkenimizin değeri ise boylam değerlerini veriyor.

Hepsi bu kadar. Aşağıdaki linkte google maps ile hazırladığım Geolocation demosuna bakabilirsiniz.

DEMO

Kaynaklar:


Bir Adresin Enlem ve Boylam Değerlerini Öğrenelim

Tarih: Eylül 13th, 2010 | Yazar: | Kategoriler: Php | Etiketler: , , | 14 Yorum »

Arkadaşlar bildiğiniz üzere Google Maps ile bir adresin enlem ve boylam değerlerini öğrenmemiz oldukça kolay. Ama bazı durumlarda bu işlemi kullanıcının tarayıcısında yapmak yerine sunucumuzda yapmamız gerekebilir. Bende bu yazımda Php ile bu işlemi sunucu tarafında nasıl yapılacağını anlatmaya çalışacağım.

Öncelikle buraya tıklayarak enlem boylam değerlerini alacağımız çıktıya bir göz atalım.

Adres ile ilgili veriyi çekeceğimiz url’i oluşturalım.

$address = "Ankara Keçiören";
$url = 'http://maps.google.com/maps/api/geocode/json?address=' . urlencode(htmlentities($address)) . '&sensor=false';

urlencode fonksiyonu ile özel karakterleri url yapısına göre kodlamış olduk. htmlentities fonksiyonu ise urlencode ile kodlanan Türkçe karakterleri Google Maps’in anlamadığı için kullandım.

$data = json_decode(file_get_contents($url));

Json türündeki veriyi çekiyoruz ve değişkenlere dönüştürüyoruz json_decode fonksiyonu ile.

$enlem = $data->results[0]->geometry->location->lat;
$boylam = $data->results[0]->geometry->location->lng;
echo "Enlem: '$enlem' Boylam: '$boylam'";

Gelen veriden enlem ve boylam değerlerini seçtikten sonra ekrana yazıyoruz ve hepsi bu kadar. Aşağıdan örneğin tamamına bakabilirsiniz.

$address = "Ankara Keçiören";

$url = 'http://maps.google.com/maps/api/geocode/json?address=' . urlencode(htmlentities($address)) . '&sensor=false';

$data = json_decode(file_get_contents($url));

$enlem = $data->results[0]->geometry->location->lat;
$boylam = $data->results[0]->geometry->location->lng;

echo "Enlem: '$enlem' Boylam: '$boylam'";

Kaynaklar:
Google Maps Geocoding API


Googlebot Sitemizi Ne Zaman Ziyaret Etti Öğrenelim

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

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.


Google ile döviz kurlarını öğrenelim

Tarih: Şubat 7th, 2010 | Yazar: | Kategoriler: Javascript | Etiketler: , , | Yorum Yok »

Google bir çok alanda çok farklı uygulamaları mevcut bugün bunlardan birini tanıtacağım. Döviz kurlarını öğrenmemiz değişik sebepler ile karşımıza çıkar kimi zaman e-ticaret sistemimizde kullanırız kimi zaman döviz kurları hakkında ziyaretçiye bilgi göstermemiz gerekebilir. Döviz kuru hizmeti veren birkaç servis mevcut ancak çoğu veriyi ayıklayabileceğimiz şekilde sunmuyor buda bize sorun olarak geri dönüyor. Google bu hizmetinde veriyi JSON ile kolayca ayıklayabileceğimiz şekilde gönderiyor. İstersek ayıklama işini tarayıcıda istersek sunucuda yapabiliriz.

Google dan bu veriyi almak oldukça basit. Veriyi almaya başlamadan önce buraya tıklayarak para birimlerinin kısalmasına bakalım.

http://www.google.com/ig/calculator?hl=en&q=(Dönüştürülcek miktar ve Para birimi)=?(Dönüşecek Para Birimi)

Yukarıda gördüğümüz adres üzerinden döviz kurlarını sorguluyoruz çalışan bir örneğe bakmak için aşağıdaki url ziyaret ediniz.

http://www.google.com/ig/calculator?hl=en&q=100USD=?TRY

Hepsi bu kadar!


Google Chrome Eklediğimiz Şifreleri Silelim

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

Eğer Google Chrome ile sitelerinizi gezerken üye bilgilerinizi kayıt ettiyseniz ve bundan kurtulmak istiyorsanız bunu yapmak çok kolay aşağıdaki adımlardan faydalanarak yapabilirsiniz.