Ckeditor Kullanımı ve Türkçe Karakter Sorunlarının Giderilmesi

Ckeditor kullanımı kolay, basit birkaç adımla projeye dahil edilebilecek, popüler bir WYSIWYG html editörüdür. Admin panellerinde, yorum alanlarında, Web tabanlı e-mail gönderim araçlarında sıkça tercih edilen Ckeditor’ü ckeditor.com/download adresinden indirebilirsiniz.

Ckeditor Budur

Ckeditor Kullanımı

İndirdiğiniz zip dosyasındaki ckeditor klasörünü Php dosyalarınızın olduğu dizine çıkartın. Ckeditor’ü kullanmak istediğini Php dosyanızı açın. </head> etiketinden hemen önce

<script src="./ckeditor/ckeditor.js"></script>

kodunu ekleyerek .js dosyasını çağırın.

Oluşturduğunuz formdaki textarea’nın ad ve id değerlerini belirleyin. Örneğin;

<textarea name="yazi" id="yazi" cols="45" rows="5"></textarea>

Editörü kullanacağımız textarea’nın adı ve id’si “yazi” olacak. </form> tagından hemen sonra aşağıdaki javascript kodunu ekleyerek Ckeditor’ü yazı alanınız için kullanabilirsiniz.

<script>
CKEDITOR.replace( 'yazi' );
</script>

Ckeditor Türkçe Karakter Sorunları

Ckeditor ile bir içerik eklediğinizde, veritabanındaki ve/veya sayfa kaynağındaki Türkçe karakterlerin yazdığınız gibi görünmediğini fark edeceksiniz. “ç” için “&ccedil;”, “Ş” için “&THORN;” gibi girdiler göreceksiniz. Ayrıca gereksiz biçimde”&nbsp;” html boşluk verisinin kullanımı da dikkatinizi çekmiştir. Bunları düzeltmek için Php’nin str_replace fonksiyonunu kullanacağız. Formu post ettiğiniz (gönderdiğiniz) Php dosyanıza aşağıdaki kodları ekleyerek bu sorunu kolayca aşabilirsiniz.

$yazi=trim($_POST["yazi"]);
      $yazi= str_replace ( "&ccedil;", "ç",$yazi); 
      $yazi= str_replace ( "&yacute;","ı",$yazi); 
      $yazi= str_replace ( "&Ccedil;", "Ç",$yazi); 
      $yazi= str_replace ( "&Ouml;", "Ö",$yazi); 
      $yazi= str_replace ( "&Uuml;", "Ü",$yazi); 
      $yazi= str_replace ( "&ETH;","Ğ",$yazi); 
      $yazi= str_replace ( "&THORN;","Ş",$yazi); 
      $yazi= str_replace ( "&Yacute;","İ",$yazi); 
      $yazi= str_replace ( "&ouml;","ö",$yazi); 
      $yazi= str_replace ( "&thorn;","ş",$yazi); 
      $yazi= str_replace ( "&eth;","ğ",$yazi); 
      $yazi= str_replace ( "&uuml;","ü",$yazi); 
      $yazi= str_replace ( "&amp;", "&",$yazi); 
      $yazi= str_replace ( "&nbsp;", " ",$yazi);

Artık “yazi” alanınız hem görsel bir metin editörüyle düzenlenmiş hem de karakter sorunlarından arındırılmış biçimde kullanımınıza amade.

Konu açılmışken, sıkça karşılaşılan, Türkçe karakter sorunlarını aşmak için birkaç etkili yöntemden de bahsedeyim.

Php ve Mysql’de Türkçe Karakter Sorununu Aşmak

  • Utf-8 ile çalışın. Sayfanızda <meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″ /> kodu mevcutsa. Veritabanınızda tablo yapısı dilini “utf8_general_ci” olarak belirleyin.
  • Php sayfalarınızın en başında
    header('Content-Type: text/html; charset=utf-8');

    kodunu bulundurun.

  • Mysql bağlantı sorgunuzun ardından karakter kodlama biçimini belirtin.
    mysql_query("SET NAMES 'utf8'");

 

Php İle WordPress’e Yazı Ekleme

Php kullanarak WordPress’e yazı ekleyebilirsiniz. Bu işlem, Php WordPress bot yazılımları için ideal bir seçim olabilir.

Bu içeriğimizde, Php ile WordPress’e yazı ekleme yanında, başlık mevcudiyet kontrolü ve sitemap ping işlemlerini de yapacağız. Neredeyse tam bir WordPress Php botu yazmış olacağız.

WordPress’in standart editöründen sıkıldıysanız veya Php bot ile WordPress’e içerik eklemek istiyorsanız bunu basit bir fonksiyonla gerçekleştirebilirsiniz.

Ekleme yapacak Php dosyanızı WordPress’in bulunduğu dizine göndermeyi unutmayınız. Eğer farklı bir klasör kullanacaksanız include edilen (içselleştirilen) wp-blog-header.php dosyasının tam yolunu belirlemelisiniz.

Gerekli WordPress dosyasını içselleştirelim:

include('wp-blog-header.php');

Başlığımız “Beybut Ne Anlama Geliyor?” olsun. Bu başlık daha önce yazılarımızda (çöp dahil) varsa işlemleri durduralım. Eğer yoksa ekleme işlemine devam edelim.

$baslik='Beybut Ne Anlama Geliyor?';
$yazilar = wp_count_posts( 'post' );
$yazilar  = $yazilar->publish;
$postbits= new WP_Query();
$postbits->query('showposts='.$yazilar);
if($postbits->have_posts()) :
while ($postbits->have_posts()) : $postbits->the_post();
$kontrol=$baslik.','.get_the_title(); 
endwhile; endif;
if(strstr($kontrol, $bsl)) {
echo '<h1>Bu başlık mevcut. Çıkış yapıldı.</h1>';
exit;
}

Şimdi içeriğimizi WordPress’e ekleyelim.

$ekliyoruz = array();
$ekliyoruz['post_title'] = trim($baslik);
$ekliyoruz['post_content'] = 'Merhaba Dünya! Bu bir içeriktir.';
$ekliyoruz['post_status'] = 'publish';
$ekliyoruz['post_author'] = 1;
$ekliyoruz['ping_status'] = 1;
$ekliyoruz['post_category'] = array('1');
wp_insert_post( $ekliyoruz );

wp_insert_post işlevinin bütün değişkenleri için burayı referans alabilirsiniz.

post_category: Yazının gönderileceği kategorinin id’sidir. Eğer id’yi bilmiyorsanız WordPress yönetici panelinden Yeni Yazı Ekle bölümüne gelip sayfa kaynağını görüntüleyin. Kategorilerinizden birinin adını sayfa kaynağında aratın.

<option class="level-0" value="35">

biçiminde gördüğünüz seçim düğmesindeki value değeri kategorinizin id’sidir. Burada 35…

post_title: Yazı başlığınız.

post_author: Yazar id’si. Admin için bu id 1’dir.

post_status: Yayınlanma durumu. publish yayına açık anlamına geliyor.

ping_status: Pinglenme durumu 1 ise ping servislerine ping gönderiliyor. Kapatmak için 0 değeri verilebilir.

post_content: Yazınızın içeriği.

Eğer etiket kullanmak isterseniz “tags_input” ile etiketlerinizi belirleyebilirsiniz.

'tags_input' => [ 'etiket 1, etiket 2, etiket 3' ] //Etiketler.

Neredeyse bitti. Son olarak güncellenen sitemapımızı Webmaster Tools’a gönderelim (pingleyelim). Bunun için Php’nin file_get_contents fonksiyonunu kullanacağız. İsterseniz Curl da kullanabilirsiniz.

echo file_get_contents('http://www.google.com/webmasters/sitemaps/ping?sitemap=http://www.siteadresiniz.com/sitemapiniz.xml');

Artık WordPress’e kolayca yazı ekleyebileceğiniz tam teşekküllü bir Php botuna sahipsiniz.

Php Resim Efektleri

Php ile resme watermark (logo) basımı, resmin üzerine yazı yazma, resme yansıma efekti verme, resmi ters çevirme, büyütme ve küçültme gibi birçok işlemi yapabileceğiniz bir kütüphane bu içeriğimin konusu. GD veya Imagemagick fonksiyonlarıyla içli dışlı olmadan görsel efektleme işlerinizi kolayca yapabileceğiniz Verot classı (sınıfı) bu anlamda büyük bir kolaylık sağlıyor. Haydi başlayalım!

Verot’un Class Upload sınıfını buradan indiriniz. İndirdiğiniz dosyanın içerisindeki src dizininde “class.upload.php” dosyasını ilgili dizine çıkarınız. İşlemlerimiz için sadece bu Php dosyasını kullanacağız.

Resimlerimizle işlem yapacağımız Php dosyasının içerisine “class.upload.php”yi include edelim.

include 'class.upload.php';

Başlangıç için her şey tamam.

Php Watermark

Şimdi efektlemeye başlayabiliriz. Efekt işlemleri için belli bir sırayı takip etmeliyiz. İlk efekt örneğimizde Atatürk’ün transparan PNG görselini, bayraklı Türkiye haritası üzerine sağ alt köşeye gelecek biçimde basalım. Bunun için gerekli resim dosyaları şunlar:

Türkiye Haritası BayrakAtatürk PNG

Php dosyanıza include’den sonra şu satırları ekleyin:

$handle->allowed = array('image/*');
$handle = new upload('turkiye-harita-1.jpg'); // arka plan resmimiz
$handle->image_watermark       = 'ataturk.png'; //watermark resmimiz
$handle->image_watermark_position = 'R'; //sağa dayalı watermark basılmasını söylüyoruz
$handle->image_watermark_y     = 45; // watermarkımızın y ekseninden 45 pixel uzaklıkta olmasını söylüyoruz. Böylece watermark alt bölüme yapışacak.
$handle->jpeg_quality = 90; //Çıktı Jpg resminin kalitesi
$handle->image_convert         = 'jpg'; //Çıktı'nın türü.
$handle->file_new_name_body   = 'atam-turkiyem';  //Sonuç görselimizin adı. Buraya uzantıyı yazmayınız.
$handle->process('./'); //Bulunduğu klasöre çıkar.
if ($handle->processed) { //eğer işlem gerçekleştiyse...
echo '<h2>Görselimiz tamam.</h2>';	
echo '<img src="atam-turkiyem.jpg" />';
}

Yeni görselimiz hazır.

Atam Türkiyem

Diğer örneğe geçmeden önce kodumuzdaki bazı girdilerin ne anlama geldiğine dikkat ediniz.

Php Yansıma Efekti

İkinci örneğimizde bir manzara fotoğrafı için yansıma efekti oluşturalım. Sonbahar manzarası fotoğrafımızın işlenmemiş hali şöyle:

Sonbahar Manzarası

 

Kullanacağımız kodlar;

$handle->allowed = array('image/*');
$handle = new upload('manzara.jpg'); // yansıma efekti için kullanacağımız orijinal görsel
$handle->image_reflection_height = '80%'; // %80 oranında yansıtmasını söyledik.
//$handle->image_default_color    = '#000000'; //yansımanın arka planı beyaz renk olacak. Böylece silik bir görüntü verebileceğiz.
$handle->jpeg_quality = 90; //Çıktı Jpg resminin kalitesi
$handle->image_convert         = 'jpg'; //Çıktının türü.
$handle->file_new_name_body   = 'manzara-yansima';  //Sonuç görselimizin adı. Buraya uzantıyı yazmayınız.
$handle->process('./'); //Bulunduğu klasöre çıkar.
if ($handle->processed) { //eğer işlem gerçekleştiyse...
echo '<h2>Görselimiz tamam.</h2>';	
echo '<img src="manzara-yansima.jpg" />';
}

Yansıma efektli sonbahar manzarası:

Yansıma Efekti

Resmin Üzerine Font Kullanarak Yazı Yazmak

Üçüncü örneğimizde bir resmin üzerine Gdf fontu kullanarak “BEYBUT” yazmayı amaçlıyoruz. Bunu biraz fantastik hale sokalım. Aşağıdaki kalp işaretinin tam ortasına yazımızı yazalım.

Kalp

 

$handle->allowed = array('image/*');
$handle = new upload('kalp.jpg'); // arka plan orijinal görsel
$handle->image_text            = 'BEYBUT';
$handle->image_text_color      = '#000000'; //yazı rengi (siyah)
$handle->image_text_padding    = 10; //$handle->image_text_padding_y ve $handle->image_text_padding_x değerleri belirterek yazının pozisyonunu değiştirebilirsiniz.
$handle->image_text_font       = "sfautomation.gdf"; //fontumuz. Bu fontun işlem yaptığınız klasörde olmasına dikkat ediniz. $handle->image_text_font tanımı aynı zamanda font büyüklüğünü de belirtir.
$handle->jpeg_quality = 90; //Çıktı Jpg resminin kalitesi
$handle->image_convert         = 'jpg'; //Çıktı'nın türü.
$handle->file_new_name_body   = 'kalp-beybut';  //Sonuç görselimizin adı. Buraya uzantıyı yazmayınız.
$handle->process('./'); //Bulunduğu klasöre çıkar.
if ($handle->processed) { //eğer işlem gerçekleştiyse...
echo '<h2>Görselimiz tamam.</h2>';	
echo '<img src="kalp-beybut.jpg" />';
}

Kodlar uygulandığında ortaya çıkan romantik görselimiz:

Kalp Beybut

 

Resmi Ters Çevirmek

“Çevir kazı yanmasın.” bu örneğimizde bir kaz fotoğrafını vertical (dikey) olarak ters çevireceğiz. Verot sınıfında “V” (vertical) ve “H” (horizontal – yatay) olarak belirtilmiş çevirme seçenekleri mevcut.

Orijinal kazımız bu:

Kaz

$handle->allowed = array('image/*');
$handle = new upload('kaz.jpg'); // arka plan orijinal görsel
$handle->image_flip            = 'V'; //dikey olarak ters çevir
$handle->jpeg_quality = 90; //Çıktı Jpg resminin kalitesi
$handle->image_convert         = 'jpg'; //Çıktının türü.
$handle->file_new_name_body   = 'ters-kaz';  //Sonuç görselimizin adı. Buraya uzantıyı yazmayınız.
$handle->process('./'); //Bulunduğu klasöre çıkar.
if ($handle->processed) { //eğer işlem gerçekleştiyse...
echo '<h2>Görselimiz tamam.</h2>';	
echo '<img src="ters-kaz.jpg" />';
}

Bu kodları uyguladıktan sonra kaz çevirme işlemi tamamlanıyor.

Ters Kaz

$handle->image_flip            = 'V';

ile görselimizi dikey olarak ters çevirdik. Bunu ‘H’ yaparak yatay olarak da çevirebilirsiniz.

Diğer efektleme özelliklerine de değinelim.

Resim Boyutunu/Çözünürlüğünü Küçültme ve Büyütme

Resim boyutunu küçültmek veya büyütmek için basitçe;

$handle->image_resize          = true;
$handle->image_y               = 50;
$handle->image_x               = 50;

kodlarını kullanabilirsiniz. Görseliniz 50×50 pixel çözünürlüğüne dönüştürülecektir.

Blur Efekti

$handle->image_pixelate        = 10;

Resmi Siyah Beyaz Yapma

$handle->image_greyscale       = true;

Resme Çerçeve Ekleme

$handle->image_border          = 10;
$handle->image_border_color    = '#00FF00';
$handle->image_border_opacity  = 50;

10 pixel genişliğinde yeşil renkli ve yarı transparan bir çerçeve ekledik.

Verot’un diğer örneklerine bu adresten ulaşabilirsiniz.

Bu sınıfı kullanarak, çok fazla kod yazmadan, görsellerinizi efektleyebilirsiniz. İyi efektlemeler.

Dünyanın En Güçlü Şeyi

Dünyadaki en güçlü şey nedir? Bunun yanıtı elbette Fizik’te. Fizikçilerin kuşkuları haklıysa dört kuvvetle değil bir kuvvetle uğraşıyoruz. Becerikli bir kuklacının bir kukladan fazlasını oynatabilmesinde olduğu gibi, öyle görünüyor ki doğanın farklı kuvvetleri olarak gördüğümüz şeyin arkasında bir tek süperkuvvet var. Kütleçekimin, elektromanyetizmanın, güçlü ve zayıf nükleer kuvvetlerin birleşik halde olması söz konusu olabilir.

Newton, büyük eseri Philosophiae Naturalis Principia Mathematica’nın önsözünde, bütün doğa olaylarının, “cisimlerin parçacıklarını, o zamana kadar bilinmeyen bazı sebeplerden ötürü ya birbirine doğru çekip düzenli şekiller halinde birleştiren ya da itip birbirinden uzaklaştıran belli kuvvetlere dayandığı” yolunda derin bir şüphe beslediğini yazmıştı. Başka bir deyişle, fiziğin özünü doğadaki kuvvetlerin oluşturmasından kuşkulanıyordu.

Bu fikir, ondan önce gelen fikirlerle çarpıcı bir zıtlık gösterir. Yunanlıların bilimsel araştırma tarzı, bir “ilk hareket ettiricinin”, adalet ve ahlak mefhumlarına da hükmeden nihai bir etkenin rolünü varsaymak ve bu role saygı duymaktı. Doğa olaylarının arkasında ilişkili oldukları etik ve ahlaki boyutları araştırmaksızın sırf fiziksel mekanizmalar aramak gibi bir şey yapılmıyordu. Fakat artık fizik kuvvetlerinin herkes için geçerli olduğunu, ahlaki açıdan hiçbir şey ifade etmediğini biliyoruz. Matta İncili’nin diliyle söyleyecek olursak kütleçekim “adil olanın üzerine de olmayanın üzerine de yağmur yağdırdı.

Ama kuvvetlerin hepsi de bu kadar kapsayıcı değildir. Örneğin elektromanyetik kuvvet yalnızca elektrik yükü taşıyan parçacıklar arasında etkilidir. Güçlü kuvvet yalnızca kısa bir mesafede ve çekirdekteki parçacıklar arasında etkilidir. Bu bir soru doğurur. Bütün kuvvetler bu kadar farklıysa neden hepsinin aynı kökenden geldiğine inanıyoruz? Bu soruyu cevaplayabilmek için önce kütleçekimle ilgili fikirlerimizi ve nerelerde yetersiz kaldıklarını incelememiz gerekir.

Kütleçekimin Ehlileştirilmesi

Kuvvetlerin en zayıfı olan kütleçekim ilk ehlileştirilen kuvvet olmuştur. Newton ilk hamleyi evrensel kütleçekim kanunuyla yapmış, kütleye sahip olan cisimlerin nasıl bir etkileşim içinde olacağını betimleyen bir formül sunmuştur. Newton’ın çizdiği şemaya göre, kütleçekimin çekim gücü gezegenlerin hareketlerini, şaşırtıcı derecede doğru bir biçimde açıklıyordu. Gelgelelim Newton’ın kütleçekimle ilgili fikirleri iki bakımdan yetersiz kalıyordu. Birincisi, kütleçekimle ilgili bir betimleme sunuyor; ama kütleçekime bir açıklama getirmiyorlardı. İkincisi, kütleçekimin evrende nasıl işlediğini her yönüyle betimlemiyorlardı: Bazı olaylar açıklanmaya gelmiyordu.

Herhalde buna verilebilecek en meşhur örnek Merkür’ün perihelionunun gerilemesidir. Perihelion, eliptik bir yörüngede, yörüngesinde olunan şeye en yaklaşılan noktadır. Merkür’ün Güneş’in etrafındaki yolculuğunda da birbirini izleyen yörüngelerde değişen, yani gerileyen böyle bir nokta vardır. Gerileme, güneş sistemindeki başka gezegenlerin kütleçekim güçlerinin bir sonucudur; 1845’te Fransız astronom Urbain Joseph Le Verrier Newton kanununu kullanarak bunun ne olduğunu bulmaya çalışmıştı. Görünüşe bakılırsa bir hata vardı. Le Verrier’nin hesaplaması gözlenen gerilemeyi, bir yüzyıllık yayda 43 saniyeyle kaçırmıştı. Her yüzyılda bir hesaplamalar, bir derecenin sadece yüzde biri kadar hata veriyordu; ama hatalıydılar işte.

Talihe bakın ki Einstein’ın genel görelilik kuramı gerekli düzeltmenin yapılmasını sağladı. Görelilik kuramı, kütleçekim alanlarının kütle ile enerjinin evrenin dokusu üzerindeki etkilerinden doğduğunu söyler; kütleçekim uzay-zamanın bükülmesinden kaynaklanır. Görelilik kuramı şaşırtıcı derecede başarılı bir kuramdır, aşamadığı deneysel bir test olmamıştır. Yine de görelilik kuramının evrende gördüklerimizi betimlemekteki büyük başarısına rağmen, kütleçekimin nedenine ve nasılına ilişkin uygun bir açıklama ele geçmezliğini korumaktadır. Elimizde böyle bir açıklama olana dek, kütleçekimin aslında bu kadar zayıf olduğundan emin olamayız; özellikle de bilime yenik düşen bir sonraki kuvveti incelediğimizde.

Yüklü ve Hazır

Elektromanyetizma kütleçekimden çok daha güçlü bir kuvvettir. İki elektron alın: Aralarındaki elektromanyetik itme kütleçekimden kaynaklanan karşılıklı çekimlerinden 1043 kat daha güçlüdür. Fakat bu göreli güç bir yanılsama olabilir. İpucu, elektromanyetizmanın iki kuramın birleşimi olmasında yatmaktadır: Elektrik ve manyetizma.

1840’larda İngiliz fizikçi Michael Faraday demir dolguların bir mıknatısın etrafına saçıldıklarında neden doğrular oluşturduğunu açıklamak üzere bir alan kavramını ortaya attı. Faraday’e göre bu “kuvvet hatları” mıknatısın etrafındaki uzamın bazı fiziksel özellikleriyle ilişkiliydi. Bu alanla elektrik arasındaki bağlantı da kolayca kuruldu: Faraday, değişen bir manyetik alanın bir elektrik alanı yarattığını da keşfetti.

Fakat bir karışıklık vardı. Faraday’in dostu James Clark Maxwell, Faraday’in keşiflerini ve bunları betimleyen denklemleri bir araya getirmeye çalıştığında, sonucu, ancak bu bileşime bir etken daha eklediğinde anlamlı kılmayı başardı. Manyetik alanları değiştirmek elektrik alanları yaratmakla kalmıyordu. Tersi de geçerli olmalıydı: Maxwell elektrik alanlarını değiştirmenin de manyetik alanlar yaratacağını söylüyordu.

Maxwell’in yeni denklemleri güzel bir tutarlılıkla ışıldıyordu: Elektrik ve manyetizma aynı madalyonun iki yüzüydü. Bu birleşme başka bir güzel sonuca yol açmıştı. Maxwell manyetik bir alanı değiştirmenin bir elektrik alanı yaratmasına, bu elektrik alanın bir manyetik alan yaratmasına, bunun sonsuza dek böyle devam edip gitmesine baktığında, elektromanyetik ışımanın kökenini keşfettiğini fark etti. Dahası bu karışıklığın yayılma hızı ışık hızıyla aynıydı. Böylece ışığın elektromanyetik bir dalga olduğu derhal açıklık kazanmış oldu.

Bu keşfin önemini abartmamak zordur. Bu keşif, elektromanyetik tayfın, radyo dalgalarının ve gama ışınlarının, arada kalan her şeyin keşfedilmesini sağladı. Enerjinin uzayda bir noktadan diğerine nasıl aktarılabileceğini gösterdi; hiçbir fiziksel kaynağı olmayan bazı hayali etkileşimlerle ilgili fikirleri bertaraf etti. Herhalde en önemlisi de fizikte kısa süre sonra gelecek bir devrime zemin hazırlaması oldu. Işınım kaynağı gözlemciye göre hareket halinde olduğunda Maxwell’in denklemleri işe yaramıyordu; bu gözlem Einstein’ı bu anormalliği çözmeye yöneltti ve 1905’te özel görelilik kuramı geldi (bkz. Zaman Nedir?). Dahası elektrik ile manyetizmanın birleşmesi yalnızca başlangıçtı. Artık doğanın bir başka kuvvetinin de aynı elden çıktığını biliyoruz.

Einstein’ın Yumuşak Karnı

Birleşme fikri Einstein’ı çok güçlü bir biçimde harekete geçirmişti. Görelilik kuramının başarısının ardından Einstein ömrünü tıpkı kütleçekimle ilgili olarak yaptığı gibi, elektromanyetizmayı uzay-zaman geometrisinden çekip çıkaracak “birleşik bir alan kuramı” inşa etmeye çalışmakla geçirdi. Sonuçta o ve az sayıdaki takipçisi kuantum kuramının gelişimini görmezden geldiler. Einstein kuantum kuramını hiç sevmedi, kaybolup gitmesini umuyordu.

Ama öyle olmadı ve bu yeni kuramın araştırmaları, parçacık fiziğinin savaş sonrasındaki hızlı gelişimiyle birlikte iki yeni kuvvetin varlığına işaret etti: güçlü ve zayıf nükleer kuvvetler. Einstein bu kuvvetlerle hiç uğraşmamış, yalnızca elektromanyetizma ve kütleçekimle oynamayı sürdürmüştü. 1955’te öldüğünde, fizik onsuz ilerlemiş bulunuyordu.

Bu utanç vericidir; çünkü bugün çekirdekteki parçacıklar –nötron ve proton – arasında etkili olan ve 10-17 metre gibi son derece kısa bir etki aralığı olan zayıf nükleer kuvvetin elektromanyetik kuvvetle yakından ilgili olduğunu biliyoruz. Bunu biliyoruz; çünkü “beta” ışınımın gerisinde zayıf kuvvet vardır; beta ışınımında bir atom bir elektron ya da elektronun pozitif yüklü karşıt parçacığı olan pozitron salar. Beta ışınımıyla bir elektronun salınması bir nötronun bir protona dönmesini gerektirir; bu ancak zayıf kuvvetin kaynağı olan “W bozonu” en başta salınırsa gerçekleşir: Daha sonra çürüyüp elektron oluşturan parçacık W bozonudur.

Zayıf kuvvet ile elektromanyetik kuvvetin, fizikçilerin “kendiliğinden simetri kırılması” olarak bildiği aynı sürecin sonucu olduğunu fark etmemiz, aradaki bağlantıyı daha da güçlendirmiştir. Bu durum biraz, birbirine yabancı insanlardan oluşan bir kalabalığı bir odada topladığınızda olup bitenleri andırır. Yabancılar kendi aralarında konuştukça, bazıları bir alanda, bazıları bir başka alanda ortak noktaları olduğunu anlayacak, yeterince zaman tanındığında farklı şeylerden konuşan farklı gruplar oluşturacaklardır. Başta, “simetri” vardır: Yabancıları birbirinden ayırmanızı, gruplandırmanızı sağlayacak hiçbir şey yoktur. Ama onlar konuştukça, bu simetri kendiliğinden kırılır ve gruplar oluşur.

Steven Weinberg, Sheldon Glashow ve Abdus Salaam 1960’larda aynı kendiliğinden simetri kırılma sürecinin, başka bir kuvvetten elektromanyetik kuvvet ile zayıf kuvveti yarattığı göstermiştir. Onlar bu kuvvete “elektrozayıf kuvvet” demişler ve bu kuvvetin, parçalanmamış bir biçimde evrenin başlangıcındaki yüksek enerji koşullarında var olduğunu ileri sürmüşlerdir. Bu çalışma bir başyapıttır ve üçlüye 1979 Nobel Fizik Ödülü’nü kazandırmıştır. Kuram özgün kuramsal öngörülerde bulunuyordu: W ve Z bozonlarının varlığı gibi ve bunlar da varsayılan bütün özellikleriyle birlikte 1983’te bulundu.

Fakat belki de en önemlisi, bu atılım, zayıf kuvvet kısa mesafelerde elektrik yükü olmayan nötronlar üzerinde, elektromanyetik kuvvet ise muazzam mesafelerde ve elektrik yüklü parçacıklar üzerinde etkili olsa da görünürde birbirinden farklı olan kuvvetlerin esas itibarıyla o kadar da farklı olmadığı anlamına geliyordu. Aslına bakarsanız, hangi kuvvetin en güçlü kuvvet olduğunu söyleyememeyi bir kenara bırakın, kendimizi birden şok edici bir soruyla karşı karşıya bulduk.

Elektromanyetik kuvvet ve zayıf kuvvet bir zamanlar aynı kuvvet idiyseler kendiliğinden simetri kırılmasının doğadaki bütün kuvvetlere yol açmadığını kim söyleyebilirdi? Muhtemelen bütün kuvvetler tek bir kadim kuvvetin tezahürü olduğu için kuvvetlerden birinin en güçlü kuvvet olduğunu söyleyemiyorduk. Bu olasılığı araştırmak için geride kalan unsuru değerlendirmemiz gerekiyordu: Güçlü nükleer kuvveti.

Nükleer Bağ

Tıpkı, beta-çürümenin açıklanabilmesi için zayıf kuvvetin mevcut olmasının gerekmesi gibi, çekirdekteki protonlar arasındaki karşılıklı itiş güçlü kuvveti zorunlu kılmaktadır, aksi takdirde çekirdek bir arada tutulamazdı. “Güçlü” bu kuvvet için uygun bir isimdir: Öyle görünüyor ki bu kuvvet, çekirdeği parçalayabilecek güçte olan elektromanyetik kuvvetten yüz kat daha güçlüdür. Gelgelelim güçlü kuvvetin gücünü ölçmek, onu ehlileştirmenin kolay kısmıydı: Bu kuvvetin varlığını açıklamak çok daha zordu. Atom çekirdeğinin bir arada durabilmesinin tek sebebinin böyle muazzam bir kuvvet olduğunu bilmek yetmez. Bu kuvveti yaratan nedir?

Bu güçlü kuvvetin ardındaki fikirler 1970’lerin başında geliştirilmiştir. Kuarkların atom çekirdeğindeki nötronlar ve protonları oluşturduğu biliniyordu. Her kuarkın belirgin bir niteliği vardır, fizikçiler buna o kuarkın rengi der. Bu yüzden güçlü kuvveti kuarklara bağlayan kurama “kuantum kromodinamiği”, yani QCD denmiştir. QCD’ye göre güçlü kuvvet kuarkları birbirine, elektromanyetik ve kütleçekim kuvvetlerinin tersine mesafenin artmasıyla birlikte azalmayan bir etkileşimle bağlar. Kuarklar birbirinden uzaklaşırken sanki bir zemberekle birbirlerine bağlıymışlar gibi bu kuvvet güçlenir.

QCD denklemlerinde ortaya çıkan bu tuhaf özellik, güçlü kuvvete, nerede bulunurlarsa bulunsunlar kuarkları birbirine bağlama gücü verir. Birçok araştırmaya rağmen, tek başına dolanan bir kuark bulamamış olmamız, bu özelliğin doğasını yansıtır. QCD güçlü kuvvetin glüon diye bilinen bir bozon tarafından yaratıldığını söyler. Glüonlar ilk kez 1979’da yapılan deneylerde görülmüştür. Fakat bu kuram o tarihe gelindiğinde zaten sağlam bir dayanağa sahip bulunuyordu: Kuarklar, öngörülen niteliklere sahip olarak 1960’ların sonunda ve 1970’lerin başında parçacık hızlandırıcılarda tespit edilmeye başladığında QCD de kanıtlanmış bir kuram sayılmıştı.

Fakat fizikçileri asıl heyecanlandıran QCD’nin elektrozayıf kuvvetle aynı simetri kırılma fikrine dayanarak kurulmuş olmasıydı. Maddenin davranışına ilişkin tek bir tanım içinde, “büyük birleşik kuram” çerçevesinde birbirleriyle yakından ilişkili olarak bir araya getirilebilir olmaları tümüyle akla yatkın görünüyordu. Bu arayışın sönmeye yüz tuttuğu nokta da burası oldu. Otuz yıl süren araştırmaların ardından güçlü kuvvetin gerçekten elektrozayıf kuvvetle aynı ekipten olup olmadığına hâlâ emin değiliz.

Birleşme Yolunda Mücadele

Sorun şudur ki birleşme doğrudan olmaktan çok uzaktır. Birleşme için, birbirine yabancı insanların bir odada toplanması senaryosunda olduğu gibi başka bir simetri gerekmektedir; fakat bu kez yabancıların sayısı daha da fazladır. Bu birbirinden farkı olmayan yabancıların bir şekilde kendiliğinden ayrılıp beş farklı tipte parçacığı –farklı renkte üç kuark, elektron ve onunla ilişkili nötrino– ve üç kuvveti tanımlıyor olması gerekmektedir.

Birleşmeyi Dünya üzerinde yeniden yaratmak neredeyse imkânsızdır: Bu simetri kırılmasının enerjisine ulaşmak, en güçlü atom çarpıştırıcımız olan Büyük Hadron Çarpıştırıcısı’ndan 100 milyar kat daha güçlü parçacık hızlandırıcılarının varlığını gerektirmektedir. Gelgelelim bu fikri sınamanın başka yolları vardır. Bütün büyük birleşik kuramlara göre, kuarkların değişip elektron ve nötrino oluşturabiliyor olmaları gerekir, fizikçilerin bu büyük kuram için en iyi görünen adayları (ortaya çıkardığı beş parçacık yüzünden SU(5) olarak bilinir) da böyle bir sürece sahiptir. Bu kuram protonun bir tür radyoaktif çürümeye girdiğini söyler ve bunun ne sıklıkla gerçekleşeceğine dair bir öngörüde bulunur.

Fakat kuramın yaptığı tahminin çok yanlış çıkması utanç vericidir. Kuram bir protonun çürümeden evvel yaklaşık 1033 yıl yaşayacağını söyler. Yaklaşık çeyrek yüzyıl önce, fizikçiler son derece arındırılmış suyla dolu devasa tanklar inşa ettiler; tanklar böyle bir olayın gerçekleşmesini kayıt altına alacak cihazlarla çevriliydi. Kurama ve tanklarda bulunan proton sayısına bağlı olarak her yıl birkaç çürüme gerçekleşmesi bekleniyordu. Gelgelelim şimdiye kadar fizikçiler hiçbir şey görmemişlerdir. Fakat bir şansımız daha var ve bu Büyük Hadron Çarpıştırıcısı’nda gözlenebilir. Bu şansa “süpersimetri” deniyor.

SUSY Sesleniyor

Süpersimetri fizikçilerin parçacıkları iki gruba ayırmasından kaynaklanır: Elektronlar ve kuarklar gibi, maddeyi oluşturan parçacıklara fermiyonlar denir; foton ve glüon gibi kuvvetleri oluşturan parçacıklara da bozon denir. İki farklı tipteki bu parçacıklar, iki farklı kurallar dizisini izler. Süpersimetri (supersymmetry) yani SUSY de her bir parçacığın diğer grupta herhangi bir deneyde aynı biçimde davranacak bir “süper eşi” olduğunu söyler.

Bu mümkündür; çünkü fermiyonlar ile bozonlar arasındaki temel farklılık spin olarak bilinen kuantum özelliğinden doğar. Bozonların spini tam sayıdır –1, 2, 3 vb.– fermiyonların spini ise tam sayıların yarısıdır: ½, 3/2 vb. SUSY, bakış açısında bir değişimi gerektirir: Bir saate önden ya da arkadan bakmak gibi bir değişimi. Bakış açısındaki bu değişiklik kuantum spinini değiştirir (tıpkı arkadan bakıldığında saatin kollarının dönüşünün farklı bir biçimde anlaşılmasında olduğu gibi); fakat elektrik yükü ya da kuarkın rengi gibi başka şeyleri değiştirmez.

Bu kulağa, uygunluk sağlamaya yönelik bir kurgu gibi gelebilir; fakat fizikte en iyi fikirler arasında yer alan son derece saygın bir düşünme biçimidir. Gelgelelim tabii ki can alıcı soru, bunun doğru olup olmadığıdır. Spinin yanı sıra, süper eş parçacıkların başka bir özelliği daha değişir: Kütleleri. Süper eşler, bildiğimiz parçacık kümesindeki parçacıklardan çok çok daha ağırdır. Bu da E=mc2 sayesinde, bu süper eşlerin ancak yüksek enerjilerde var olabileceği anlamına gelir. Şükürler olsun ki Büyük Hadron Çarpıştırıcısı’nın 14 TeV’lik enerjisi, bu parçacıkların yaklaşık 1TeV’de ortaya çıkan en hafiflerini gözlemek için yeterli olacaktır.
Bu durum kulağa ümit verici gelse de bu parçacıkları tespit etmek hâlâ zordur. Normal maddelerle pek etkileşim kurmazlar; makineden de neredeyse geride hiç iz bırakmadan uçup gideceklerdir. Bu da süpersimetriye dair tek ipucunun, Büyük Hadron Çarpıştırıcısı detektörlerinden bir parça enerjinin kaybolması olabileceği anlamına gelir. Başka bazı kuramlar da bazı normal parçacıkların kaybolup başka “gizli” gerçeklik boyutlarına geçebileceğini ileri sürdüğü için, bu durum hatalı evetler ve kaçırılmış manzaralar için bir yol tarifidir.

Fakat süpersimetrik parçacıkları sorgulanamaz bir biçimde görecek olursak doğanın kuvvetleriyle ilgili büyük birleşik kuramın sağlam bir zemine bastığından emin olabiliriz. Güçlü, zayıf ve elektromanyetik kuvvetlerin ortak bir kaynaktan, Yunanlıların deyişiyle “ilk hareket ettirici”den çıktığını varsaymak tümüyle akla yatkın olacaktır. Gelgelelim merhemin içinde yüzen bir sinek vardır. Kütleçekime ne buyrulur? Kütleçekim de birleşmenin bir parçası mıdır, yoksa ayrı bir oluşum mudur? En güçlü kuvvetin var olduğunu söyleyemiyorsak da en azından kütleçekimin en zayıf kuvvet olduğunu söyleyebilir miyiz?

Kütleçekim kesinlikle zayıftır. Kuvvetler için, birleşebilecekleri enerji düzeyini gösteren muhtemel birleşme grafiğini çizdiğimizde, grafiğiniz bilinen evrenden büyük değilse kütleçekimi bu grafiğe yerleştirmek zordur. Diğer kuvvetler 100 faktör ya da yaklaşık bir değerdeki uzaklıktan itibaren birleşmeye başlarken, kütleçekim bu ölçeğin dışında yer alır. Fakat buradan bir çıkış yolu vardır. Muazzam derecede teknik bir çözümdür; ama bu teknik suyu uçuracak olduğumuzda, bu çözüm kütleçekime bağlı etkileşimin kütleye bağlı olduğunu, kütlenin de dahil olan enerjiyle doğru orantılı olduğunu söyler. SUSY tablosunda, yüksek enerjili birleşme koşullarını değerlendirdiğimizde, kütleçekim tabloya cezbedici bir ölçekte, tam olarak değil ama neredeyse diğer kuvvetlerin birleştiği noktada girmektedir.

Bu tam anlamıyla ikna edici bir cevap değildir; ama kütleçekim ile doğadaki başka bütün kuvvetlerin tek bir nihai kuvvetten doğmuş olabileceğini ileri sürmektedir. Bu süper kuvvet yalnızca evrenin oluşumunu izleyen ilk anlarda var olmuştur. Bu durumda hangi kuvvetlerin daha güçlü olduğunu sormak, hangi parçacıkların parçacığa daha benzediğini sormaktan farklı değildir. Kuvvetler birbirinden farklı olsalar da hepsi de bir tek özelliğin veçheleridir. Kütleçekim elektromanyetizmaya karşı işlemeyecektir; öyle görünüyor ki aynı cepheden mücadeleye girmişlerdir.

Tanrı Parçacığı Nedir?

Tanrı parçacığının Tanrı ile herhangi bir ilgisi olmadığını öğrenmek sizi şaşırtmayabilir. Tabii, şimdiye kadar kimsenin bu parçacığın varlığını kanıtlayamamış olması dışında. Bu terimi Nobel ödüllü fizikçi Leon Lederman geliştirmiştir. Terim kısmen, bir parçacığın evrenle ilgili bütün soruları cevaplayacağını düşünen fizikçilere verilmiş esprili bir cevaptır, kısmen de bilimin keşiflerinin hayatın anlamı hakkında söyleyecek bir şeyi olabileceği düşüncesinin alaya alınmasıdır.

Maalesef Tanrı parçacığı bunların hiçbirini yapmaz: Bize evren hakkında her şeyi söylemediği gibi hayatın anlamını da vermez. Fakat bu Higgs bozonunun aramaya değer olmadığı anlamına gelmiyor. Higgs bozonu, standart parçacık fiziği kuramının nihai parçasıdır. Varsa, evrenin asli doğasının büyük bölümünü ortaya çıkardığımızdan ve maddelere kütlelerini neyin verdiğini bulduğumuzdan emin olup dinlenebiliriz. Yoksa tahtanın başına yeniden dönmemiz gerekebilir.

Bu oyunun sahnelendiği yer İsviçre’dir. Cenevre’deki Avrupa Nükleer Araştırmalar Örgütü’nün binasında bulunan dünyanın en güçlü parçacık hızlandırıcısı fizikçilerin “standart fizik modeli” dediği şey hakkında hakikatin tellali olacaktır. Büyük Hadron Çarpıştırıcısı protonları son derece hızlı iki trenin gücüyle çarpıştırdığında Tanrı parçacığı ortaya çıkabilir. Dünyanın dört bir yanında fizikçiler tetikte, Peter Higgs’in 1964’te söylediklerinde haklı olup olmadığını görmeyi beklemektedirler.

Higgs Bozonunun Doğuşu

Peter Higgs’in iddiası bir hayli doğrudandır. Higgs, kütlenin kökenini incelemeye yönelik çeşitli girişimlere cevaben kuramsal fiziğin yeni bir alanın varlığını nasıl mümkün kıldığını betimleyen bir makale kaleme almıştır. Bu alan, kütleçekim alanı ya da elektromanyetik alan gibi bilinen alanlara bir ilave olacaktır. Büyük Patlama’daki ateş topunun ardından evren soğurken bu alan ortaya çıkmış, belli parçacık tipleri için bir sürükleme kaynağı oluşturmuş, belki de onlara kütle olarak bildiğimiz özelliği vermiş olabilir.

Makale başta Physics Letters dergisinin editörü tarafından, “fizikle belirgin bir ilgisi olmadığı” gerekçesiyle reddedilmiştir. Higgs bu fikre somut bir uygulama alanı vermek için bu makaleyi yeniden kaleme almıştır: Bahsettiği alanın çekirdekteki parçacıkları bir arada tutan kuvvette doğabileceğini söylemiştir, fakat yine kimse bununla fazla ilgilenmemiştir. Steven Weinberg, Sheldon Glashow ve Abdus Salaam elektromanyetik ve zayıf nükleer kuvvetleri birleştirmeye çalışıncaya dek.

Bu iki kuvvetle ilgili kuramlar, birçok bakımdan tekinsiz derecede benzer görünmektedir. Kuantum elektrodinamiği olarak bilinen elektromanyetik kuvvet kuramı ile bazı radyoaktivite biçimlerini yaratan ve güneşin nükleer füzyonunu besleyen “zayıf” nükleer kuvvet kuramı madalyonun iki yüzünü andırmaktadır. Weinberg ve Salaam, durumun gerçekten de böyle olduğunu göstermiş ve bu iki kuvveti “elektrozayıf” kuramda birleştirmişlerdir. Fakat bir sorun vardır. Bu kuram, kısaca W ve Z bozonları (bozon bir kuvvet yaratan bir parçacıktır) denilen henüz görülmemiş parçacıkların da parçacıklar bahçesine eklenmesini gerektirmiştir.

Biraz yüz kızartıcı bir durum, bu iki parçacığın kütleye sahip olmasıdır. Bu yanlış görünmektedir; çünkü en meşhur bozon, elektromanyetik kuvveti yaratan fotondur ve fotonun kütlesi yoktur. W ve Z bozonları ile foton, birleşik bir kuram içinde aynı işi yapıyorlarsa, aralarında bir tür “simetri” olması gerekir. W ile Z bozonlarının kütleleri yüzünden aralarında bir simetri olmaması fizikçilerin, bir şeyin simetriyi bozduğundan şüphelenmesine yol açmıştır; tıpkı titiz bir biçimde dengelenmiş mutfak tartılarına bir parça ağırlık eklenmesinin hassas dengeyi bozması gibi. Peki, ama bu ağırlık neydi? Peter Higgs, cevap olarak kendi alanını gösterdi.

1967’ye gelindiğinde Weinberg ve Salaam, Higgs alanını elektrozayıf kuramla birleştirmişlerdi. 1983’te CERN’de W ile Z bozonları tam da Weinberg ile Salaam’ın tahmin ettiği biçimde görüldü. Bu bir zaferdi, parçacık fiziği seferinin kapanış marşıydı. Bir tek küçük ayrıntı dışında. Hiç kimse Higgs alanının gerçekten orada olup olmadığını bilmiyordu.

Günümüzde bilim insanları halen Tanrı parçacığını bulma/kanıtlama gayretindeler. Deneyler heyecan verici sonuçlar doğuruyor. İlerleyen yıllarda yeni haberlerle mi karşılacağız yoksa sil baştan sorgulamaya devam mı edeceğiz bunu zaman gösterecek.

League of Legends Komikleri

Lol‘den seçmece espriler, şakalar, troller, komik sözler. League of Legends namı diğer LoL’de tribünalin devreye girmesiyle küfürler bir nebze azalsa da yurdum oyuncusu sataşmanın yeni biçimiyle hem şaşırtıyor hem güldürüyor. Ne diyelim, küfürden iyidir…

Fizz’e ithafen Mid’deki diğer oyuncu:

Paşa çayımın yanında hep balık kraker yerim.

Annie’ye sataşan Yasuo “Küçük İbo” şarkısıyla seslenir:

Analar, babalar sizde nasıl vicdan var. Küçük bir kız çocuğu Mid Lane’da ne yapar!

Takımının feedleyen destek oyuncusu Janna’ya Vayne’nin isyanı:

Allah beyin dağıtırken Janna Zhonya basmış!

Yasuo karşı takımın oyuncularını kışkırtır:

Merhaba ben Yasuo! Kaval çalar, keçi eti yer, penta atarım.

Braum meydan okur:

Bıyıklarım için daima badem yağını tercih ediyorum. Bu yüzden kalkanım yalnızca elimdekinden ibaret değil.

Solo’da rakip takımın oyuncusunu ve jung’u kesip ikide iki yapan Yorick Memati edasıyla böbürlenir:

Biz kazı kazan değil mezar kazanız yeğenim.

Vel’koz ile Katarina’ya ezilen oyuncu durumu kurtarma peşindedir:

Kardeş lisede matematiğim 2’ydi ben ne anlarım trigonometriden!

Penta atan Kog’maw kendine yakışır bir özlü sözle zaferini kutlar:

Amele sümüğü gibi yere yapıştınız gençler.

Harika bir oyun geçiren Alistar rakiplerine laf atar:

Bak evlat iki şey öküzün boynuzunda döner. Biri dünya biri oyun!

Cho’gath tarafından yenilen Ashe ürkmüştür:

Kardeş acıktıysan tavuk döner ısmarlayım.

Tek başına 4 kişi arasına zıplayan Ziggs’e takım arkadaşı serzenişte bulunur:

Bombacı Mülayim 2

Bir türlü Gank atmayan Hecarim’e takım arkadaşları kızmaktadır:

Milletin Hecası İngiliz Arap atı bizimkisi sütçü beygiri!

Oyun başında tek atacağını söyleyip feedleyen Rengarla dalga geçilir:

Wiskas mamanı tasına koydum gel de ye kedicik.

Takımına küfür eden Oriana için all chatten çağrı:

Beyler Ori’nin topu patlamış. Hayrına biri top alsın.

Totem yardımıyla, Golemlerin çıkmasını beklerken dans eden Zac’i gören karşı takım oyuncusu:

Na’ber Jelibon. Yine bıngıl bıngılsın.

Bot Lane’de rakibi Quin ve Alistar’ı ezen Lulu ve Jinx ikilisinden Jinx, Quin tarafından kör edilince eski Türk filmlerinden bir gönderme yapar:

Allahım kör oldum. Alistar bir tosla da gözlerim açılsın xD

Php ve Ajax İle Wikipedia Uygulaması

Php ve Ajax Jquery ile Wikipedia hızlı arama uygulaması yapalım. Bir text kutusuna yazılan her harf için başlangıç harfleriyle uyumlu Wikipedia’da yer alan başlıkları listeleyelim. Örnekte, kullanıcı “bey” yazdığında “Bey”, “Beyaz”, “Beyin”, “Beyoğlu” gibi Wiki başlıkları görünecek. Bunun için iki adet dosya kullanacağım. Biri Ajax ile verileri gönderen wiki-demo.php dosyası diğeri gönderilen verilere göre Wikipedia Opensearch’tan arama yapıp başlıkları ayrıştıran wikile.php dosyası.

wiki-demo.php dosyasını oluşturmakla işe başlayalım.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js"></script>
<title>Wikipedia Ajax ve PHP Demosu - Beybut.com</title>
<style>
.inner {
height: 150px; 
overflow: auto;	
}
</style>

</head>

<body>
<script>
function wikim() {

    $.ajax({

        type: 'GET',

        url: 'wikile.php',

        data: 'degerim=' + escape($('#degerim').val()),

        success: function(result) {

            $('#inner').html(result);

        },

        error: function() {

            

        }

    });

}
  </script>

<h1>Beybut - Ajax ve Php ile Wikipedia Başlık Araması - Demo</h1>
<h3><strong>Aşağıdaki kutucuğa birkaç harf yazınız. Örneğin: bey</strong></h3>
<form id="form1" name="form1" method="post" action="">
  <p>Wikipedia Başlıklarında Ara: </p>
  <p>
  <input name="degerim" type="text" id="degerim" onkeyup="wikim();" size="45" />
  </p>
</form><div id="inner" class="inner"></div>
</body>
</html>

Burada, Ajax yardımıyla, degerim isimli kutucuğa yazı yazılırken, klavye tuşundan elimizi çektiğimizde, wikile.php dosyasına veri gönderen bir yapı oluşturduk.

wikile.php dosyası için kaynak kodlarımız şöyle:

<?php
header('Content-Type: text/html; charset=utf-8');
error_reporting(0);
function mb_ucwords($str)
{
    return mb_convert_case($str, MB_CASE_TITLE, 'UTF-8');
}
function unicode_to_text($unicode){ 
    
    return preg_replace("/\\\u([0-9A-F]{4})/ie", "iconv('utf-16', 'utf-8', hex2str(\"$1\"))", $unicode);
      
}

function hex2str($hex) { 

    $r = ''; 
    for ($i = 0; $i < strlen($hex) - 1; $i += 2) 
    $r .= chr(hexdec($hex[$i] . $hex[$i + 1])); 
    return $r; 
    
} 



$neyi=trim($_GET["degerim"]);
//$neyi = mb_strtolower($neyi, 'UTF-8');

$neyi=str_replace('%','\\',$neyi);
	$neyi=str_replace('\u011f','ğ',$neyi);
	$neyi=str_replace('\u011e','Ğ',$neyi);
	$neyi=str_replace('\u0131','ı',$neyi);
	$neyi=str_replace('\u0130','İ',$neyi);
	$neyi=str_replace('\u00f6','ö',$neyi);
	$neyi=str_replace('\u00d6','Ö',$neyi);
	$neyi=str_replace('\u00fc','ü',$neyi);
	$neyi=str_replace('\u00dc','Ü',$neyi);
	$neyi=str_replace('\u015f','ş',$neyi);
	$neyi=str_replace('\u015e','Ş',$neyi);
	$neyi=str_replace('\u00e7','ç',$neyi);
	$neyi=str_replace('\u00c7','Ç',$neyi);
	$neyi=str_replace('\u00c9','É',$neyi);
	
	
	$neyi=str_replace('\u00e0','á',$neyi);
	$neyi=str_replace('\u00e1','à',$neyi);
	$neyi=str_replace('\u00e2','â',$neyi);
	$neyi=str_replace('\u00e9','é',$neyi);
	$neyi=str_replace('\u00e8','è',$neyi);
	$neyi=str_replace('\u00ea','è',$neyi);
	$neyi=str_replace('\u00ee','î',$neyi);
	$neyi=str_replace('\u00e7','ç',$neyi);
	$neyi=str_replace('\u00c0','Á',$neyi);
	$neyi=str_replace('\u00c1','À',$neyi);
	$neyi=str_replace('\u00c2','Â',$neyi);
	$neyi=str_replace('\u00c9','É',$neyi);
	$neyi=str_replace('\u00c8','È',$neyi);
	$neyi=str_replace('\u00ca','Ê',$neyi);
	$neyi=str_replace('\u00ce','Î',$neyi);
	$neyi=str_replace('\u00c7','Ç',$neyi);



//echo $neyi;
$x=file_get_contents('http://tr.wikipedia.org/w/api.php?action=opensearch&search='.$neyi);

$x1=explode('",["',$x);
$x1=$x1[1];

$x2=explode('","',$x1);
$say=substr_count($x1,'","');
$i=0;
echo 'Wikipedia Bağlantıları: ';

while ($i<=$say) {
	
	$sonucum=$x2[$i];
	$sonucum=str_replace('"]]','',$sonucum);
	$sonucum=trim($sonucum);
	//$sonucum=json_decode($sonucum);
	//$sonucum = unicode_to_text($sonucum);
	$sonucum=str_replace('\u011f','ğ',$sonucum);
	$sonucum=str_replace('\u011e','Ğ',$sonucum);
	$sonucum=str_replace('\u0131','ı',$sonucum);
	$sonucum=str_replace('\u0130','İ',$sonucum);
	$sonucum=str_replace('\u00f6','ö',$sonucum);
	$sonucum=str_replace('\u00d6','Ö',$sonucum);
	$sonucum=str_replace('\u00fc','ü',$sonucum);
	$sonucum=str_replace('\u00dc','Ü',$sonucum);
	$sonucum=str_replace('\u015f','ş',$sonucum);
	$sonucum=str_replace('\u015e','Ş',$sonucum);
	$sonucum=str_replace('\u00e7','ç',$sonucum);
	$sonucum=str_replace('\u00c7','Ç',$sonucum);
	$sonucum=str_replace('\u00c9','É',$sonucum);
	
	
	$sonucum=str_replace('\u00e0','á',$sonucum);
	$sonucum=str_replace('\u00e1','à',$sonucum);
	$sonucum=str_replace('\u00e2','â',$sonucum);
	$sonucum=str_replace('\u00e9','é',$sonucum);
	$sonucum=str_replace('\u00e8','è',$sonucum);
	$sonucum=str_replace('\u00ea','è',$sonucum);
	$sonucum=str_replace('\u00ee','î',$sonucum);
	$sonucum=str_replace('\u00e7','ç',$sonucum);
	$sonucum=str_replace('\u00c0','Á',$sonucum);
	$sonucum=str_replace('\u00c1','À',$sonucum);
	$sonucum=str_replace('\u00c2','Â',$sonucum);
	$sonucum=str_replace('\u00c9','É',$sonucum);
	$sonucum=str_replace('\u00c8','È',$sonucum);
	$sonucum=str_replace('\u00ca','Ê',$sonucum);
	$sonucum=str_replace('\u00ce','Î',$sonucum);
	$sonucum=str_replace('\u00c7','Ç',$sonucum);
	
	

$sonucumara=$sonucum;
$sonucumara=str_replace(' ','_',$sonucumara);
$sonucumara=urlencode($sonucumara);
	
	
	
if (strlen($sonucum)>=2) {	

if (stristr($sonucum, "[")){

} else {
	
	if (stristr($sonucumara, "https")){


} else {
	if (strlen($sonucum)<=25) {
echo '<li><a href="https://tr.wikipedia.org/wiki/'.urldecode($sonucumara).'" title="'.$sonucum.' için Wiki bağlantısı" target="_blank">'.$sonucum.'</a></li>';	
	}
}
	

}
}
$i++;	
}

?>

wiki-demo.php’de Ajaxla çağrılan (Get metodu ile) veriyi file_get_contents fonksiyonuyla Wikipedia Open Search’ta arattık. Gelen verileri düzenleyerek liste biçiminde, kullanıcımıza gösterdik.

Hepsi bu kadar!

Demo Projeyi İndir (wikipedia.rar)

 

 

Php Cache İle Çok Hızlı Siteler

Php ile geliştirdiğiniz projelerde, özellikle veritabanı bağlantılarının, sorgularının çokluğu sayfanızın daha yavaş yüklenmesine; sunucu kaynaklarının daha çok tüketilmesine neden olur. Cache (yansı) kullanarak sayfanızın çıktısını bir dosyaya kaydedebilir; sonraki istekler için kaydedilmiş html dosyasını ziyaretçinize sunabilirsiniz. Böylece Mysql gibi veritabanı sorgularının tekrarlanan yorucu işlemlerinden kurtulabilirsiniz. Cache kullanımı, ziyaretçi tarafından özelleştirilmemiş (örneğin dinamik arama sayfaları dışında) tüm Php sayfaları için kullanılabilir.

Sitenizin web dizinine (public_html, htdocs vb.) cache adlı bir klasör oluşturun. Aşağıdaki kodları içeriğinizi işlediğiniz dinamik Php sayfanızın en üst bölümüne yerleştirin.

$urlm=$_SERVER['REQUEST_URI'];
$urlm=preg_replace("/[^a-z0-9-]/", "", $urlm);

$cachedosyam= 'cache/'.$urlm.'.html';
if (file_exists($cachedosyam)) {
include($cachedosyam);
exit;
} else {
	
ob_start();
}

Bu kod dizisiyle ziyaretçi tarafından talep edilen url adresini alarak ($urlm), $cachedosyam değişkenini belirledik. Ardından eğer cache dosyası mevcutsa ziyaretçiye bunu gösterdik. Bu dosya mevcut değilse oluşturma işleminin startını verdik.

Son olarak Php sayfanızın en alt kısmına aşağıdaki kodları ekleyiniz.

$dosyam = 'cache/'.$urlm.'.html';
touch($dosyam );
$dosya = $dosyam;
 
$ch = fopen($dosya, 'w');
fwrite($ch, ob_get_contents());
fclose($ch);
ob_end_flush();

Eğer cache dosyası yoksa bu son kod betiği ilePhp çıktısındaki içerikleri alıp cache dosyamızı oluşturduk.

Birinci kod parçasının sayfanızın en üstünde, ikincinin ise en altında olmasına dikkat edin. Artık dinamik Php sayfanızdaki içerikler bir Html dosyasına kaydedildi. Bir defadan sonra istenen sayfalar artık cache klasöründeki html dosyasından gösterilecek.

Cachelerin yeniden oluşturulması için cache klasöründeki bütün html dosyalarını silmeniz gerekir. cache klasörünüzdeki bütün dosyaları silmek için aşağıdaki fonksiyonu kullanabilirsiniz.

function temizle($dizin)
{
    foreach(glob("{$dizin}/*") as $dosya)
    {
        if(is_dir($dosya)) { 
            temizle($dosya);
        } else {
            unlink($dosya);
        }
    }
    rmdir($dizin);
}

Kullanımı:

temizle('cache');

 

Php’de Seo Url Fonksiyonu

Php ile Seo’ya uygun url oluşturan bir fonksiyon yazalım. Bunun için ihtiyacımız olan temel PHP fonksiyonları; strip_tags (html taglarını silmek için), trim (baştaki ve sondaki boşlukları silmek için), str_replace (karakter değişimi için), strtolower (karakterleri küçültmek için) ve preg_replace (belirlediklerimiz dışındaki karakterleri silmek için)’dır. Fonksiyonumuzun adı “beybut_url”.

function beybut_url($seourl) {
$seourl=strip_tags($seourl);
$seourl=trim($seourl);
$seourl=str_replace('Ş','s',$seourl);	
$seourl=str_replace('ş','s',$seourl);	
$seourl=str_replace('ç','c',$seourl);	
$seourl=str_replace('Ç','c',$seourl);	
$seourl=str_replace('Ğ','g',$seourl);	
$seourl=str_replace('ğ','g',$seourl);	
$seourl=str_replace('İ','i',$seourl);	
$seourl=str_replace('ı','i',$seourl);	
$seourl=str_replace('ö','o',$seourl);	
$seourl=str_replace('Ö','o',$seourl);	
$seourl=str_replace('ü','u',$seourl);	
$seourl=str_replace('Ü','u',$seourl);	
$seourl=str_replace('"','',$seourl);	
$seourl=str_replace("'",'',$seourl);	
$seourl=str_replace('€','eu',$seourl);
$seourl=str_replace('$','usd',$seourl);
$seourl=str_replace('_','',$seourl);
$seourl=str_replace('!','',$seourl);
$seourl=str_replace('.','',$seourl);
$seourl=str_replace(',','',$seourl);
$seourl=str_replace(';','',$seourl);
$seourl=str_replace('`','',$seourl);
$seourl=str_replace('^','',$seourl);
$seourl=str_replace('+','',$seourl);
$seourl=str_replace('/','',$seourl);
$seourl=str_replace('\\','',$seourl);
$seourl=str_replace('*','',$seourl);
$seourl=str_replace('=','',$seourl);
$seourl=str_replace('}','',$seourl);
$seourl=str_replace(']','',$seourl);
$seourl=str_replace(')','',$seourl);
$seourl=str_replace('[','',$seourl);
$seourl=str_replace('(','',$seourl);
$seourl=str_replace('{','',$seourl);
$seourl=str_replace('&','',$seourl);
$seourl=str_replace('%','yuzde',$seourl);
$seourl=str_replace('<','',$seourl);
$seourl=str_replace('>','',$seourl);
$seourl=str_replace('|','',$seourl);
$seourl=str_replace(':','',$seourl);
$seourl=str_replace('?','',$seourl);
$seourl=str_replace('`','',$seourl);
$seourl=str_replace('Q','q',$seourl);
$seourl=str_replace('-',' ',$seourl);
$seourl=strtolower($seourl);
$seourl = preg_replace('/[^a-z0-9 *]/i', '', $seourl); 
$seourl = str_replace('      ', ' ', $seourl);
$seourl = str_replace('     ', ' ', $seourl);
$seourl = str_replace('    ', ' ', $seourl);
$seourl = str_replace('   ', ' ', $seourl);
$seourl = str_replace('  ', ' ', $seourl);
$seourl = str_replace(' ', '-', $seourl); 
return $seourl;
}
$urlmiz=beybut_url('Ayşe Tatile Çıksın.');
echo '<p>'.$urlmiz.'</p>';

Fonksiyonun kullanım çıktısı “ayse-tatile-ciksin” biçiminde olacaktır.

Örneklerle Sosyal Medya Yalanları

Aslında başlık Sosyal Medya Yalanları yerine Sosyal Medya Ahmaklıkları olabilirdi. Çünkü bu paylaşımlar, insanın aklından ne kadar feragat edebileceğinin göstergesi. Üstelik Facebook, Twitter gibi ortamlarda bunları paylaşanların, beğenenlerin neredeyse yarısı 30 yaşın üstünde olanlar. Internet’in yaygınlaşmaya başladığı yıllarda scam adı verilen aldatmaca içerikler e-maillerimize, irc odalarına, Msn ve Icq’ya düşmeye başlamıştı. Kimi bir çıkar elde etmek için kimi eğlenmek için garip ve saçma içerikleri gözümüze sokuyordu. Yıllar geçti, sosyal medya yaygınlaştı. Ancak ahmaklık baki kaldı. Hiç sorgulamadan, düşünmeden bir tıklamayla paylaşmak ne kadar kolay değil mi?

Kur’an’ı Yırtan Kız

Yahut annesi Kur’an okurken müziğin sesini açıp isyan eden cahil kızın ibretlik sonu… İnsanları korkutma mı yoksa merak uyandırıp Kur’an yakmaya/yırtmaya teşvik amaçlı mı çıkarıldığı bilinmeyen saçmalık. Bu konu yıllardır Google’da en çok arananlar listesinde. Balmumu heykeli, ibretlik bir son gibi yutturmaya çalışanlar başarılı olmuşa benziyor.

Kuran Yırtan Kız

Dev İskelet

Tam da masalların gerçekliğine dair yemin eden ebeveyinlerin yetiştirdiği neslin inanacağı gibi. Bir kazı yapılır ve dev iskeletleri bulunur. Dede, nine, hoca anlatılarıyla örtüşen bu kanıt efsane bir belgedir. Bu kocaman evrende o kadar küçük ve çaresiziz ki bu tür efsanelere hemen kucak açabiliyoruz. İnanacaklar için hemen belirtelim. Aşağıdaki fotoğraflar Photoshop çalışmalarından ibarettir.

Dev İskelet

 

Gerçek Cin Fotoğrafı

Vahşi hayvan ve örümcek korkusu evrimsel bir korku süreğenliğine ve efsanevi inanışlara neden olmasa cinlerin (pardon üç harflilerin) ters ayaklarla halay çektiğine ve poz verdiğine inanabilirdik. Bazı medya organlarında bile yer alan bu efsane yalan neyse ki kısa sürede aydınlatıldı. Fotoğraftaki cin arkadaş bir mağaradaki heykel. Diğerleri ise Photoshop ve video montajı…

Gerçek Cin Fotoğrafı

 

Kabir Azabı

Öldükten sonra insan bedenine neler olduğundan habersiz kitle, kabir azabına kanıt olarak aşağıdaki fotoğrafları göstermiş. Bu fotoğraflar için basitçe şunu söyleyebiliriz: İnsan ölünce çürür.

Kabir Azabı

Öldükten sonra neler oluyor?’u merak edenler için;

Mustafa Kemal Atatürk Düşmanlığı

Günümüz Türkiyesinde aklı evvel saldırganları için bulunmaz nimet. Değerlere saldırmanın dayanılmazlığı bir toplumun nasıl aptallaştırıldığının kanıtı olsa gerek. Atatürk’ün “Türk duruşu” nu Masonlukla ilişkilendirenlerden tutun, onlarca uydurma belgeyle Google Play’de binlerce sayfalık kitap yayınlayanlara kadar her çeşit zerzevatı Internet’te bulmak olanaklı. Kadir Mısıroğlu’nu tarihçi sayanların, Derin Tarih dergisine abone olanların ilk hedefi elbette Türkiye’yi İngiliz mandasına ve cani şeyhlere bırakmayan Atatürk olacaktı.

Mason Liderler Komedyası

Aşağıdaki kartın hemen her lider için kopyası var. Elbette bunu paylaşan on binlerce kişi de…

Erdoğan Mason

Mont, Kitap ve Ayakkabı Dilenenler

Bu tip onlarca e-mail aldım. Üstelik farklı sitelerimin e-mailine aynı içerikle… Büyük sözlük sitelerinde bile bu tip dilencilere inananlara rastlamak olanaklı. Elbette bu kişiler gönderdiğiniz yardımları ikinci el olarak satıyor.

Libya’ya Pirince Gidiyoruz

Birkaç gün önce Libya’dan 57 milyon $ çıkarmak isteyen ve yardımımıza ihtiyaç duyan iyi kalpli birinden e-mail aldım. Detaylar için kendisine ulaşacakmışım.

Scam Mail

 

Ara Beni Boya Beni 0038

0033 gibi rakamlarla başlayan numaraları pervasızca dağıtan hanım ablalarımız bu işten oldukça iyi kazanıyor olmalı. Yüksek faturalarla karşılaşmak istiyorsanız tabi ki arayabilirsiniz.

Lozan 2023’te Bitiyor

Tarihi yalanlara sadece bir örnek. Siyasete meraklı akıllılarımız(!) için bulunmaz bir paylaşım. Güya 100 yıllık ömrü olan Lozan bittiğinde neler olacakmış neler…

Sayfamız Şikayet Alıyor

Beş beğeni veya bir paylaşım üç şikayet siliyor (muş). Matematik dehası Facebook sayfa sahiplerinin 150 IQ’lu abonelerine seslenişi…

Kandırmanın, hırsızlığın, ahlaksızlığın, “çalıyor ama çalışıyor”culuğun, “benim memurum işini bilir”ciliğin doğal karşılandığı bugünün Türkiye’sinde elbette bu durumu kullanacak akıllılar olacaktır. Sosyal medya da bu kepazeliğin araçlarından biri oluyor. İnsan hem kızıyor hem üzülüyor…