Gürkan OLUÇ tarafından, 13 Eyl 2009 tarihinde, 14:22 sularında yazıldı. | Javascript, Jquery, Makaleler
Bildiğiniz gibi AJAX, Web 2.0 akımının gelişiyle birlikte popülerleşen, aslında yıllardır var olan bir teknoloji. XmlHttpRequest nesnesini kullanarak, tüm sayfayı yeniden yüklemeden hızlı ve kolayca HTTP request yapabilmemize ve cevap alıp işleyebilmemize olanak sağlıyor.
Hal böyle olunca bir çok uygulama tarafından tercih edildi tabii ki. Tüm veri iletişimini AJAX ile gerçekleştiren web siteleri, mash-up’lar, kullanılabilirliğini tavan yaptırmak isteyen web siteleri gibi bir çok yerde kullanıldı ve çokta güzel ve eğlenceli oldu bence.
Bugün bahsedeceğimiz konu olayın mash-up diye tabir edilen bir nevi ufak web site parçacıkları üzerine olucak. Bildiğiniz gibi mash-up’lar genelde üyesi olup, içerik ürettiğiniz çeşitli servisler tarafından size sağlanıyor. Örneğin Twitter. Ufak bir kopyala & yapıştır operasyonu ile son 10 tweet’inizi blogunuz üzerinde gösterebilirsiniz.
İşte tam da bu noktada bir sorun ortaya çıkıyor. XmlHttpRequest nesnesi iyi, güzel ama yalnızca kendi domaininiz üzerindeki adreslere request yapabilmenize imkan tanıyor. Böyle olunca da siz örneğin kendiniz bir mash-up yapıyor olsanız ve twitter API’na XmlHttpRequest ile request göndermek isteseniz, göndermiş olduğunuz request güvenlik sebeplerinden dolayı hata verecektir. (daha fazla…)
Gürkan OLUÇ tarafından, 12 Eyl 2009 tarihinde, 01:10 sularında yazıldı. | Javascript, Jquery, Makaleler
Çoğumuz web uygulamaları geliştirirken, tarayıcıların motorlarındaki farklılıklardan dolayı geliştirmiş olduğumuz uygulamaların tüm tarayıcılarda aynı çalışması için bazı yerlerde sorunu gidermek için sadece sorun olan browserda çalışacak hackler yazıyoruz. Bu sıkıcı işlemi işlemi yapmanın ilk aşamalarından biri de tabii ki kullanıcının siteyi hangi tarayıcı ile görüntülediğini bulmak oluyor. Hastalığın ne olduğunu bilelim ki ona uygun ilacı yazabilelim değil mi? (daha fazla…)
Gürkan OLUÇ tarafından, 24 Haz 2008 tarihinde, 00:37 sularında yazıldı. | Makaleler
Eğer Codeigniter kullanıyorsanız, üstüne birde onun session işlemleri için yazılmış olan kütüphanesini kullanıyorsanız kuvvetle ihtimal bir şekilde yapmış olduğunuz sisteme internet explorer ile erişip, login olmak isteyenler şaşırıp kalacaklar. Çünkü, bir milyon kere de deneseler asla sisteme giriş yapamıyacaklar yada siz sessionları hangi işlemde kullanıyorsanız o işlemi gerçekleştiremeyecekler. Ancak bu sorunun çözümü basit. Olay IE'nin Cookie bilgilerini domain adıyla kayıt etmesinden kaynaklanıyor, bunu aşmak için ise application/config dizini içerisinde config.php dosyamızı açıyoruz. 254. satırda, oluşturduğumuz cookieler için gereken domain adını tanımladımız konfigürasyon değişkeni bulunuyor. Bu satırı aşağıda görmüş olduğunuz kod ile değiştiriyoruz
PHP:
-
$config['cookie_domain'] = ( $_SERVER['HTTP_HOST'] == 'localhost') ? false : '.domainadiniz.uzanti';
Kısaca ne yaptığımızı açıklayacak olursak. Basit olarak $_SERVER['HTTP_HOST'] sunucu değişkenin değerinin localhost değerine eşit olup olmadığını sınıyoruz ve eğer öyle ise bu konfigürasyon değişkenini false olarak belirtiyoruz, yok değil ise sitemizin çalışacağı domain adresini başındaki www kısmını kaldırarak yazıyoruz ( Evet, yalnızca www kaldırılmalı "." kalmalı.). Bir başka trickte görüşmek üzere. Bu trick için sevgili muarifer'e teşekkürler
Gürkan OLUÇ tarafından, 22 Haz 2008 tarihinde, 13:02 sularında yazıldı. | Makaleler
Ruby on Rails ile basit olarak AJAX kullanımına göz attım bu sabah. Şimdi de öğrendiklerimi paylaşayım. RoR'da AJAX işlemleri yapabilmek için öncelikle prototype kütüphanemizi sayfaya dahil etmemiz gerekiyor bunun için view yada layout dosyamızın başına
RUBY:
-
<%= javascript_include_tag 'prototype' %>
satırını yerleştiriyoruz. Daha sonra üzerine tıklanıldığında AJAX ile sunucuya istekte bulunacak olan linki vermek için view dosyamız içinde "link_to_remote" fonksiyonunu kullanıyoruz. Kullanımı ise şu şekilde :
RUBY:
-
<%= link_to_remote "Tıklayınız",
-
:url => { :action => "ajax_deneme"},
-
:update => "ajax_sonuc"
-
%>
Bu fonksiyon çıktı olarak sayfaya "Tıklayınız" şeklinde bir link oluşturuyor. Oluşan bu linke tıklanıldığında AJAX ile şuanda bulunduğumuz controller'ın "ajax_deneme" adlı metoduna istekte bulunuluyor. Bu metoddan dönen sonuçta view dosyamızda bulunan "ajax_sonuc" id'li div'e yazdırılıyor.
Son olarakta controller dosyamızın içerisine AJAX ile istekte bulunduğumuz "ajax_deneme" adlı metodu yazalım. Ben burada render :text ile basit bir çıktı vereceğim yalnızca ancak tabii ki geliştirilmesi ve daha kompleks bir hal alması mümkün. İşte ajax_deneme metodumuz.
RUBY:
-
def ajax_deneme
-
render :text => "AJAX Örneği Yaptık!"
-
end
İşte bu kadar. Daha detaylı bilgi için API'yı inceleyebilirsiniz.
Gürkan OLUÇ tarafından, 25 May 2008 tarihinde, 19:55 sularında yazıldı. | Makaleler
Windows üzerinde Ruby on Rails uygulamaları geliştirmeden Railsi'i InstantRails gibi hazır yükleyiciler kullanarak yüklemek yerine önce Ruby'i ardından RubyGems'i daha sonrada RubyGems yardımıyla Rails'i kurduğunuzda ve Rails ile oluşturmuş olduğunuz projede migration yapmak istediğinizde "LIMBYSQL.dll dosyası bulunamadığından uyguluma başlatılamadı. Uygulumayı yeniden yüklemeniz belki bu sorunu çözebilir" türünde bir hata mesajı alıyorsanız, çözüm için yapmanız gereken şunlar.
- MySQL'in yüklü olduğu klasörde bin klasörü içerisinde olan libMySQL.dll dosyasını kopyalayın
- Ruby'nin yüklü olduğu klasörde bin klasörü içerisine yapıştırın.
- Konsolu yada kullanmış olduğunuz sunucuyu baştan başlatın.
Bu kadar. Bu da böyle bir ipucuydu işte.
Alternatif çözüm : Windows'taki PATH değişkenine mysql/bin klasörünüzü ekleyin. Kopyala & Yapıştır yapmanıza gerek kalmadan sorunu çözebilirsiniz. Çözüm içim Murat Arif Çeliker'e teşekkürler
Gürkan OLUÇ tarafından, 16 May 2008 tarihinde, 21:38 sularında yazıldı. | Makaleler
Düzenleme
---------------------------------------------------------------------------
23.07.2008 : get_elapsedtime() fonksiyonu eklendi.
---------------------------------------------------------------------------
Blogumda yaptığım yenilik çalışmalarından bir tanesi de bu aralar pek bi' sık kullanıyor olduğum twitter'a yazmış olduğum son 5 ögeyi bloguma yansıtmaktı. Bu işi yapmak için twitter'in sunmuş olduğu html ve flash tabanlı çeşitli çözümler mevcut ancak bunları modifiye etmek ve kullanmak o kadar da kullanışlı olmuyor. Bu sebeple bende Twitter Api'den, PHP'den ve onun JSON kütüphanesinden yararlanarak kendi işimi, kendim görmeye karar verdim. Açıkçası hiçte zor olmadı
(daha fazla...)
Gürkan OLUÇ tarafından, 07 May 2008 tarihinde, 17:14 sularında yazıldı. | Makaleler
Uzunca bir süredir kafamdaydı bu konuyu araştırmak, çünkü cidden ihtiyaç duyduğum birşey. Ufacık bir kod düzenlemesi için sidebar.php dosyasını ftp'den çekmek, sonra düzenlemek ve geri yüklemek bana cidden acı veriyordu. Zaten widget olayının ortaya çıkış sebebi de bu olsa gerek
Neyse lafı fazla uzatmadan konumuza gelelim. Bugün bu widget dediğimiz olayı herhangi bir wordpress temasına nasıl ekleyeceğimizi aktarmaya çalışacağım. (daha fazla...)
Gürkan OLUÇ tarafından, 03 Nis 2008 tarihinde, 13:15 sularında yazıldı. | Makaleler
Buradaki makaleden de kolayca anlıyabileceğiniz gibi oldukça güzel bir yöntem. Uygulamanız büyüdüğünde her modül için .htaccess dosyasına 1-2 satır eklemekten kurtuluyorsunuz çok güzel oluyor
Tavsiye edilir.
Gürkan OLUÇ tarafından, 28 Mar 2008 tarihinde, 23:01 sularında yazıldı. | Makaleler
IBM DeveloperWorks'te okuduğuma göre PHP 5.2 ve PHP_APC eklentisi ( Extension ) sayesinde artık PHP ile sunucuya dosya yüklemesi yaptığımız vakitlerde an be an dosyanın kaç kb yada mb'ının sunucuya yüklendiğini öğrenebileceğiz yani kısaca upload edilen dosyayı takip edebileceğiz. Bu olayı daha önceleri çeşitli trick ve hackler kullanarakta yapmak mümkündü ancak artık çok daha kolay oldu. Konu ile ilgili IBM DeveloperWorks'te yayınlanmış olan makaleye buradan ulaşabilirsiniz. Konuyla ilgili Türkçe bir makalede, tarafımdan tiz zamanda yazılacak inşallah.
Gürkan OLUÇ tarafından, 06 Şub 2008 tarihinde, 03:30 sularında yazıldı. | Makaleler
Gece gece canım sıkıldı ve özendim script.aculo.us ile AJAX işlemlerini nasıl yapacağınızı anlatan bir makale yazmak istedi canım.
(daha fazla...)