25 Aralık 2008 Perşembe

PHP: Vbulletin tarzı link kısaltma işlemi

Vbulletin (diger forum ve CMS) kullanan sitelerde yazılan mesajlarda kullanılan linkler uzun olduğunda kısaltıldığını farketmişsinizdir. Bölümlenemediği için tasarımı bozan, buna ek olarak görüntü kirliliğine yol açan bu uzun linkleri kısaltmak en mantıklı yol oluyor. Bunun için link_kisalt isimli bir fonksiyon oluşturarak, linklerin karakter sayısı kontrol ettikten sonra linki ekrana yazdıracağız.

Örnek Linkimiz:
http://www.turkwm.com/search?updated-max=2008-12-06T00%3A35%3A00%2B02%3A00&max-results=5

İşlem bittiği andaki görüntüsü:
http://www.turkwm.com/search?updated-max=2008-12-06T00%3A35%3A00%2B02%3A00&max-results=5

<?
function link_kisalt($link,$uzunluk=75) {
if( $uzunluk>45 ) {
// Uzunluk degerini kontrol ediyoruz.
// Eger uzunluk degeri girmezseniz ontanimli degeri 75'tir
// Uzunluk degeri 45'ten fazlaysa bir sonraki adima gecilir.

if( strlen($link)>$uzunluk ) {
// Linkteki karakter sayisi uzunluk degerinden fazla ise
// substr fonksiyonu ile linkten belirli yerler kesiliyor
// Baslangictan uzunluk degerimizin yarisi kadar, sondan ise 10 karakter gosteriliyor.
$link = substr( $link,0,($uzunluk/2) ).'...'.substr($link,-10);
}
}
return $link;
}
// Deneme gosterimi
$url = 'http://www.turkwm.com/search?updated-max=2008-12-06T00%3A35%3A00%2B02%3A00&max-results=5';
echo '<a href="'.$url.'" target="_blank" rel="nofollow">'.link_kisalt($url).'</a>';
// Ornegin 75 karakter degilde, 60 karakterden uzun linkleri kisaltmak isterseniz
// link_kisalt($url) yerine link_kisalt($url,60) yazmaniz gerekir.
?>

Yukarıdaki kodlari ornek.php olarak kaydedip test edebilirsiniz.

24 Aralık 2008 Çarşamba

PHP: Uzmanlardan PHP kullanımına yönelik tavsiyeler

Şüphesiz ki geniş kullanım alanı sebebiyle Web programcıları arasında en popüler dil PHP'dir. PHP sınıfları, PHP makaleleri, Kod örnekleri ve scriptleri bulmak için pek çaba sarfedilmesi gerekmiyor. Fakat tüm bunları kullanırken en önemli nokta olan performans ve stabiliteyi ne kadar göz önünde tutuyoruz? Bu düşünceden yola çıkarsak uzman seviyesindeki kişiler dışında PHP yazarken kendi manifestosunu oluşturan kaç kişi var?

Bu konuda PHP'nin uzmanları ne düşünüyor? Bizlere ne gibi öneriler sunuyorlar? PHP'nin gelişiminde söz sahibi olan (Rasmus Lerdorf) yada büyük projelere imza atmış uzmanlardan önerileri incelediğimizde, daha geniş açıdan bakma fırsatı doğacaktır.

1- Yalnızca ihtiyaç duyduğunuz anlarda PHP kullanın. ( Rasmus Lerdorf )

PHP'nin ortaya çıkması ve geliştirilmesinde kuşkusuz en önemli isim Rasmus Lerdorf'tur. PHP ile yapılabilecek uygulamaların yada geliştirebilecek çözümlerin çerçevesini bilen biri olarak yazdığı yazılarda ve onun ağzından aktarılan yazılarda vurguladığı en önemli konu PHP web geliştirme alanındaki sorunları çözme amacıyla ortaya çıkan bir yaklaşımdır.

Problemlerin çözümü konusunda PHP seçeneklerinizin arasında bulunacak bir araçtır. Şüphesiz ki PHP'nin de limitleri vardır. Bu noktada eğer ki amaç web geliştirme konusunda çözüm üretmek ise, gerektiğinde başka dilleri kullanmaktan çekinmeyin.


2- Ziyaretçilerinize güvenmeyin. ( Dave Child )

Dave Child AddedBytes'ın beyin takımında yer alan kişilerden biridir. Ingilterede yaşamını sürdürüyor. Web Geliştirici olarak bir çok projede yer almıştır. Bir çok programlama dili için ipuçları veren makaleleri bulunmaktadır.

Dave Child'in görüşleri genellikle güvenlikle konularını kapsıyor.

Ziyaretçilerinize güvenmeyin. Çünkü size zarar verebilirler. Bilerek yada bilmeyerek sisteminize zararlı kullanıcı haline gelebilirler. Ziyaretçi tarafından aldığınız verilerin kontrolu konusunda tereddüt yaşarsanız bu sizin için iyi bir başlangıç olmayacaktır. Söz konusu güvenlik olduğunda, paranoyak olmanızda bir zarar yoktur.


PHP ile proje geliştirmeye yeni başlayanlar için güvenlik konulu makaleleri halen sitesinde durmaktadır. 1,2,3,4

3- Önbellek (Cache) Kullanın. ( Ben Balbo )

Ben Balbo Sitepoint yazarlarındandır. Ayrıca Melbourne PHP Grubu ve Open Source Developers Club yönetimindedir. Önbellek uygulaması hakkında makalesi Sitepoint'ten takip edilebilir.

"Caching" konusunda yeni yılda ayrıntılı bir yazı yazacağım. O yüzden bu maddeyi uzun tutmuyorum.

4- Framework kullanın. ( Josh Sharp )

CakePHP,Zend,CodeIgniter, Symfony gibi bir çok framework mevcuttur. Hepsinin kendine göre artıları yada eksileri vardır. Bu noktada seçim web geliştiricisinin olacaktır.

Josh Sharp framework kullanımı hakkında yazdığı makalede frameworklerin hem zamandan tasarruf sağlamakta ve kod yazımındaki avantajlarından bahsediyor.

PHP'nin kullanımındaki rahatlık bazen çöküşünüze de sebep olabilir. Fazla kısıtlama olmadığı için kötü yada hatalı kod yazma ihtimaliniz artabiliyor. Çözüm basit: Framework kullanın.


5- Framework Kullanmayın. ( Rasmus Lerdorf )

Bir üstteki tavsiyeye muhalif düşünce PHP'nin babası Rasmus Lerdorf'dan geliyor. Framework kullanımına karşı olmasının sebebi ise performans kayıplarından kaynaklanıyor. Bu düşüncesini de performans testlerini açıklayarak sağlamlaştırdı.

Konuyla alakalı video: Simple is Hard

Şahsi fikrim, kapsamlı projelerde framework kullanımının daha avantajlı olduğunu düşünsemde, irili ufaklı her projenin framework üzerinde geliştirilmesine karşıyım. (Framework kullanmanız gerekiyorsa, Rasmus Lerdorf'un favorisi CodeIgniter. Sebebini anlamak için performans testlerine bakmak yeterli:) )


Konu sonuna PHP ile alakalı Türkçe içerikteki bir kaç linki vermek istiyorum.
www.php.web.tr // Hidayet Doğan
www.hido.net // Hidayet Doğan
ceviz.net PHP
belgeler.org PHP

Burada yer alması gerektiğini düşündüğünüz PHP konulu siteleri yorum olarak eklerseniz, inceleyip listeyi genişletebilirim.

23 Aralık 2008 Salı

PHP Dersleri: Echo ve String



PHP kodları yazarken en sık kullanacağınız öğe echo'dur. Fonksiyon olarak nitelensede, bence php'nin yapı taşlarından biridir. Echo ekrana veri yazdırmak için kullanılır.

İlk üç derste verilen örneklerde bolca sözü geçti. echo'nun kullanımına dair bir kaç konuyu işleyelim.

Metinlerin (String) ekrana yazdırılmasıMetinleri ekrana yazdırırken çift tırnak yada tek tırnak kullanılır.

<?
// HTML kodlarini da katarak echo kullanimi
echo "Turkwm.com <b>PHP</b> Dersleri";
?>


Eğer string bir değişken için tanımlandıysa, tırnak işaretleri kullanmadan değişken yazdırılır.

<?
// HTML kodlarini da katarak echo kullanimi
$degisken="Turkwm.com <b>PHP</b> Dersleri";
echo $degisken;
?>


Hem metinleri hemde tanımlı değişkenleri aynı anda ekrana gönderebilirsiniz.

<?
$turkwm_ders="PHP";
echo "Turkwm.com $turkwm_ders Dersleri";
// Ekrana gönderilecek yazı: Turkwm.com PHP Dersleri
?>


Yukarıdaki örnekte teknik olarak bir yanlışlık yoktur. Fakat aynı echo işlemini tek tırnak ile yaparsak sonuç farklı olur.

<?
$turkwm_ders="PHP";
echo 'Turkwm.com $turkwm_ders Dersleri';
// Ekrana gönderilecek yazı: Turkwm.com $turkwm_ders Dersleri
?>


Değişken ismini ekrana bastırmak istiyorsanız tek tırnak kullanabilirsiniz. Fakat maksat ekrana veri bastırmaksa, şahsi önerim metinleri ve değişkenleri ayrı birer parça gibi düşünüp, echo satırında birleştirmenizdir. Yukaridaki örneği uygulamalı olarak geliştirirsek,

<?
$turkwm_ders="PHP";
echo "Turkwm.com ".$turkwm_ders." Dersleri";
// Ekrana gönderilecek yazı: Turkwm.com PHP Dersleri

$turkwm_ders='PHP';
echo 'Turkwm.com '.$turkwm_ders.' Dersleri';
// Ekrana gönderilecek yazı: Turkwm.com PHP Dersleri
?>


Kodlarınızı yazarken alışkanlıklarınız çok önemlidir. Bu yüzden örnekleri dikkatle incelemenizi öneriyorum. Yukarıdaki yaptığımız işlem, tıpkı ayrı ayrı yazdırırken uyguladığımız gibi, metinleri tırnak içerisinde, değişkenleri olduğu gibi ekrana yazdırma işlemidir.

<?
$degisken="Degiskenler";
echo <<<TURKWM
Bu da cok satirli echo kullanimina bir ornektir.
$degisken ekrana basilir.
Baslangic ve bitis ayni isimle olmalidir.
TURKWM;
?>


Echo kullanımına dair son bir ayrıntı ise kaçış karakterlerini atlamamaktır. Aksi halde hata verecektir. Kaçış işlemi \ işareti ile gerçekleşir. Örnekle açıklamak gerekirse;


<?
echo "Turkwm.com "PHP" Dersleri";
// Ekrana hata mesajı gönderilir.

echo "Turkwm.com \"PHP\" Dersleri";
// Ekrana basılacak yazı: Turkwm.com "PHP" Dersleri
?>



Değişkenlerin oluşturulması ve yapısına dair bir çok şeyi bir önceki derste değişkenleri anlatırken işledik. Echo'daki örnekler ışığında string içeren değişkenleri oluştururken kullanılabilecek bir kaç özelliğe değinebiliriz.

Tek yada çift tırnakla oluşturabilirsiniz.
$turkwm="PHP Dersleri"; ve $turkwm='PHP Dersleri'; arasında fark yoktur.

Tıpkı echoda olduğu gibi kaçış karakterleri kullanılır.
$tektirnak='Turkwm\'de PHP Dersleri devam ediyor';
$cifttirnak="Turkwm'de \"PHP\" Dersleri devam ediyor";

echo $tektirnak;
// Turkwm'de PHP Dersleri devam ediyor çıktısını verecektir.

Bu konuda için de sorularınız olursa yorum bırakabilirsiniz. Bir sonraki dersimizde PHP'deki operatörleri inceleyeceğiz.

21 Aralık 2008 Pazar

PHP Dersleri: Değişkenler

Her programlama dilinde verileri geçici yada kalıcı olarak saklamak için değişkenler kullanılır. PHP'de de bu durum farklılık arzetmiyor. Değişkenler sayı, metin ve dizileri içerebilir.

Örneğin ilk iki derste kullandığımız "Merhaba Dünya" php için stringtir. String kelimesini php ile alakalı gireceğiniz tüm sitede görebilirsiniz. En kaba tabiriyle string kelimesi gordugunuzde aklınıza kelimeler gelsin. Harflerden oluşanlan değişkenlere string, rakamları temsil edenlere integer olarak hitap edeceğiz.

PHP'de değişkenleri ifade etmek için başlarına $ işareti konur.

<?
$degisken="deger";
?>

Değişken tanımlarken dikkat edilmesi gereken kurallar vardır.
1- Değişken isimleri harf yada _ (alt çizgi) başlar.
2- Değişken isimleri küçük harfler, büyük harfler, rakamlar ve _ işaretinden oluşur. (Türkçe karakterler kullanılmaz. a-z,A-Z,0-9 yada _)
3- İki veya daha fazla kelimeden oluşan değişkenler söz konusu olduğunda, ilk harfleri büyük yazmayı yada araya _ işareti koymayı deneyebilirsiniz. ($arabaRengi yada $araba_rengi)
4- PHP büyük-küçük harf ayrımı (case sensitive) yapan bir dildir. Bu yüzden isimlendirdiğiniz değişkeni aynen kullanmalısınız. Yani $turkwm ile $turkWm değişkenleri birbirinden farklıdır.
5- Değişken değerini yazarken " yada ' işaretlerini kullanabilirsiniz.
6- Değişken tanımlandıktan sonra satırı ; işareti ile kapatmayı ihmal etmeyin.

Değişkenleri örneklemek gerekirse;

<?

/*
Değişkenlerin sonunda // ile başlayan kısımlar yorum
satırlarıdır.
Turkwm.com
*/

$turkwm_yazi = "String-Yazı değişken";
// Yazı Tipi Değişken (String)
$turkwm_dizi = array('php', 'framework', 'bloglar', 'eposta');
// Dizi değişken (array)
$turkwm_sayi = 1608;
// Integer Değişken (Rakam)

?>

Bir sonraki dersimizde değişkenleri ekrana basma (echo) ve string (metin) değişken oluşturma konusunda dikkat edilecek noktaları ele alacağız.

Asp ile Ajax post işlemi

Asp ile Ajax Teknolojisini İle Forma Girilen Bilgileri Sayfa Değişmeden Post Etme İşlemini Bir Örnekle Göstereceğim


<---default.asp nin içeriği-->

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-9">


<script>

function yeni_nesne(){

var nesneyarat;



if (!nesneyarat && typeof XMLHttpRequest!='undefined') {

try {

nesneyarat= new XMLHttpRequest();

} catch (e) {

nesneyarat=false;

}

}

return nesneyarat;

}


function AoL(id,cikti,hedef) {

var aktifform = document.getElementById(id);

var ekranayaz = document.getElementById(cikti);

var ciktiver = new String("");

var name, value;

for(var I = 0; I < aktifform.elements.length; I++){

name = aktifform.elements[I].name;

value = aktifform.elements[I].value;

ciktiver += escape(name) +'='+ encodeURIComponent(value) +'&';

}

var nesneiste = new yeni_nesne();

nesneiste.open("post", hedef, true);

nesneiste.setRequestHeader("Content-type", "application/x-www-form-urlencoded; charset=iso-8859-9");

nesneiste.send(ciktiver);

nesneiste.onreadystatechange = function() {

if (nesneiste.readyState == 4 && nesneiste.status == 200) {

ekranayaz.innerHTML = nesneiste.responseText;

}

else { ekranayaz.innerHTML = ''; }

}

return false;

}

</script>


</head>

<body>

<form id="form" onSubmit="return AoL(this.id,'sonuc','ajax.asp')">

<label for="adsoyad">Adınız Soyadınız</label><br />

<input type="text" name="adsoyad" id="adsoyad" />

<input type="submit" value="Gönder" />

</form>

<div id="sonuc"></div><div id="sonuc">

</body>

</html>



<--ajax.asp nin içeriği-->



<%

response.charset = "iso-8859-9"

ad = request.form("adsoyad")

If ad="" then

response.write "Form Kutucuğunu Boş Bıraktınız"

Else

response.write "Forma Girilen Bilgi <strong><u>"&ad&"</u></strong>"

End If

%>

Ajax ile yapılan sayfalardaki en büyük sorun türkçe karakter sorunu bunu aşmanın en kolay yolu ajax'ın işlem yaptığı sayfanın başına response.charset = "iso-8859-9 kodunu eklememiz yeterli olacaktır


19 Aralık 2008 Cuma

Php Dersleri: Yazım Kuralları (Syntax)

PHP Dersleri yazı dizisinin ikinci bölümünde yazım kurallarına değineceğiz. İlk bölümde bahsettiğimiz gibi genel olarak Perl ve C ile benzerlik göstermektedir. PHP kodları <? ve ?> işaretleri arasında yazılır. Bu iki anahtar arasında yazılan her şey sunucu tarafından derlenir. Satır sonları ; işareti ile kapatılır.


Örnek yazım şekli;
<?
// Kodlar bu alanda yer alacaktır.
?>

Örneği elle tutulur hale getirirsek:
<?
echo "Turkwm.com PHP Dersleri";
?>

Yukarıdaki kodları içeren bir php dosyası browser'da çağrıldığında aşağıdaki çıktıyı verecektir.

Turkwm.com PHP Dersleri


Örnekte kullanılan echo fonksiyonu, istenilen her çeşit verinin ekrana basılması için kullanılan php fonksiyonudur.

PHP dosyaları varoluş sebebinden dolayı web sitelerini oluşturan diğer elemanlarıda içerebilir. Bir php dosyasının içinde, php kodları, HTML tagları, javascript kodları bulunabilir. HTML ile birlikte kullanıma bir örnek vermek gerekirse;

<html>
<title>Turkwm.com - PHP Dersleri</title>
<body>
<?
echo "Merhaba Dünya!";
?>
</body>
</html>



Yukarıdaki örneklerde echo fonksiyonu ile ekrana bastırdığımız Merhaba Dünya yazısı php'de string olarak bilinir. Değişken tiplerini bir sonraki dersimizde işleyeceğiz. Fakat yazım kuralları ile alakalı kısmını anlatmak gerekiyor. Bir string (metin) ile bir değişken yada fonksiyon çıktısını ekrana yazdırırken "birleştirmemiz" gerekmektedir.

Şöyle ki;

<?
echo "Tarih: ".date('d-m-Y');
?>


Gördüğünüz gibi, Tarih kelimesini parantezler içinde yazdık. Ve günün tarihini date fonksiyonu ile alıp tırnak işaretleri arasındaki yazı ile birleştirdik.

PHP'de Yorum Satırları

Yorum satırları sunucu tarafından derlenmeyen bölümlerdir. Yorum satırlarını ifade eden özel işaretler bulunmaktadır. Tek satırlık yorumlarda // ve # işaretleri, çok satırlı yorumlar için /* */ işaretleri kullanılır.

<?
// Tek satırlık yorum örneği
# Bir başka örnek
echo "Merhaba Turkwm.com ";
/*
Yukarıda ki yorumlar ve bu alanda yer alan yorumlar
ekrana basılmayacaktır. Okuduğunuz bu satırlar
çok satırlı yorum örneğidir. Bu php dosyası ekrana sadece
Merhaba Turkwm.com yazısını yazdıracaktır.
*/
?>


Bir sonraki dersimizde Değişkenler'i inceleyeceğiz.

Serkan Denizbey

PHP Dersleri: PHP'ye Giriş


Turkwm.com faaliyetlerine dair alınan kararlar çerçevesinde bir php yazı dizisi hazırlama konusu gündeme geldiğinde heyecanlanmıştım. Yürüttüğüm projelerde ağırlıklı olarak LAMP (Linux/Apache/mySQL/PHP) kullansamda, daha önce konu hakkında makale yada bir anlatımım olmamıştı. Umarım faydalı bir yazı dizisi olacaktır. Başta Turkwm.com yönetimindeki arkadaşlar olmak üzere, bu yazı dizisini takip edecek her bireyden, eksik yada yanlış olduğunu düşündükleri konuda beni acilen uyarmalarını diliyorum. Ve Başlıyoruz..

PHP Nedir?

"Personal Home Page" kelimelerinin kısaltması olarak bilinen PHP, Zeev Suraski ve Andi Gutmans'ın katılımıyla piyasaya sürülen 3. versiyonu ile birlikte PHP: Hypertext Preprocessor olarak anılmaktadır. Sunucu taraflı bir dildir. Yani, bir php sayfası istendiğinde, php sayfasını yorumlar ve HTML çıktısını kullanıcının tarayıcısına gönderir. Bu yönüyle Windows sistemlerdeki ASP ile aynı mantıkta çalışır. Örnek şema ağaıda verilmiştir.
Buna ek olarak, açık kaynak ve cross-platform denilen bir çok işletim sisteminde çalıştırılabilmesi php hanesine yazılacak artılar arasındadır.
PHP'nin yazım stili (syntax) Perl ve C gibi ataları ile benzerlik gösterir. Ayrıca php4'te başlayan ve php5'de doyasıya kullanılan Nesne yönelimli programlama (Object Oriented Programming-OOP) desteği ile tercih edilme sebeplerine bir yenisini daha eklemiştir.

PHP birçok veritabanı ile uyumlu çalışabilir. Yaygın olarak mySQL ile kullanılmasına rağmen, MSSQL, Oracle, PostgreSQL, Sybase gibi bir çok veritabanını kullanabilir.

Nerden başlarım?

PHP kullanmak için sisteminize kurmanız gerekmektedir. Linux kullanan arkadaşların konuya vakıf olduklarını düşünüyorum. (Yanılıyorsam lütfen yorumlarda bildirin, Linux için kuruluma dair bir yazı daha yazarım) Windows'da PHP'yi tanımak isteyen arkadaşlar için içinde Apache, Mysql ve PHP'nin bulunduğu paket programları önerebilirim. Bu programlar arasında Wampserver'i indirebilirsiniz.


Wampserver kurulumu için dosyayı çift tıklayıp ilerlemeniz yeterlidir. (Resimli Antalım) Ek bir ayar gerekmez. Kurulumu tamamladıktan sonra c:\wamp\www\ dizini altına php dosyalarınızı koyabilirsiniz. Browser'ınıza http://localhost/ yazdığınızda web serverınızla çalışmanız başlayacaktır.

Ilk Scriptimiz;
1- Bir php dosyası oluşturun (örneğin: turkwm.php)
2- Dosyanın içine aşağıdaki satırları girin.
<?
echo "Merhaba Dunya";
?>
3- http://localhost/turkwm.php adresini ziyaret edin.

Ilk yazı burda sona eriyor. Ikinci yazıda yazım kurallarını ele alacağız.

Serkan Denizbey

17 Aralık 2008 Çarşamba

PHP: Php ile Döviz Bilgilerini Yayınlamak (PHP5)

Döviz kurlarına ilişkin birçok sitede, değişik varyasyonlarda kullanışlı hazır kodlar bulunmaktadır. Bu kodlara ek olarak PHP5'le birlikte gelen simplexml_load_file fonksiyonu ve SimpleXMLElement sınıfı ile döviz kurlarını alan bir kod örneğini çalıştıracağız.

Anlaşılacağı üzere simplexml_load_file fonksiyonu kullanarak bilgiler alınacağı için, verilerin bir XML dosyasında olması gerekiyor. Bu aşama da iki seçenek belirmektedir. Merkez Bankası'ndan verileri alıp bir XML dosyasına yazdırabilirsiniz, yahut xml formatında döviz bilgileri sunan bir sitedeki dosyası kullanabilirsiniz. Altınkaynak.com sitesi piyasa bilgilerini XML olarak sunmaktadır.Dolayısı ile ikinci yolu baz alarak konuya devam ediyorum.

İşlem iki kısımdan oluşuyor.

1- simplexml_load_file kullanarak XML'deki içeriği nesne haline getirilmesi.
2- Seçtiğimiz kurları ekrana basılması

Kod:

<?php
// Turkwm.com - Doviz kurlari
// Aralık 2008
$xml = @simplexml_load_file('http://xml.altinkaynak.com/doviz.xml');

$cikti='';
$cikti.='Dolar<br />';
$cikti.='Alis='.$xml->DOVIZ[1]->ALIS.'<br />';
$cikti.='Satis='.$xml->DOVIZ[1]->SATIS.'<br />';
$cikti.='Euro<br />';
$cikti.='Alis='.$xml->DOVIZ[2]->ALIS.'<br />';
$cikti.='Satis='.$xml->DOVIZ[2]->SATIS.'<br />';
$cikti.='Sterlin<br />';
$cikti.='Alis='.$xml->DOVIZ[4]->ALIS.'<br />';
$cikti.='Satis='.$xml->DOVIZ[4]->SATIS.'<br />';
$cikti.='Japon Yeni<br />';
$cikti.='Alis='.$xml->DOVIZ[8]->ALIS.'<br />';
$cikti.='Satis='.$xml->DOVIZ[8]->SATIS.'<br />';

echo $cikti;
?>

Bu uygulamanın çalışabilmesi için sunucunuzda php5 yuklu olmalidir. Sunucunuzdaki php versiyonunu öğrenmek için bir php dosyası oluşturup aşağıdaki kodları ekleyerek browser'da görüntülemeniz yeterlidir.

<?php
echo 'Sunucunuzdaki PHP Versiyonu: ' . phpversion();
?>

Kendi tasarımınıza adapte edebilirsiniz. Cron yada cache(önbellek) kullanarak belirli aralıklarla güncelleyebilirsiniz. Amaç örneği sunmak olduğu için kodun bu hali yetecektir. Takıldığınız konuları yorum kısmında aktarmaktan çekinmeyin.

Demo: Döviz Kurları

Download: Php4 ve Php5 için ayrı ayrı düzenlenmiş kodların bulunduğu arşiv dosyasıdır.

8 Aralık 2008 Pazartesi

Bayramınız Kutlu Olsun

Kurban bayramınız mübarek olsun. Maneviyatı ve birlikteliği yaşamaya vesile olan bu güzel günlerde sevdiklerimizi ihmal etmeyelim. Sevdiklerinizle, huzurlu ve mutlu bir bayram geçirmeniz dileğiyle, bayramınız kutlu olsun.

Bayram notları: Yılın son bayramına kavuştuk. Turkwm.com 'da minik bir ara veriyoruz. Bayramın ikinci günü Bursa'da (Kent Meydanı,Korupark yada Mudanya) buluşup yeni yıla kadar devreye alınması gereken fikirleri laptop eşliğinde masaya yatıracağız. Bayramda yolunuz düşerse katılım serbest olacaktır.

7 Aralık 2008 Pazar

Blogger: Sayfa başlığına SEO düzenlemesi

Blogger/Blogspot üzerindeki bloglar içinde SEO (Arama Motoru Optimizasyonu) uygulamaları yapılabilmektedir. Başlık düzenlemesi'de bunlara örnektir.


Aşağıdaki değişiklikleri yaptığınızda neler olacak ?



Sitenizin sadece ana sayfasının başlığında blogunuzun ismi görünecek. Diğer sayfalarda ise sayfanın ismi görüntülenecek. Sayfanın ismi, yazının başlığı ile aynıdır.

Nasıl yaparım ?
1- Blogger'a giriş yapın. Sırasıyla Yerleşim/HTML'yi Düzenle bölümüne geçin.

2- Şablonunuzun başlangıç kısımlarında olan <title><data:blog.pageTitle/></title> kodlarını bulun.

3- Bulduğunuz kodları silerek aşağıdaki kodları ekleyin.

<b:if cond='data:blog.pageType == &quot;index&quot;'>
<title><data:blog.title/></title>
<b:else/>
<title><data:blog.pageName/></title>
</b:if>

4- Şablonu kaydedin.

Verilen bu yöntemde, yazılarınızın olduğu sayfaya girildiğinde, web tarayıcısında yazının başlığı, sayfa başlığı olarak görüntülenecektir. Siz bu görünüme, blogunuzun ismini de eklemek isterseniz, 3. madde de verdiğimiz kod yerine aşağıdaki kodları ekleyin.

<b:if cond='data:blog.pageType == &quot;index&quot;'>
<title><data:blog.title/></title>
<b:else/>
<title><data:blog.pageName/>-<data:blog.title/></title>
</b:if>

Uygulanması ve kullanımı en basit blogger eklentisidir. Problem yaşarsanız yorum kısmına bırakabilirsiniz.

6 Aralık 2008 Cumartesi

Adhood: Turkticaret.net'e dair tepkilerin yeni adresi



Internet sitelerinin sahiplerinin büyük bir çoğunluğu için önem arzeden konulardan biri web sitesinden gelir etmektir. Bu konuda yurtdışı sponsorlarının ödeme/ödememe problemleri ile uğraşmaktan bıkan, gelen çeklerin paraya dönüştürülmesinde sorun yaşayan web sitesi sahipleri için Türk reklam pazarının firmaları ile çalışmayı seçtiler.

Google'ın Adsense programı dışında düzenli ödeme yapan yada Türk hitlerini değerlendiren popüler firmaların olmaması sebebiyle Linkz, Adnet, Mynet ADklik, Reklamstore ve Adtech gibi internetteki reklam pazarının önemli oyuncuları büyük aşama kaydetti. Bazı münferit sorunlar dışında, ve kontör konusundaki etik anlaşmazlıkları gözardı edersen bu firmalar site sahiplerine maddi getiri anlamında büyük fayda sağladılar. Bu pazara dahil olacağı birkaç ay önce açıklanan Turkticaret.net için beklemedeydik. Hatta yazar arkadaşlar Adhood reklam servisinin devreye girdiklerini bu site içinde duyurdular.

Gözlemde bulunmadan yazmak istemedim. Bilindiği üzere hosting/domain konusunda fazlasıyla şikayet aldığı için, bu servisin nasıl işleyeceği konusunda tereddütlerim vardı. Üzülerek belirtmek isterim ki, Turkticaret.net bu konuda da profesyonelce davranamadı.

Akşam saatlerinde Adhood ile alakalı bilgilere ulaşmak için Google'da bir araştırma yaptım. Aralarında devlet sitelerininde bulunduğu bir çok hosting müşterisinin web sitesine konulan toolbar reklam yüzünden bir çok forum başlığı açılmış. Açıldığı gün 70.000'in üzerinde reklam yayıncısını gördüğümde böyle bir durumu öngörmemiştim.

Yapıcı bir eleştiri getirmek gerekirse, TurkTicaret.net'in geri adım atması, ve talep eden müşterilerinin bu reklam servisinden faydalanması için gerekli çalışmaları başlatması en doğru karar olacaktır. Hukuki konulara vakıf olmadığım için işin bu yönüne hiç girmiyorum. Fakat kaymakamlık sitelerine dahi eklenen bu reklamın sözleşmede geçmemesinden ötürü kanuni olarak bir yaptırıma sebep olur mu? Buda hukuki konularının profesyonellerinin görüşleri ile netleşecektir.

Gerek müşteri sayısı, gerekse sunulan hizmetlerin çerçevesi düşünüldüğünde, alanında büyük bir güç olan Turkticaret.net'in bu mağduriyeti ortadan kaldırmasını umuyorum.

Forumlarda ve kişisel bloglardaki yorumlarda not aldığım bazı tavsiyeleri sıralamak istiyorum. Umuyorum ki Turkticaret.net'den bir yetkili okur.

1- Bünyesinde birçok yetenekli yazılımcı ve tasarımcı bulunduran bir firmanın böyle bir servisin web sitesini wordpress üzerinden sunması tepki çekmiş. /*Çok önemli bir ayrıntı olmasa da, prestij ve vizyon ayrı bir şeydir.*/

2- Sitenin web tarayıcılarda sorun çıkarması. Firefox ile üye olanlar bu yönde şikayet belirtmişler.

3- Sözleşmede yayıncının haylice aleyhine olan bazı maddeler. (Örneğin, "Yayıncının", "Adhood" tarafından belirlenen sürelerde ödemenin yapılmaması halinde işbu sözleşmeyi feshetmeyeceğini ve/veya " Adhood’a ve Adhood Programının yapımcısı ve yöneticisi" aleyhine sözleşmeye ve ödemeye ilişkin edimlerin yerine getirilmediğini iddia etmeyeceğini kabul, beyan ve taahhüt eder. Bu durumda, Yayıncı ancak beş günden az olmamak üzere süre vererek akdi feshedebilir...)

4- Önceleri ücretsiz hostlardaki reklam frame ve bannerlarını kaldırmak için uğraşan insanlar, şimdi ücretini ödediği serviste reklam kaldırma yollarını arıyorlar.

Türk girişimcilerin sanal dünyaya yatırımlarını desteklemek Türk web dünyasındaki bir çok insanın ortak düşüncesidir. Adhood'u bir çok kişi ön yargısız bekledi. Bu yazıyı yazmaktaki amacı da Adhood'u baltalamak değil, izlenen yoldan sapmadığı takdirde, kendisini baltalamaması için eleştiri bazlı yapıcı öneriler sunmaktır. Umarım dikkate alan yetkili birileri çıkar.

5 Aralık 2008 Cuma

Google: Friend Connect beta versiyonu ile devrede.

Google'ın sosyal ağlara yönelik prjesinin görücüye çıktığını haber vermekten mutluyum.
Daha interaktif bir site ve kullanıcının aktivitesini artırması sebebiyle hiti artan bir web siteniz olmasının önü açılacak. Google Friend Connect şu an beta versiyon ile hizmet veriyor. Başvuran webmasterlara test imkanı sunuluyor.

Friend Connect ile neler yapılabilir?
Başvurunuz onaylandıktan sonra Friend Connect sayfasındaki yönergeleri izleyerek, snippet adı verilen küçük kod parçalarını kullanarak sitenizdeki sosyal aktiviteleri hızlandırabilirsiniz.
Bunları yaparken programlama bilginiz olmasına gerek kalmıyor. Kullanıcılar sitenize katılabilir, Profile olusturabilir yada linkleyebilir ve diğer üyelerle iletişim halinde kalabilirler.
Tüm bunlar gelişirken, üyelerinizin bu işlem için yeni bir kullanıcı adı/şifre oluşturması gerekmeyecektir.
Friend Connect sayesinde varolan Google,AOL,Yahoo veya OpenID hesapları ile giriş yapabilirler.

Konuya ilişkin hazırlanan videoyu izlemenizi öneririm:


http://www.youtube.com/watch?v=N94s7ix0JPo


Şu sıralar Friend Connect'i test amaçlı olarak bir sitede kullanmaya başladım.
Yorum ve sonuç raporu tarzında birşeyler yazmak için yeterli tecrübe edindiğimde bunada yer vereceğim.

Friend Connect'in tadını çıkarmanız dileğiyle,

3 Aralık 2008 Çarşamba

googlehostedservice

Turkwm.com'a yeni yazar ve editör kadrosu oluşturma çalışmaları ekseninde alt yapı çalışmaları sürüyor. İş bu sayfa, kadromuza Gmail destekli mail @turkwm.com uzantılı mail adresi sunabilmek için hazırlanan doğrulama sayfasıdır.


Yıl sonuna doğru yazılarıyla web geliştiricileri ve web tasarımcıları başta olmak üzere Web teknolojileri ve IT sektörlerindeki arkadaşlara bilgilerini aktaracak takım arkadaşlarını Turkwm.com'da bekliyor olacağız.

2 Aralık 2008 Salı

Blogger: Navbar kaldırmak ve kurallar

Blogspot/Blogger'da yazan blogcular için en göze batan şey google'ın sayfanın üstüne koydugu Navbar olsa gerek. Konuyla alakalı birçok platformda görüşler yazıldı. Blogger yardım sayfalarında net bilgi olmadığı için, ve kolaylıkla kaldırılabildiği için sorun çıkmayacağını düşünenler ağırlıkta oldu.

Turkwm.com 'u blogger'da host etme kararı almadan önce araştırdığımız ilk konu da Navigasyon barının kaldırılması konusu olmuştu. Blogger'in yardım sayfalarında Navbarın kaldırılması ile alakalı tek bilgi, blogunu FTP yoluyla paylaşanları kapsıyordu. Geçtiğimiz ay içinde blogger'ın googledaki grubunda ilk kez resmi ağızdan konuyla alakalı cevap geldi.

While we don't recommend or support the removal of the Blogger navbar,
there is nothing in our Terms of Service that explicitly mandate its
use.

Bu cevap her ne kadar serbest olduğunu ilan etmese de, yasak olduğuna dair bir maddenin olmadığını gösteriyor. Daha sonrasında da son kararı soruyu soran kişiye bıraktığını belirtiyor.

Konuyla ilgili yeni gelişmeler olduğunda yer vereceğim. Navbarsız bloglar ;)

SEO: Yönlendirme nasıl yapılmalıdır? (301 Redirect)


Domainler taşındığında yada sayfaların isimleri değiştiğinde varolan adreslemeyi, yeni sisteme yönlendirme ihtiyacı doğar. Bu bağlamda en sık başvurulan html etiketi refresh olmaktadır.

<meta equiv="refresh" content="0; url=http://www.turkwm.com/yeni-icerik.html">

Content parametresindeki sıfır sayısı, refresh işlemi için beklenecek sürenin saniye cinsinden karşılığıdır. SEO'nun ülkemizde ilk tartışılmaya başladığı yıllarda net bilgiler yerine kulaktan dolma bilgilerle davranıldığı için, refresh konusunda hala tam bir uzlaşma sağlanamamıştır. Kimileri refresh süresi 30 saniye oluyorsa sorun olmayacağını düşünüyor, kimileriyse 5 saniyenin yeterli olduğunu düşünüyor.

Google'ın konuyla alakalı destek sayfalarında bu konuda net bilgi verilmemiş. Aksine daha farklı bir görüş sunmuş.

However, it is not supported by all browsers and can be confusing to the user. The W3C recommends that this tag not be used. We recommend using a server-side 301 redirect instead.


Son mesajı tercüme edersek, "sunucu taraflı 301 yönlendirmesini tavsiye ediyoruz." Evet, google meta etikenin bir parametresi olan refresh yerine sunucu taraflı yönlendirmeyi öneriyor.

Sunucu tarafındaki yönlendirme işlemi nasıl yapılır ?

php,asp,cgi,ruby ..vs sunucu tarafında derlenen programlama dillerinde 301 yönlendirmesini yapabiliriz. Buna ek olarak windows sunucularda IIS yönlendirmesinden, linux sunucularda da .htaccess 'den faydalanılabilir.

Yönlendirme Örnekleri;
PHP Yönlendirme
<?
Header( "HTTP/1.1 301 Moved Permanently" );
Header( "Location: http://www.turkwm.com/yeni-adres/" );
?>

ASP Yönlendirme
<%@ Language=VBScript %>
<%
Response.Status="301 Moved Permanently"
Response.AddHeader "Location","http://www.turkwm.com/yeni-adres/"
%>

ASP .NET Yönlendirme
<script runat="server">
private void Page_Load(object sender, System.EventArgs e)
{
Response.Status = "301 Moved Permanently";
Response.AddHeader("Location","http://www.turkwm.com/yeni-adres/");
}
</script>


JSP (Java) Yönlendirme
<%
response.setStatus(301);
response.setHeader( "Location", "http://www.turkwm.com/yeni-adres/" );
response.setHeader( "Connection", "close" );
%>

CGI PERL Yönlendirme
$q = new CGI;
print $q->redirect("http://www.turkwm.com/yeni-adres/");

Ruby on Rails Yönlendirme
def old_action
headers["Status"] = "301 Moved Permanently"
redirect_to "http://www.turkwm.com/yeni-adres/"
end

ColdFusion Yönlendirme
<.cfheader statuscode="301" statustext="Moved permanently">
<.cfheader name="Location" value="http://www.turkwm.com/yeni-adres/">

htaccess ile yönlendirme

Apache redirect ile:

Redirect 301 / http://www.turkwm.com/yeni-adres/

Mod-rewrite modülü ile:

RewriteEngine on
RewriteRule ^(.*)$ http://www.turkwm.com/yeni-adres/$1 [R=301,L]

1 Aralık 2008 Pazartesi

Google: Youtube klonu sitelere süpriz (Kullanım Şartları Değişimi)


Aylar önce Google'ı yakından takip eden bloglarda dillendirilen Youtube videolarının sitelerdeki kullanımına yönelik sınırlamaya dair en somut gelişme dün yaşandı. Aralık 2008 itibarıyla Youtube'un kullanım şartlarını düzenleyen "terms of use" sayfası düzenlendi.

Peki bunun anlamı nedir?
Youtube videolarına ait embed kodları ile yapılan site/blog örnekleri artık her yerde gözümüze çarpıyor. Manuel olarak yada xml/API desteğini kullanan bot'larla çekilen videoları veritabanına ekleyip, izleme sayfasınada Adsense kodlarını yerleştirip işin ticarete döküldüğünü gören Youtube/Google yönetimi bu salgının durulması için böyle bir önlem almış olabilir. Yasal açıdan yada Google aramaları üzerinde nasıl bir yaptırıma gidileceği konusunda net bilgiler yok. Şu an için açık olan tek şey, bu kuralları ihlal eden sitelerde videolar görüntülenmeyecek.

İlgili yazılardan tercüme olarak , Birtakım youtube videolarını içeren ve kasıtlı değişiklikler yaparak gelir elde eden bir website görüntüsü vermek istemedikleri için kulanım koşullarını buna göre uygulayacaklarını, youtube koşullarına göre, websiteleri ''reklam ve gelir amaçlı'' kullanamayabileceklerini bildirmişler. Ek olarak, kişiler sevdikleri videoları bloglarında paylaşarak ve altına yorumların eklenmesini isteyerek genel amaçlarının olması koşuluyla
yararlanabilirler şeklinde ek bilgi sunulmuş.

Güncellenen Youtube kullanım şartları ve yardım sayfalarındaki bilgiler ışığında son durum yukarıdaki gibidir. Kanuni yaptırımlara dair bir cümleye rastlamadım. Ama gerek arama motorlarında bir yığın kalabalık ve kirliliğe, buna paralel olarak Adsense oranlarının düşmesine sebep oluyordu. Kanuni yaptırımlara gerek kalmadan dur demenin en kolay yolu bu tarz sitelerin aramalardan yasaklanmasıdır. Belki google duyar sesimizi ;)

Kolbastı, Karadenizin dünyaya açılımı


Faroz kesmesi, Hoptek derken değişimin sol halkası kolbastı ile artık karadeniz dışına taşan bu şahane oyunun tutkunları giderek artıyor. Youtube'a bir göz attığımızda Belçika, Avusturya, Hollanda, Almanya başta olmak üzere birçok avrupa şehrinin caddelerinde bu oyun oynanıyor. Yabancıların dahi öğrenme çabası içinde olduklarını gözlemliyoruz.

Mesainin bittiği bu saatlerde güne bir nokta koyma amacıyla Youtube'da kolbastı araması yaptığımda genç ve sempatik bir arkadaşımızın bireysel etkinliğiyle mest oldum. Cengiz kardeşimiz Hollanda'da ikamet etmekte. Sözün bittiği bu anda, mikrofonu ve kamerayı ona devrediyorum ;)

İyi seyirler.

Cengiz61 Kolbastı | Youtube'a TR'den nasıl girerim?

Domain pazarının liderleri

Moniker'dan tanıdığım ve Paraguay'dan çıkmış olması sebebiyle ayrı bir sempati beslediğim domainer bir arkadaşla konuşurken laf dönüp dolaşıp domain satan şirketlerin pazar paylarına geldi. Godaddy'nin ilk sırada olduğu listede pek süpriz yok. Directi olarak baslayan, Resellerclub adıyla devam eden Public Domain Registry ilk 10'da. Namecheap benim domainlerle uğraştığım dönemlerde popülerdi. Resellerclub'in listeye girmesiyle ilk 10'dan çıkmış olacakki listede göremedik.

Tekil domain kayıt işlemleri için şirketlerin pek farkları yok. Fakat toplu domain alacaksanız, domainer statüsünde iş yapacaksanız kişisel önerim Moniker yada Enom olacaktır.

İşte Listemiz;

1. Godaddy ( Amerika )
Pazar Payı : 26.015%

2.Enom ( Amerika )
Pazar Payı :8.465%

3.Network Solutions ( Amerika )
Pazar Payı : 6.532%

4.Tucows ( Kanada )
Pazar Payı : 6.386%

5.Melbourne It ( Avustralya )
Pazar Payı: 4.845%

6.Schlund+Partner ( Almanya )
Pazar Payı: 4.280%

7.Wild West Domains ( Amerika )
Pazar Payı: 3.018%

8.Register.Com ( Amerika )
Pazar Payı: 2.616%

9.Moniker ( Amerika )
Pazar Payı: 2.575%

10.Public Domain Registry
Pazar Payı: 1.868%

Wordpress: Yorumları tersten sıralamak

Wordpress'te yorumlar öntanımlı olarak eklenme sırasına göre sayfada görüntülenirler. Bu sıralamanın tersi bir işleme ihtiyaç duyulduğunda neler yapabiliriz?

Bunun için wp-content/themes dizinine geçerek kullandığınız temaya ait klasöre giriniz. Temaya ait dosyalar arasından comments.php 'yi açarak aşağıdaki satırı bulun.

<?php if ($comments) : ?>

hemen altına aşağıdaki satırı ekleyin

<?php $comments = array_reverse($comments); ?>

Blog sayfanızda artık en son eklenen yorumlar en üstte görüntülenecektir. Bunu spesifik sayfalar üzerinde çalıştırmak istersek, yazının id'sine ihtiyaç duyacağız. Kalıcı bağlantı ayarlarından ötürü adres satırında yazının id'sini göremeyen arkadaşlar yönetim panelinden elde edebilirler.

Örneğin sadece 78 nolu yazıdaki yorumların tersten sıralanmasını istiyorsanız, üstte verilen satır yerine aşağıdaki satırı yapıştırmalısınız.

< ?php if (is_page('78')) {$comments = array_reverse($comments,true); } ?>

28 Kasım 2008 Cuma

Turkticaret.net Adhood ile reklam pazarında


Daha önce bu yönde bir çalışmaları olduğunu Turkticaret.net'deki arkadaşlardan öğrenmiştim. Fakat bu kadar çabuk açılacağını tahmin etmiyordum. Evet, Mynet ve Doğan grubundan (ADnet) sonra Turkticaret.net'de Adhood ile reklam piyasasına girdi.

Tasarım ve sunum olarak hoşuma giden sitenin reklamveren olarak bir sorun yaşayacağını tahmin etmiyorum. Zira hem piyasadaki bağlantıları hemde geniş KOBİ portföyü ile hızlı bir çıkış yapabilir. An itibarıyla 72968 Yayıncı Sitenin olduğu görülüyor.

Reklam seçeneklerini incelediğimde Mynet ve Adnet'den daha geniş bir yelpazeye sahip oldukları görebiliyoruz. Açıkçası daha önce duyurulan DNS tabanlı reklam modelinin uygulamasını görmeyi merakla bekliyorum. Buna ek olarak toolbar tarzı reklam seçeneği de rakiplerine karşı bir adım daha öne geçiriyor.

Reklam piyasasındaki oyuncular artıkça bundan hem reklamverenler hemde yayıncılar kazanacaktır. Rekabetin sanırım en güzel yanıda budur. Adhood ekibine başarılar.

Kampanya: Hostgator'da %75 indirim


Hostgator'da sadece bugün geçerli olacak bir kampanya ile yapacağınız hosting alımlarında %75 indirim yapılacağı açıklandı. Kupon kodu ve ilgili link ekte sunulmuştur.


Kupon kodu: BLACK
Site: Hostgator

27 Kasım 2008 Perşembe

Google Sets, Kümelendirme Sihirbazı.


Sanırım sitedeki yazıların bir çoğunda Google'a methiyelerle biten sahnelere şahit olmuşsunuzdur. Bu derece geniş açılı bir düşünce sistemi, bunu hayata geçirme aşamasındaki hız ve kullanılabilirlik göz önüne alındığında Google'a teşekkür ve tebrikleri sunmaktan insan kendini alamıyor. Hatt-ı zatında şu satırları okuduğunuz sitenin hostunu bile kendileri karşılıyor ki, minnettarım.

Bu yazıdaki sadete gelirsek, Google'ın sunduğu araçlardan Sets hakkında mütalaa edeceğiz.

Google Sets temel olarak girdiğiniz kelime öbeklerini işleyip bununla alakalı küme oluşturup size sunma işlemiyle görevli Google aracıdır. Arama motorlarının yükselişi ile anahtar kelimede odaklanmanın önemi arttı. Bu durumdan mütevellit olacakki Google'ın daha önce Adwords için sunduğu Anahtar Kelime aracı bir çok web geliştiricisine (yada yapımcısına) favori kaynak oldu. Google Sets uygulamasının benim gördüğüm farkı öbeği kullanmayan, fakat sonuca bakıldığında aynı kategoride yada aramada görüntülenecek sonuçları kümelenmesidir.

Trabzon,rize ve artvin kelimelerini ile Small Sets seçeneğini kullanarak örnekleme yapmak istediğimde görüntülenen sonuçlar aşağıdaki gibi oldu.

trabzon
rize
artvin
ordu
samsun
giresun
bolu
bayburt
sinop
kastamonu
amasya
zonguldak
tokat
gümüşhane
çorum
Görüldüğü üzere bir karadeniz kümesi oluştu. Kelime öbekleri Türkçe olduğunda sonuç çıkarmadığı zamanlarda oluyor. Bu da daha gelişme aşamasında olduğunun göstergesi.

Ek olarak, Google Reader'da takip ettiğim sitelerde bu servisi arattığımda linux kullanan arkadaşlar için hoş bir uygulama gördüm. Recai Oktaş tarafından yazılmış bu uygulama konsolda Google Sets kullanmanıza olanak sağlıyor. Vesile ile kendisine de bu tarz bir uygulama için teşekkürlerimi sunarim.

SEO: Google flash dosyalarını indexliyor mu ?


Çoğu konuda olduğu gibi, bu sorunun cevabını da lazım olduğunda aradım. Google yine şaşırtmadı. Flash ile hazırlanmış sitelerin indexlenmesi konusunda da yardımcı bir teknoloji geliştirmiş. Resmi bloğunda konuyla ilgili yapılan açıklamadan özetleri ve Google reader'da konuyla alakalı incelediğim bir kaç yazının önemli noktalarını yazarak bu konu hakkında bilgi arayan arkadaşlara kaynak sunmak istiyorum.

Google flash ile yapışmış sayfalardaki text bazlı verileri okuyabiliyor. Bu ne demek oluyor? Imaj/resim kullanmadan yazdığınız her yazı, buton ve menüler google botu tarafından taranabiliyor. Ters açıdan bakılırsa, swf dosyalarınızın içindeki resim ve imajlar şu an için tarama işlemine dahil olamıyor.

Ne tür flash dosyaları daha iyi indexlenir?
Belirtildiği üzere flash dosyalarınızın içinde olabildiğince (text) yazıya ağırlık vermek gerekiyor. Google bu verileri tarayarak , ilgili aramalarda kullanıcıya sunuyor. Vazgeçilmez tasarım parçaları olan ve flash içine gömülen imajlar şu an için dezavantaj olarak görülüyor.

Flash dosyalarının taranması konusunda da bazı kısıtlamalar var. Javascript eşliğinde yüklenen flash siteleriniz indexlenme konusunda hayal kırıklığı yaratabilir. Bir diğer kısıtlama da, swf dosyanızda , dışarıdan çağrılan dosyalarla alakalı. Google onları ayrı olarak indexliyor. Dolayısıyla sizin flash içeriğinizin bir parçası olarak görünmeyecektir.

Google'ın resmi blogunu Google Reader'a ekledim. Daha önce neden ziyaret etmediğimi şu an kendime açıklayamıyorum. Zira problem olarak düşündüğüm çoğu şeyi Google daha önce çözmüş.
Kaynaklar: 1, 2

Oyun Oyna


oyunator Ekibi ve Projesi 

oyunator, Türkiyenin önde gelen web sitelerinin oluşturulmasında yer alan iki genç girişimcinin oyun alanındaki ilk projesidir. Oyun ve eğlence alanında Türk internet camiasına hizmet vermesi amacıyla kurulmuştur. 

26 Kasım 2008 Çarşamba

Godaddy'de .com domainler 99 cent.


Her dönem çeşitli kupon kodlarıyla müşteri çeken Godaddy senenin finaline hoş bir kampanya ile giriyor. Kayıtlı her müşteri hesabı için bir adet .com uzantılı domain kaydı için 99 cent istiyor.

Bu ücrete standart ICANN payınıda ekleyince, .com uzantılı domainin maliyeti $1.19 oluyor.

Unutulmaması gereken konu ise, bu maliyet aldığınız domainin ilk sene maliyetidir. Diğer senelerde uzatma için ICANN payı dahil $10.20 ödemeniz gerekecektir.

Kampanyaya ait kupon kodu ve tanıtım bilgileri;

Kupon kodu: 99DOMAIN
Bitiş Tarihi: Belirtilmemiş.
Sınırlamalar: Her hesap için tek domain hakkı var.

Bir eşek hikayesi

Günlerden bir gün, köylerden birinde, bir adamın eşeği kör kuyulardan birinin içine düşmüş. Niye düşer, nasıl düşer diye sormayın. Eşek bu, düşmüş işte.

Hayvancık saatlerce acı içinde kıvranmış, anırmış, sesini duyurmaya çalışmış. Derken eşeğin sahibi gelmiş kuyunun başına. Bakmış zavallı eşek kuyunun dibinde melül mahzun bakınıyor. Üstelik de yaralı. Bir hal çaresi düşünürken bir koşu gidip köylüleri yardıma çağırmak gelmiş aklına. Ne yapsak, ne etsek de şu eşeği kuyudan çıkarsak derken, bakmışlar ki hayvan zaten yaralı, belki de kırık çıkığı da var, çok acı çektiği de belli, artık kurtarılsa da işe yaramaz düşüncesiyle çıkarmaktan vazgeçmişler ve üzerini toprakla doldurmaya karar vermişler. Herkes eline geçirebildiği ne varsa başlamışlar kuyuyu toprakla doldurmaya.

Zavallı hayvan, üzerine gelen toprakları her seferinde silkinerek üzerinden atmış. Onlar yukarıdan atmış, eşek silkelenerek her defasında toprağı altına almış.
Derken, ayaklarının altına aldığı toprak sayesinde her defasında biraz daha yükselmiş ve giderek yukarıya çıkmaya başlamış eşek. Köylüler de şaşırmışlar hayvanın giderek yükselmesine. Onlar atmış eşek yükselmiş derken neticede hayvan yukarıya çıkmayı başarmış.

Dipnot: iyinet forumlarında @tiva'nın aktardığı bir yazıdır. Hoş bir yazı olması hasebiyle sizlerle paylaşılıyor:)

PHP: Sayisal Loto Uygulamasi

PHP alt yapısını kullanan sitelerinizde kullanabileceğiniz küçük kod örneklerine eklenebilecek en popüler uygulamalardan biri de loto uygulamasıdır sanırım. Değişkenlerde oynama yaparak şans topu ve süper lotoyada adapte edebilirsiniz. Bu uygulama sayısal lotoda şans dağıtmaktadır.

Sayısal loto uygulaması;

<?
function loto($enyuksek = "49",$kactane="6") {
srand((double) microtime() * 1000000);
while (1>0) {
$loto[] = rand(1,$enyuksek);
$loto = array_unique($loto);
if (sizeof($loto) == $kactane) break;
}
sort($loto);
return implode(", ",$loto);
}
$numaralar = loto();
?>

Kullanımı;

<?
/* Web sitenizde numaraların görünmesini istediğiniz yere
aşağıdaki satırı ekleyin. */
echo $numaralar;
?>

Demo

PHP: Ziyaretçi Bilgileri Gösterimi

PHP'de kısa kod örnekleri dizisine ziyaretçi bilgileri ile devam ediyoruz. Bu bilgileri javascript ile vermek daha mantıklı , fakat PHP'de $_SERVER isimi öntanımlı değişken dizisinin kullanımının öğrenilmesi açısından bu tür örneklerin incelenmesi yerinde olacaktır.

Ziyaretçi bilgilerinin gösterimi;

<?
echo "<p>IP Adresiniz: " . $_SERVER['REMOTE_ADDR'] . "</p>";
echo "<p>Geldiğiniz Sayfa: " . $_SERVER['HTTP_REFERER'] . "</p>";
echo "<p>Tarayıcınız: " . $_SERVER['HTTP_USER_AGENT'] . "</p>";
?>

24 Kasım 2008 Pazartesi

%100 Tablo Genişliği Kullanımı

Web tasarımında tablo kullananlar için sorun yaratan konulardan biride açılan tabloların dikeyde %100 boyutlandırılmasıdır. Tablo etiketindeki height alanı %100 gösterilse dahi işe yaramamaktadır. Bu problemi CSS kodlarıyla aşmak mümkündür.

Aşağıdaki CSS kodlarını style taglarınızın arasına yerleştirin.

html, body, #wrapper {
height:100%;
margin: 0;
padding: 0;
border: none;
text-align: center;
}
#wrapper {
margin: 0 auto;
text-align: left;
vertical-align: middle;
width: 400px;
}

Sayfadaki kullanımı ise şu şekilde olacak;

<body>
<table id="wrapper">
<tr>
<td>Ortalanmış Dikey Tablo // Turkwm.com</td>
</tr>
</table>
</body>

15 Kasım 2008 Cumartesi

Blogger: Blogunuza meta etiketleri (tag) eklenmesi


Web site yapımı yada SEO ile uğraşanlar çok basit bir konu olsa da, bugünki yazımız yeni blog sahipleri için ilk az duydukları terimler olan meta etiketlerinin blogger'da nasıl eklendiğini işleyeceğiz.

Meta etiketleri sitenizin ziyaretçi potansiyeli yada arama motorlarındaki sırası konusunda en önemli konular arasına girmese de, eksik bırakılmaması gereken bir konudur. Bu etiketleri ürün etiketi gibi düşünebilirsiniz. Arama motorlarının okuması için siteniz hakkında bilgileri yazacabileceğiniz bir ürün etiketi olarak tanımlamak doğru olacaktır.

Bu kadar ön bilginin akabinde şimdi blogger'da barındırılan blogumuza meta tagları nasıl ekleyebiliriz bunu görelim.

Öncelikle blogger hesabınıza giriş yapın. Daha sonra Yerleşim > HTML'yi Düzenle adımlarını takip ederek içinde HTML kodlarının olduğu bir pencere barındıran bölüme gelmiş oluyoruz.

Şablonu düzenle başlığı altındaki kod penceresinin 6. yada 7. satırından sonra <head> etiketini göreceksiniz. Meta etiketlerimiz bu bölümde yer alacaktır. Bir kaç satır inerek, aşağıdaki kodu bulun.

<b:include data='blog' name='all-head-content'/>

hemen altına ise, aşağıdaki kodları ekleyin.

<meta content="Blogunuzun aciklamasi buraya" name="description">
<meta content="Anahtar kelimeler buraya" name="keywords">
<meta content="index,follow" name="robot">

Blogunuzun açıklaması alanında çok uzun yazmamaya özen gösterin. 150 karakteri geçmemeniz önerilir. Anahtar kelimelerini yazarken aralarına virgül koyun. 20 kelimeyi geçmemeye özen gösterin. Üçüncü satırda bir değişiklik yapmayın. Değişiklikleri yaptığınızdan emin olduktan sonra şablonunuzu kaydediniz.

Temel anlamda bu iki etiket yeterli olacaktır. Online meta tag oluşturmak için bu siteden faydalanabilirsiniz. Meta etiketler hakkında daha ayrıntılı bir yazıda buluşmak üzere.

14 Kasım 2008 Cuma

PHP: OpenInviter - Kontak Listelerine Erişim ve Davet


Genelde sosyal topluluk sitelerinde görmeye aşina olduğumuz kontak listesine davetiye mesajı yada email adreslerinin sitede olup olmadığını kontrol eden arabirimleri gölgede bırakacak bir php scripti tanıtmak istiyorum.

PHPClasses'da son eklenen listesinde gördüğümde ilgimi çekmişti. Gmail, Yahoo, Hotmail gibi birçok mail sağlayıcısına ek olarak MySpace,Orkut gibi sitelerdeki kontaklarada erişebiliyor. Kurulumu ve kullanımı oldukça basit. Pluginleri vasıtasıyla bir çok platforma erişebilmesi sanırım en önemli avantajı olacaktır. Ve daha önemli bir artısı ise, ücretsiz olması.

Turkwm.com takipçileri tarafından ilgi gördüğü takdirde daha detaylı anlatım ve Türkçeleştirme desteği verilebilir.

Tüm ücretsiz uygulamalarda olduğu gibi, yapan insanın harcadığı efora vefa olarak kullandığınız siteden geri link vermeyi ihmal etmeyiniz.

Download | Tanıtım Sayfası

Wordpress: Ücretsiz WordPress Teması - Gmax


Free Wordpress Theme / Gmax

Özellikler:

* Wordpressin son sürümü ile test edildi.
* 2 bölümlü
* Bileşen uyumlu
* Sabit genişlik.
* IE, FF, Opera, Flock & Safari gibi tüm browserlarla uyumlu dizayn

Demo | Download

Wordpress: Ücretsiz WordPress Teması - wptone


wptone Adsense uyumlu olarak hazırlanmış bir wordpress temasıdır. Bileşen destekli (widget-ready), html ve css kodları doğrulanmış, kullanımı ve kurulumu basittir.
En güzel yanı ise, adsense yayıncı numaranızı değiştiğiniz anda site size özel bir havaya bürünüyor.

Özellikler:

* Wordpressin son sürümü ile test edildi.
* 2 bölümlü
* Bileşen uyumlu
* Sabit genişlik.
* IE, FF, Opera, Flock & Safari gibi tüm browserlarla uyumlu dizayn.

Demo | Download | Tema Sayfası

13 Kasım 2008 Perşembe

SEO: Dinamik URL mi? Statik URL mi?


Her ne kadar statik sayfalar artık prestij için açılan kurumsal sayfalarda yada hatıralarda kalmış olsada, Arama motorlarındaki sıralamadaki rekabette ön sıralara çıkmak için her yolun denendiği günümüzde, sayfalar dinamik olsada adresmele statik'e doğru kayıyor.

PerfectGate.Net üzerinde bu konuyla alakalı doyurucu bir makaleyi okumanızı öneririm. Yazarın harcadığı emek gözönüne alındığında burada yayınlamak haksızlık olurdu.

(Makale Linki)

Paypal Türkçe Dil Seçeneği İle Hizmetinizde


Türkiyede de birçok kullanıcısı olan Paypal Türkçe bölümünü devreye aldı. Siteye girdiğinizde otomatik yönlendirme yoksa, sağ-üst menüde bölge ve dil seçeneklerinden Türkiye-Türkçe seçerek Paypal'i Türkçe olarak kullanabiliriz.

Paypal'i web camiasindaki birçok kişi bilir. Paypal'i bilmeyenler için ise, online ödemelerde kullanılan bir sistem olarak açıklayabiliriz. Dil seçeneği ile oluşan bu ılımlı rüzgardan sonra banka havalesi seçeneğini de aktif etseler fena olmaz düşüncesindeyim. Zira bugün Türkiyeden yurtdışı ile web üzerinden ticareti bulunan kişilerin büyük çoğunluğu öyle yada böyle paypal kullanıyor. Belirli komisyonlarla paypal'i nakite çevirmek yerine, bankaya havale daha hoş olur.

Türkçe dil seçeneğinin en olumlu yanı ise, ingilizce konusunda yeterli olmayan fakat paypal kullanmak zorunda kalan kullanıcılar için, paypalin rutin güvenlik işlemleri bile, konu anlaşılamadığı için zor geliyordu. Yardım bölümlerinin tercümeside bittikten sonra paypal kullanımında sorun yaşanmayacaktır.

Türkçe Paypal Hayırlı olsun. (Paypal Link)

Turkwm Mail Form Uygulaması

Php kullanılarak kodlanan mail form uygulamasıdır. Editörlerimizden Maviturk'un ücretsiz hizmetler kapsamında sunacağı ilk script olması dolayısı ile gelişime ve öneriye açık bir uygulama olacak.

Genel Özellikler;

- Hem mail ve hemde veritabanı kullanımı
Doldurulan formların gönderileceği yer tamamen formu kullanan site sahibinin insiyatifindedir. Isterse anlık olarak mailine gönderilir, dilerse form mesajları veritabaninda saklanır.
- Çift kademe güvenlik önlemi
Bilindik iletisim formlarinda olduğu gibi resim doğrulama seçeneğine ek olarak bu uygulamada güvenlik kodu olarak gösterilen rakamlar baz alınarak cookie denetimi de eklenmiştir. Böylece hem art niyetli kişilere hemde formu gönderdikten yanlışlıkla tekrar göndermek isteyenleri ana sayfaya yönlendirecektir.
- Kolay Entegrasyon
Iletişim formunun oldugu dosyayı kendi uygulamalarınıza ek dosya olarak (include) çağırabilirsiniz. Talep geldiği takdirde bazı hazır cms'ler için modul/blok tarzı eklentiler geliştirilebilir.

Şu veritabanı seçeneğinde aktif olan mesaj yönetim kısmı yazılmaktadır. Kodlama bittikten sonra testleri yapılıp, 10 gün içinde kullanıma sunulacaktır. Bu süre dahilinde öneri ve taleplerinizi maviturk@gmail.com adresine gönderebilirsiniz.

11 Kasım 2008 Salı

PHP: phpSitemapNG programı ile Sitemap oluşturma


phpSitemapNG, Google standartlarına uygun ücretsiz bir Sitemap oluşturucu yazılımdır. Adından da anlaşılacağı gibi PHP ile yazılmış ve GPL lisansı altında dağıtılmaktadır. RSS bazlı, text (metin) bazlı ve HTML bazlı sitemap dosyaları oluşturmak için kullanabilirsiniz.

Her tarz site için rahatlıkla kullanılabilir. Sistemin online demosunu buraya tıklayarak görebilirsiniz. Your host alanına site adresinizi, session takibi kullanıyorsanız session key alanına, excluded files ve excluded directories alanına ise indexlenmesini istemediğiniz dosya uzantısı ve klasorleri yazarak demoyu kullanabilirsiniz. 10 saniye süreyle sitenizi tarayacak ve sonuçları ekrana basacaktir.

Kurulum;

1. Kurulum dosyasını indirip ftp sunucunuzda bir klasor acarak (öneri: /admin/phpSitemapNG) yükleyin. (şifre korumalı olması tavsiye nedenidir.)
2. sitemap.xml ve sitemap.xml.gz sitenizin ana dizinine kopyalayın.
3. Aşağıdaki dosyaları okunabilir yapın (chmod 0666):
* /sitemap.xml (- yahut sıkıştırılmış sitemap için /sitemap.xml.gz)
* /sitemap.txt (text bazlı sitemap için)
* settings/settings.inc.php (ayarlarınızı saklamak için)
* settings/files.inc.php - (Oluşturulan sitemap hakkında bilgiler)
4. phpSitemapNG kullanıma hazır.

Kullanımı oldukça basittir. Anlatıma ihtiyaç duyan arkadaşlar için şurada resimli bir anlatım mevcut.

phpSitemapNG indir

JavaScript: Tıklandığında kaybolan reklam kodu

Birçok sitede sponsor reklamlar yada duyurular için kullanılan, tıklandığında kaybolan reklam penceresi uygulaması için forumlarda sorular gelmişti. Turkwm.com içerisinde de bu bilginin olmasi gerektiğine inanarak buraya ekliyorum. Kullanımı oldukça basittir. Sorun yaşadığınız takdirde, başlık altına yazarsanız yardımcı olmaya çalışırım.


<script type="text/javascript">
// Turkwm.com JavaScript Bölümü
// Author: Bilinmiyor.
function reklam(obj) {
var el = document.getElementById(obj);
if ( el.style.display != 'none' ) {
el.style.display = 'none';
}
else {
el.style.display = 'none';
}
}
</script>
<div id="turkwm">

Reklam kodlarımız buraya gelecek.
<br>
<a onclick="javascript:reklam('turkwm')">yoket</a>
</div>

10 Kasım 2008 Pazartesi

PHP: Türkçe php/mysql anlatımı


PClife dergisi öncülüğünde geçtiğimiz yıllar içinde kullanıcılara sunulan PHP Manual Türkçe e-kitabı ile PHP öğrenmeniz daha da kolaylaşacaktır. PHP4'e göre yazılan bu e-kitapda temel php fonksiyonları, mySQL veritabanı ile ilişkilendirilmesi, nesneye yönelik programlama örnekleri ve düzenli ifadeler gibi bir çok konuda anlatımlar bulunmaktadır.
Turkwm.com'a ilerleyen günlerde küçük kod (snippet) örneklerine yer verilecektir. Bu kodları anlamak için temel düzeyde de olsa php'ye aşina olmanız gerekmektedir. Bu kitap başlangıç için yeterli kaynağı barındırmaktadır.

Sourceforge.net üzerinde faaliyetine devam eden Easyphp grubu tarafından host edilen bu dosyayı indirmek için tıklayınız.

SEO: Sitenizin SEO Doğrulamasını Yapın.

Thrusites grubunun web-developers.net üzerinde hizmete sunduğu SEO doğrulama servisi aracılığı ile temel anlamda SEO notunuzu alabilirsiniz. Adres satırının altındaki “Show/ Hide mode options” seçeneği ile SEO 1.0 ve SEO 1.1 arasında tercihi yapabilirsiniz. Ek olarak link popülerliğinizi test edebileceğiniz bir formda sitede bulunmaktadır.

Firefox: Google'a Gönder (Send to google docs)

Gmailden alışık olduğumuz üzere bir çok dosyayı makinamıza indirmeden inceleyebiliyorduk. Elektronik postalar içinde gönderilen pdf,doc,html..vs dosyaları online olarak açmayı sağlayan hizmetin altında Google Docs var. Firefox için eklenti yazan hint kökenli insanlardan biri olan Amid Google Docs kullanarak web dökümanlarını online olarak açan bir eklenti (download linki) geliştirmiş.
Eklentiyi kurduktan sonra Firefox'un sağ tuş menüsüne bir satır ekliyor ve seçtiğiniz dökümanlar Google Docs hizmetine gönderiliyor.

Firefoxu default tarayıcı olarak kullanan arkadaşların ilgisini çekecektir.

Bedava Ligtv izle, yetinme Digiturk izle


Turkwm.com siteside blogger imkanları ile yayın hayatına devam eden bir site olduğu için blogger'a gelen yasaklamadan etkilenmiştir. 4 gün süren bu yasaklama süresince aslında internette blogcuların ne kadar kalabalık bir camia olduğunu gözler önüne serdi. Blog sayfaları kişilerin özgürlüklerini doyasıya yaşadıkları bir alan oldu.

İnsanlar yazdıklarını okuyor, yorum yapıyor, tavsiye ediyor.. Blog yazarları bunun hazzını yaşadı ve bırakmak istemiyor. Ligtv izle konulu bir blogun Digiturk tarafından mahkeme kararı ile kapatılması , Digiturk yetkililerinin bile öngöremediği büyüklükte bir tepkiyi doğurdu. Bu arada Diyarbakırda bir mahkemeden karar aldırmanın esprisini hala anlamış değilim. Konuyla alakalı gelen mailler arasında bir tanesi çok hoşuma gitti. Özetle paylaşıyorum.

Sayın Digiturk Tanıtım ve Pazarlama Direktörü (Varsa Tabi)

Ticari kaygınız nedeniyle istemeden ve farkında olmadan pek çok blog yazarının kişisel özgürlüğünü elinden aldınız.

Bunun beklenen sonucu olarak, an itibariyle, pek çok blog yazarı hem ailelerinin hem de dostlarının Digiturk aboneliklerini iptal ettirmeyi düşünüyor.

Müşteri kitlenizin en üst tabakasında yer alan, sinema paketleri ve yabancı dil kanallarının izleyicilerinin aynı zamanda Türkiye’de en aktif blog kullanıcıları olduğu gözünüzden kaçmaması gereken bir gerçek.

Marka imajınızın özellikle A+ grupta yerin dibine geçtiğinin ve geçmeye devam ettiğinin bilincinde olmalısınız.

Hatta zamanında, Danone‘nin kendi elinde olmadan içine düştüğü durumun İKİ MİLYON BLOGGER GÜCÜNDE daha kötü duruma, KENDİ ELLERİNİZ VE BECERİKSİZLİĞİNİZLE düşmüş olduğunuzun farkında olmalısınız.

...vs diye devam ediyor.

Türk insanının kreatif düşünme tarzının hastasıyım. Bu yazıyı bloglarda başlatmışlar. Dolayısı ile Google'da yüksek aranma hacmine sahip lig tv izle kelimesinin hem popularitesini yükseltiyorlar hemde o hacime ortak oluyorlar.

Bu yasağın gelmesine sebep olan Digitürk firmasının örtbas etmeye çalıştığı kelime öbeğini arama motorlarına daha büyük bir dalga ile yüklüyorlar. Bana da takdir etmek düşüyor.

Linux: Diskler dolduğunda uyarı veren script.

İster web sitelerinizi barındırdığınız sunucular olsun, ister çalıştığınız şirketteki sunucular olsun, yada müşterilere destek/danışmanlık verdiğiniz makinalardaki doluluk oranlarının önemli olduğu anlar vardır. Hergün, her an kontrol edemediğiniz sistemlerde başınıza zamansız problem açabilirler.

Açıkçası bugüne kadar benim aklıma bunun takibini yapacak bir kod örneği yazmak aklıma gelmemişti. Fakat blog sitelerinin en güzel yanıda bu. Aynı alanda yazı yazan kişiler, birbirlerini okuduklarında fikirlerini paylaşmış, aktarmış oluyorlar.

Google Reader'da takip ettiğim aytekinux blogunda bu durumlar için kullanılabilecek enfes ve bir o kadarda basit bir kod gördüm.

#!/bin/sh

if
df -h | egrep "90%|91%|92%|93%|94%|95%|96%|97%|98%|99%|100%"

then

df -h > disk.txt
echo " " >> disk.txt
echo " " >> disk.txt
du -sh /var/* >> disk.txt
mail -s "[Proxy-Hastane] Disk Doluyor!" tirtil@zabazingo.com < disk.txt
rm disk.txt

fi


if döngüsü ile disklerin bilgileri alınıyor ve %90+ bir değer çıkarsa disk.txt'ye yazılan bilgileri alıp belirttiğiniz maile gönderiyor. Günlük crona eklenmesi önerilmiş. Aytekin arkadaşımıza bu pratik çözümü için tebrik ve teşekkürler.

Engin Ardıç ve Yazıları

Engin Ardıç'ı 90'ların başında Uzan grubunun kumuş olduğu Magic Box Star1 kanalında Meriç Köyatası ile dönüşümlü olarak gündeme dair yorumlarını yaptıkları "Günün Yorumu" köşesinden beri elimden geldiğince takip ederim. Bugüne kadarda açıkçası beni pek hayal kırıklığına uğratmadı. Herkesin taraf tutmak zorunda olduğunu sandığı bu ülkede , ortadan dalması hep hoşuma gitti. O yüzden siyasi saplantısı olan insanlar pek sevmezler kendisini.

Gelelim bugün bu yazıya misafir olmasına sebep olan konuya;
Bilindiği üzere bugün 10 Kasım. Yani Atatürkün ölüm yıldönümü. Engin Ardıç bugün içinde güzel bir yazı hazırlamış. Okumanızı öneririm.

Yazıyı okumak için tıklayın.

SEO: Seo Danışmanları ve SEO Hizmetleri Hakkında


Bir bilişimci için boş vakit değerlendirme açısından hafta sonlarının en güzel yanı, yetişmesi gereken iş, görüşme gibi hafta içi konseptine uyan her türlü etkinlikten bağımsız olarak, akşam yemeği sonrası özgürce internette dolaşma imkanıdır sanırım. Bugün de her pazar gibi hafta içi listeme eklediğim siteleri gezdim. Konuları okurken çok enteresan bir ayrıntı dikkati mi çekti. "SEO Danışmanlığı".

Bu ünvanı bir webmaster forumunda gördüm. Geçtiğimiz yıl interneti çöplüğe çeviren SEO yarışmalarının galipleri günümüzde SEO Danışmanı ünvanını alıp bunu kurumsallığa dökmeye başlamışlar. SEO yarışmalarındaki mantıkla bu işi yapmayacaklarını ümit ediyorum. Zira bir wordpress kurup, üstüne etiket sistemini oturup, google'da ülkem insanının talep gösterdiği kelimeleri hedef alan yazıları kopyalayıp, etiketleyip site yaparak SEO yapıldığını sanmak abesle iştigal olur. Bunun üstüne birde ücretli/ücretsiz her kategoriden siteye link eklemeyi de unutmadiklarını da eklemek gerekir.

Tekstil sektöründe faaliyet gösteren bir arkadaşım bu tarz SEO danışmanlarından biri ile anlaşma yapmıştı. 6 ayın sonunda şirket, kendi isminin yazıldığı aramalarda bile görüntülenmiyordu. Şirketin sitesi Wordpress olmadığı için , SEO uzmanı arkadaşın elinden etiketleme imkanı alınmış oluyordu. Wordpress blogu ve etiket sistemi elinden alınan uzman arkadaşımıza deli gibi backlink tesis etme şıkkı kalıyordu. Ve sonunda kaçınılmaz sonuç, Google Bomb.

Bu yazıyı, web dünyasından teknik olarak uzak olan ama SEO hizmeti almayı düşünürken araştırma yapma gereği düşünen insanlar için yazdım. SEO konusunda çözüm ortağınızı seçmeden önce birkaç öneriyi maddeliyorum.

1- SEO Uzmanıyım diyen herkese itibar etmeyin
2- Faaliyet alanınızda referans sunabilen kişileri tercih edin. Örneğin sağlık sektöründeyseniz, sağlık firmaları için çalışmada bulunmuş biri olabilir.
3- Referans isterken, hazır yazılım (script) kullanılmış siteleri gösteren birinden uzak durun. Bu SEO uzmanı bolluğu Wordpress'in bizlere getirdiği en büyük dezavantajdır.
4- Bloglarla kazanılan ve genel içerikle beslenen referans siteleri gördüğünüzde uzak durun.
5- Olabildiğince soru sormaya özen gösterin. Arama motorlarının çalışma mantığı, sitenin yükselmesindeki etkenler, reklam maliyetleri, risk konuları..
6- xhtml, css, valid html , web2.0 (hatta3.0) gibi konulardaki bilgilerini referans verdiği sitelerde nasıl uyguladığını sorgulayın.
7- SEF(search engine friendly) ile SEO(search engine optimization) kelimelerinin farklı anlamlar taşıdığını bilin. Linkleri arama motoru dostu hale getirerek yapılan işlemin SEO değil, SEF (arama motoru dostu) olduğunu unutmayın. SEF, SEO'nun yalnızca bir parçasıdır, kendisi değildir.
8- Eğer çalışmaya başlarsanız, haftalık olarak çalışma raporu istemeyi ihmal etmeyin.

Sonuç olarak, para kazanmak için bir çok şeyin yapıldığı günümüzde, pek çok kişinin aşina olmadığı bu alanda da art niyetli insanlar olacaktır. Dikkatli davranarak hem paranızı hemde vaktinizi boşa harcamamış olursunuz.

9 Kasım 2008 Pazar

Çözüm: SMF forumlarda "Linki görmek için üye olmalısınız" engelini nasıl aşarım?

İnternette arama sonuçları içinde gezerken, aradığınız en ufak şey için bile üyelik isteyen forumlara mutlaka denk gelirsiniz. Bir kere gireceğiniz, download linkini yada bilgiyi aldıktan sonra bir daha yolunuzun düşmeyeceği bir yere insanlar sizi neden zorla üye yapmak ister hala anlayabilmiş değilim. SMF forumlar için bu sorunun çözüldüğünü gördüm. Bir örnekle açıklayayım;

İçeriğin bulunduğu ve bize uyarı veren adres:

http://www.turkwm.com/smf/zend-optimizer-5-dersleri-t32424.0.html


Yukarıda kalın olarak gösterdiğim rakamlar konu başlığının numarasıdır. O numarayı alıp, SMF'nin yazıcı dostu versiyonuna çeviriyoruz.

http://www.turkwm.com/smf/index.php?action=printpage;topic=32424.0


Şimdi uyarı ortadan kalkıyor.

Ve gelelim site sahipleri açısından çözümüne,
Printpage.template.php dosyasını açın.

// Version: 1.1; Printpage satırını bulun ve altına aşağıdaki satırı ekleyin.

is_not_guest();


Her iki tarafa da iyi seyirler.

Çözüm: Youtube'a Nasıl Girilir?


Youtube'a giriş için program indirmenizi isteyen, kurulum yapmanızı bekleyen yerler olabilir. Bu başlığı açma sebebimde aslında bu sebeptendir. Program indirmeden, ek bir kurulum yapmadan Youtube'a giriş için izlenmesi gereken yöntemi kısaca yazıyorum. Dailymotion içinde gerekli satırlar ekliyorum.

C:\WINDOWS\system32\drivers\etc\hosts dosyasını notepad (yada sevdiğiniz herhangi bir text editör) ile açın. Aşağıdaki satırları ekleyin.

208.117.236.70 youtube.com
208.117.236.70 www.youtube.com
195.8.214.140 dailymotion.com
195.8.214.141 www.dailymotion.com
Kayıt edip kapatın. Artık rahatlıkla girebilirsiniz. Ayrıca TTnet DNS'lerini kullanmak yerine farklı DNS'ler kullanırsanız sadece isim yasağı gelmiş yerlere ek ayar yapmadan girebilirsiniz. Birkaç DNS adresi vermek gerekirse;
208.67.222.222
208.67.220.220
4.2.2.2
4.2.2.3
İyi seyirler.

PHP: Basit Reklam Yonetimi ( Rastgele Banner )

İlerleyen zamanlarda ücretsiz ve işlerinizi kolaylaştıracak bazı uygulamalar geliştireceğim. Fakat siteyi takip eden arkadaşların php'ye aşinalıklarını artırmak için kısa kodlarla yapılabilen basit uygulamalara yer veriyorum. Bu yazımızda üstünde duracağımız fonksiyon shuffle olacak ve rastgele kodları ekrana basan basit bir reklam yönetim kodu yazacağız.

Örneğimiz;
<?
$reklamlar[]='google reklam kodlarini buraya yapıştırın.';
$reklamlar[]='<script src="http://www.turkwm.com/reklam.php?kampanya=4&banner=Sc4x0Ps" type="text/javascript"></script>';
$reklamlar[]='<a href="http://musteri.turkwm.com/?campaign=2" target="_blank"><img src="http://turkwm.com/reklam.gif" width="468" height="60" border="0"></a>';
$reklamlar[]='yahoo reklam kodlarini buraya
yapıştırın.';
$reklamlar[]='reklamveren 1 reklam kodlarini buraya
yapıştırın.';
$reklamlar[]='diger reklam kodlarini buraya
yapıştırın.';

// Dilediginiz kadar devam edebilirsiniz.

shuffle($reklamlar);
echo $reklamlar[0];
?>

PHP: Curl & file_get_contents. Hangisi Hızlı ?

Geçtiğimiz günlerde forumda sorulan bir soruydu. Cevap php'nin manual sitesinde zaten hazır olarak verilmişti. curl ve file_get_contents fonksiyonları altına yorum yapanların verdikleri bilgileri gözönüne alarak curl'ün file_get_contents'den daha hızlı çalıştığını söyleyebiliriz.

Test sonuçlarına geçeçek olursak;

İlk testi yapan üye, 20 adet farklı web sitesine 10'ar kere istek göndermiş. Alınan sonuçlar aşağıdaki gibi listelenmiş.

Curl: 43.02 saniye
FGC: 86.48 saniye
Fopen: 86.34 saniye
Socket: 44.91 saniye

Ikinci testi yapan üye ise yine farklı sitelere bağlantı açıyor. Sonuçları;

http://www.flickr.com/ sitesine 50 sorgu,
cURL ile 9.550734 saniye.
file_get_contents() ile 10.878360 saniye.

http://www.yahoo.com/ sitesine 50 sorgu,
cURL ile 4.729566 saniye.
file_get_contents() ile 10.443786 saniye.

http://www.ebay.com/ sitesine 50 sorgu,
cURL ile 46.348250 saniye.
file_get_contents() ile 52.685604 saniye.

http://www.godaddy.com/ sitesine 50 sorgu,
cURL ile 1.505460 saniye.
file_get_contents() ile 37.154304 saniye.

http://www.php.net/ sitesine 50 sorgu,
cURL ile 13.136836 saniye.
file_get_contents() ile 17.981879 saniye.

.htaccess ile yönlendirme nasıl yapılır?

Webmaster forumlarında htaccess ile alakalı olarak en sık sorulan sorulardan biride,

a sitesindeki linkleri b sitesine nasıl yonlendiririm?
Örnek olması açısından a sitesi google.com ve b siteside turkwm.com olsun.

.htaccess dosyanıza girmeniz gereken kod;
RewriteEngine on
Redirect 301 / http://www.turkwm.com/

Bu yazılışı çok sade bulan arkadaşlara regexli hali
RewriteEngine on
RewriteRule ^(.*)$ http://www.turkwm.com/$1 [R=301,L]

Adsense: Çöp Siteler / Az Kazandıran Siteler

Belirli aralıklarla bu listeye yer vereceğim. Pek vakit olmadığı için kendim listeyi güncelleyemiyorum. Internette hazırlanmış listelerin derlenmiş halidir. Genel olarak kontör tuzakları, arkadaşlık siteleri havasındaki adreslerin bulunduğu listeyi kendi listenizle karşılaştırmanız, ve yüklemeden önce kendi listenizin bir yedeğini almanızı öneririm.

İşte liste;


1001metal.com
1045.com.tr
123oyun.ws
200kontor.net
4dh.com
abdgocmenlik.com
acikoyna.com
akyoltas.com
albayrakbayrak.com
alefilm.com
amerikanvizesi.com
ankaramezarbakimi.com
aresofficenero.com
arkadasbulur.info
arkadassite.info
asilgurbet.com
ask-sohbet.net
askhikayem.com
askimaskimsite.info
asoyun.com
atcrentacar.com
avrupayakasiizle.com
bariya.com
beldebeton.com
bencesence.com
benimlesohbet.net
birgecesev.info
birincikuvvet.com
birsenx.info
bitefight.net
blinko-tr.com
blinko.com.tr
buvakit.info
canlitvizle30.info
canlitvizle31.info
catlaksohbet.com
cebine100.info
cepmsnindir.com
chatindir.info
chatzade.com
cicekci-cicek.com
ciceksepeti.com
citirayse.com
citircerezarkadas.info
dalpkontor.com
dataindir.info
dataindir.net
denizchat.net
devamli.net
dinamiksohbet.com
diyetzayifla.com
donusenadam.com.tr
ekoyasam.com
elmasekeri.info
enbuyukaskerbizimasker.net
espiri24.com
etkilisohbet.info
fagold.org
felder-gruppe.at
flycell.com.tr
forex-az.com.tr
forumkontor.info
fotoizle.com
foxlife.com.tr
foxlife.com.tr/Proje-13
gecelikpartner.com
gencdizi.com
genclikcopy.com
gercekpartner.info
girlsgogamestr.com
gizlipartner.com
gizlipartner.net
goguug.com
golfkazanmasansi.com
gonuldensevenler.com
greencardoffice.net
greencardofisi.com
gsvp.com
gursusondaj.com
guzelsozhikaye.info
hediye-cep-melodi.com
hediyewii.com
hemalhemsat.com
hep1den.com
heppsi.com
hepsisende.com
herkesebedavakontor.info
hi-epanel.com
indir-yukle.info
indir5.net
indir64.info
indir67.info
indir69.info
indir70.info
indirizle.info
inndirdownload.info
inndirkontur.info
istanbulbilisim.com.tr
izle23.info
izle25.info
izmir.net
izmirevlilik.com
juzel.com
kacmazemlak.com
kaliteliarkadas.info
kapaksiztencere.info
kayak.com
kilo-aldirici.com
kirmizialarm.net
kocerkirtasiye.com
kolaysevgilim.info
komikmizah.net
kontor-ve-bmw-firsati.com
konturland.info
kutsalkitap.org
limewiretr.com
macakizi.info
matfiztr.com
mavimucize.com
meet34.com
memurakontor.info
msncebimdeshop.info
multishop.tv
muratca.com
mymanita.com
mysmart.tv
opelmar.com
orkid.com.tr
oyunkulup.com
oyunlar123.com
oyunyerimiz.com
parcakontorca.com
partnerask.com
pirlantadan.com
playclub.com.tr
pronet.com.tr
randevum.com
sacbakim.com
sadecealdatanlar.com
safakkirtasiye.com.tr
sagliklidiyet.net
sanaltema.com
satiyoruz.biz
selectivekartal.com
sevgi.net
sevgiland.com
sevgiliankara.info
sevgiliarkadas.net
sevgiylekal.com
siberpartner.net
sigaratr.net
signtwin.com
sinanaluminyum.com
sinematv.com.tr
sivilforum.com
sohbetavrupa.com
sohbetchatmirc.info
sohbethikaye.info
sokker.org
sonsavas.com
sternrentacar.com
trcafem.com
truecover.biz
tunuskirtasiye.com.tr
turkizle.net
turktelekom.com.tr
tuturax.com
vajinismus.tc
vodafonekontur.info
voofi.com
yasaksizlar.com
yatak-partnerim.com
yatakpartner.net
yataktaask.com
youmobile-tr.com
youtubedizi.info
yukselmetal.com
zefanclub.com

Etiketler

Son Yazılar

Text Widget

Blog Archive