Notepad++ Arayüzü Türkçe Çevirisinde Komiklik

Saturday, December 5, 2009

Notepad++ v5.1.3 için Hamza APAYDIN tarafından çevrilmiş ama bazı komiklikler de yok değil. Mesela






Meseleyi irdeleyin:
http://notepad-plus.sourceforge.net/uk/site.htm
notepad++ Wimdows altında çalışan pratik ve hızlı bir kod editörüdür. Seveni çoktur.



Bookmark and Share

Wordpress Kategori Hariç Etmek

Tuesday, December 1, 2009

YENİ ÖĞRENDİM

Wordpress template fonksiyonlarını yeni yeni irdeliyorum.
Wordpress'de yazıları listelemek için query_posts kullanırız. query_posts ile istediğim kategorileri listelerken istemediğim kategorileri de "kategori id" başına "-" (eksi işareti) koyuyorum.

query_posts("cat=1,2,-3,-8");

Bookmark and Share

Jquery Test

TAVSİYE EDİYORUM



Emin olmadığınızda tarayıcınız ile jquery uyumluluğunu şu test modülünden görebilirsiniz.


Bookmark and Share

web içeriğini sql cümleleriyle sorguluyorum

Saturday, October 17, 2009

TAVSİYE EDİYORUM

php ile web içerikleri çekerken sql sorular gibi içerik sorgulamak için bunu kullanıyorum. Yani istediğim elemanları seçmek için oldukça fantastik bir class : htmlSQL

 "a PHP class to query the web by an SQL like language"


Örnek üzerinden deneyerek karar veirn : http://www.jonasjohn.de/lab/htmlsql/?url=2&q1=1&q2=8&q3=0


--


Kısa süreli deneyimim sonrasında gördüm ki oldukça işlemci yoran ve çok yavaş bir yöntem. Ancak hala "tavsiye ediyorum" etiketini kaldırmadım çünkü bir o kadar da eğlenceli.

Bookmark and Share

mySql DATEFORMAT

TAVSİYE EDİYORUM


Hiç kullanmamıştım. Tarih işlemleri için php den taklalar atardım. Ancak az önce gördüm ki

select * from results where dateadded >= DATE_FORMAT(now() ,'%Y-%m-01')


İrdelemek için http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html

Bookmark and Share

maksat input alanları boş durmasın

Tuesday, October 6, 2009

NOT DÜŞTÜM
TAVSİYE EDİYORUM

Boş duran arama kutularına sinir olurum. İçine en azından üç nokta koysalar beni daha mutlu ederler. Geçen dedim ki "heralde üşendiklerinden olsa gerek".


Madem üşeniyorsunuz jquery ile şöyle yapın gitsin. Boş alan kalmasın


 $("input").each(function(){
 if( $(this).val()=="")  $(this).val("...");        
});


tüm input alanları nasiplensin. bunu demek istedim. hepsi bu :)

Bookmark and Share

bi güncellen artık : e2fsprogs

Saturday, October 3, 2009

YENİ ÖĞRENDİM

Ubuntu ile aramız fena değil, o da ısındı bana.

Uzun zamandır Ubuntum ile karşılaştığım (bir süre önce yok olan ama sonra tekrar gelen) çözümsüz sandığım bir durum var "e2fsprogs" için güncelleme paketi her açılışta güncellenmek istiyor ve başarısız oluyor.

Nedenini inatla uzun zaman aramadım sonra arayınca farkettim ki aynı sorun hep türk kullanıcılar tarafından sorulmuş. Türkiye için güncelleme kaynaklarındaki bir eksiklik veya hata olabilir deniyor.

İlk iş ubuntu-tr ye sormaktı (evet google'dan önce). Sordum ve cevabımı aldım

şunu yapmak yeterli :

sudo apt-get upgrade

Aslında bu komutu ilk kurulum sonrası çalıştırmak farz. Ama kimin aklına gelir ki.

Burda bir de sonuç çıkarttım. Ubuntumun hataları beni hiç rahatsız etmiyor. Zira ben bu "bir türlü güncellenmeyen ve her açılışta güncelleme soran paket" yüzünden hiç sinirlenmedim :)

Bookmark and Share

server-side değil "Client-side PHP"

Saturday, September 26, 2009

YENİ ÖĞRENDİM
TAVSİYE EDİYORUM




Yine bir gün stumble yaparken şu js kütüphanesi ile karşılaştım : http://phpjs.org/

Asıl amacı php fonksiyonlarını client-side çalışır yapabilmek. Bir de kılıfı var; diyor ki : PHP.JS kullanarak, client-side teknolojiler ile çok uğraşan PHP geliştiricilerini hızladırabilir.

Bir de özetle şöyle demişler :
"PHP.JS is an open source project in which we try to port PHP functions to JavaScript. By including the PHP.JS library in your own projects, you can use your favorite PHP functions client-side."

İlk bakışta eksik yanı mutlaka çok olacaktır, ancak meseleyi irdeleyince php.js kullanan bir kütüphane daha buldum ki o daha tatmin edici geldi : http://www.harmony-framework.com
Harmony henüz beta ve kendilerini şöyle özetliyorlar :

Harmony's goal is to bring php in the browser, thus developing on the server and on the client side using only one language. PHP, which is simple to use and known by thousands, is a perfect fit. No needs to learn javascript any more. The conversion between the two language is instantaneous! (Learn what you cannot do).



Konuyu irdelemek için
http://phpjs.org
http://www.harmony-framework.com/

Bookmark and Share

jquery09 spotlights at slideshare

Friday, September 18, 2009

NOT DÜŞTÜM

slideshare.net de dokümanları gezerken ana sayfada jquery09 spotlights altında ilgi çekici bir kaç sunu buldum. Birisini de geçen hafta ben eklemiştim. Bir çırpıda jquery deneyimi yaşatan, başlangıç için heveslendiren bir sunuydu. Şöyle göz atın bence. Hatta indirip jquery kullanmasını tavsiye ettiklerinize gönderiverin. Diğer seçilmiş sunular da şu adreste : http://www.slideshare.net/tag/jquery09


Bu sununun yazarı :
• Kyle Bradshaw
Front End Web Developer
• Blog - http://somedirection.com
• AIM - kyledbradshaw
• Twitter - @ky

Bookmark and Share

php ile pdf işlemlerimi artık tcpdf ile yapıyorum

Thursday, September 17, 2009

ÖĞRENDİM
TAVSİYE EDİYORUM

PHP ile pdf işlerim için bunca zamandır pdfb (fpdf+barcode) kullanıyordum ama artık daha iyi olduğunu düşündüğüm bir sınıf var : TCPDF

TCPDF'de de barkod özelliği eklenmiş.
Ayrıca örnekleri incelediğimde pdfb den eksik kalır yanı olmadığını gördüm.

Yapılabilecekler örnekleri ile şöyle sıralanmış :

  1. Simple PDF with default Header and Footer: [PHP] [PDF]
  2. Simple PDF without Header and Footer: [PHP] [PDF]
  3. Custom Header and Footer: [PHP] [PDF]
  4. Cell stretching: [PHP] [PDF]
  5. Multicell: [PHP] [PDF]
  6. WriteHTML and RTL support: [PHP] [PDF]
  7. Independent columns with WriteHTMLCell: [PHP] [PDF]
  8. External UTF-8 text file: [PHP] [PDF]
  9. Image: [PHP] [PDF]
  10. Multiple columns: [PHP] [PDF]
  11. Colored Tables: [PHP] [PDF]
  12. Graphic Functions: [PHP] [PDF]
  13. Graphic Transformations: [PHP] [PDF]
  14. Javascript and Forms: [PHP] [PDF]
  15. Bookmarks (Table of Content): [PHP] [PDF]
  16. Document Encryption: [PHP] [PDF]
  17. Independent columns with MultiCell: [PHP] [PDF]
  18. Persian and Arabic language on RTL document: [PHP] [PDF]
  19. Non unicode / Alternative config file: [PHP] [PDF]
  20. Multicell complex alignment: [PHP] [PDF]
  21. writeHTML alignment: [PHP] [PDF]
  22. CMYK colors: [PHP] [PDF]
  23. Page Groups: [PHP] [PDF]
  24. Object Visibility: [PHP] [PDF]
  25. Object Transparency: [PHP] [PDF]
  26. Text Clipping: [PHP] [PDF]
  27. Barcodes: [PHP] [PDF]
  28. Multiple page formats: [PHP] [PDF]
  29. Set PDF viewer display preferences: [PHP] [PDF]
  30. Colour gradients: [PHP] [PDF]
  31. Pie Chart Graphic: [PHP] [PDF]
  32. EPS/AI vectorial image: [PHP] [PDF]
  33. Mixed font types (TrueType Unicode, core, CID-0): [PHP] [PDF]
  34. Clipping masks: [PHP] [PDF]
  35. Line styles with cells and multicells: [PHP] [PDF]
  36. Text Annotations: [PHP] [PDF]
  37. Spot Colors: [PHP] [PDF]
  38. NON-embedded CID-0 CJK font: [PHP] [PDF]
  39. HTML Justification: [PHP] [PDF]
  40. Booklet (double-sided pages): [PHP] [PDF]
  41. File attachment: [PHP] [PDF]
  42. Image with Alpha Channel Transparency: [PHP] [PDF]
  43. Disk caching: [PHP] [PDF]
  44. Move and delete page: [PHP] [PDF]
  45. Table Of Content with Bookmarks: [PHP] [PDF]
  46. Text hyphenation: [PHP] [PDF]
  47. Transactions and UNDO: [PHP] [PDF]
  48. Table header and rowspan: [PHP] [PDF]
  49. TCPDF methods in HTML: [PHP] [PDF]
  50. Experimental 2D Barcode: [PHP] [PDF]
  51. Full page background: [PHP] [PDF]
  52. Digital Signature Certification: [PHP] [PDF]
  53. Javascript functions: [PHP] [PDF]
  54. XHTML Form: [PHP] [PDF]



Bookmark and Share

gmail kullanıcı dostudur, size öneriler sunar

Tuesday, September 15, 2009

Gmail kullanmayı seviyorum. Çünkü her zaman pratik ve kullanıcı dostu.

Geçen yeni bir özelliğini fark ettim.
Sürekli mesaj attığım bir grup mail adresi var. Bir kere de bu grubun sadece bir bölümüne mesaj atacaktım ki gmail bana "şunları da ekleyebilirsin" diye gruptaki diğer adresleri gösterdi.

Bookmark and Share

w3m ile google maps yol tarifi denedim

Saturday, September 12, 2009

ÖĞRENDİM

 

mutt ile google maps kullanayım dedim. Hiç bir zorluk yaşamadan kullandım. Ancak aynı şeyi bing maps ile denemeye cesaret edemedim :), kim bilir beni ne kötü bir uyarı karşılayacaktı. Çünkü Shiretoko ile dahi kullanamadığım bir uygulamadır kendisi. Yazık.

Bookmark and Share

Hızlı Yol Tarifi Formu

Friday, September 11, 2009

TAVSİYE EDİYORUM

Eğer oldukça pratik bir şekilde google maps yol tarifi vermek isteseydim bir form koyardım ve bu formu google maps e post eylerdim. Şöyle ki:

<form action="http://maps.google.com/maps" method="get">
   Konum <input type="text" id="saddr" name="saddr" />
   <input type="hidden" id="daddr" name="daddr" value="Ankara, Türkiye" />
   <input type="submit" value="Yol Tarifi Al" />
</form>


İsterseniz hemen deneyin:

Konum

Bookmark and Share

javascript kullanarak iphone, android, blackberry uygulamalar

Saturday, September 5, 2009

ÖĞRENDİM
TAVSİYE EDİYORUM


Sadece javascript bilgimle iphone uygulaması geliştirmenin bir yolunu daha buldum : http://phonegap.com
Henüz denemedim. Videolarına baktım ve dökümanları inceldim. Tam aradığım bir geliştirme kiti.

Aslında bizim jquery john bundan bahsetmiş aylar evvel. Ancak ben epey geriden geliyorum anlaşılan.

Bookmark and Share

jquery validation eklentisi select elemanı neden i.e.'da hata verir

Tuesday, August 4, 2009

ÇÖZDÜM-BULDUM

Uzuncadır jquery validation eklentisini kullanırım fakat geçen çok üzücü bir olay yaşadım :)
şöyle ki; hiç yapmadığım bir şey ama dalgınlıklat "select" elemanının "option" larına "value" değerini vermemişim. Bu şekilde de o"option" içindeki metin "value" olarak alınabiliyor zaten. Ama standart olmuyor.


Tam bu sırada yaptığım formu i.e.'da denemek istedim ki select elemanı seçildiğinde veya seçilip başka bir elemana tıklandığında hatayı aldım 
"Nesne gerekli"
sayfayı debug yaptığımda ise kırılan satırın şurası olduğunu gördüm.

case 'select':
var options = $("option:selected", element);
return options.length > 0 && ( element.type == "select-multiple" || ($.browser.msie && !(options[0].attributes['value'].specified) ? options[0].text : options[0].value).length > 0);

Sonra fark ettim ki "option" lar için hiç "value" girmemişim.
Hepsi şu şekildeydi:
<option>metin</option> 
<option>metin2</option>

Tabi bunu Jörn düşünmesi gerekliydi. Benim gibi dalgınlar böyle kullanabilir ve buna bir önlem almak gerekirdi.  Neyse olayı erkenden farkedip hemen müdahale ettim.
Gıcıklık olsun diye hala "value" eklemedim onun yerine case içerisine "options[0].attributes['value']" olup olmadığını kotrol edip duruma göre "option" içindeki metni aldım.
ama daha kolay bir yol olarak siz her "option" için bir "value" eklemeyi unutmayın.

Bookmark and Share

php ve excel tabloları

Wednesday, July 29, 2009

TAVSİYE EDİYORUM

php ile excel tabloları görnütülemek için şimdiye kadar hep phpclasses.org daki bazı pratik sınıfları kulanmıştım.
Ancak bugün çok daha pratik ve kullanışlı bir "php excel reader" buldum ve hemen denemeye başladım.

Hücrenin formatını ve stilini çok daha kolayca alabilir ve excel de sunulduğu şekliyle html olarak gösterebilirsiniz.


Konuyu irdeleyin: http://mattkruse.com/2008/12/24/php-excel-reader/

Bookmark and Share

Sayfa erişimini hızlıca sınırlamak istediğimde : HTTP Authentication

Monday, July 27, 2009

TAVSİYE EDİYORUM


Çok üşendiğimde vede hızlıca bir sayfaya erişimi sınırlandırmak istediğimde (ve hele ki bir projenin sunumu için hiç vakit yoksa), hemen alttaki kodu eklerim sayfaya. sunum yapacağım kişi genelde insan ne kadar ilkel bir kullanıcı denetimi yaptığımdan habersiz, zira o sadece projeyi çalışır görmek ister. Sonuç olarak demek istediğim HTTP Authentication hızlı bir kurtarıcıdır.
HTTP Authenticate ile yapılan bu metot da karşınıza kullanıcı adı ve şifre isteyen bir pencere çıkar. Her zaman hoş bir izlenim vermez. Zaten zorda kalmadıkça kullanmayın bence.

<?php 
function loginpencere(){ 
   header('WWW-Authenticate: Basic realm="yetkilendirme!"');
   header('HTTP/1.0 401 Unauthorized');
}
// fonksiyon bu kadar
// sonra da kontrol ediyorum 
if (!isset($_SERVER['PHP_AUTH_USER'])) {
loginpencere();
?>
<h1>Sadece yetkili kullanıcının girişine izin verilmiştir.</h1><BR>
<?php 
exit;
}
else{
 if($_SERVER['PHP_AUTH_USER']!="kullanici" && $_SERVER['PHP_AUTH_PW']!="parola"){
 loginpencere();
 die("<h1>Sadece yetkili kullanıcının girişine izin verilmiştir.</h1>");
 }
} 
?>

Bookmark and Share

ftp sunucumu yerel bir dizine bağlamak

Friday, July 24, 2009

ÖĞRENDİM

Bazı sevdiğim php editörlerin ya ftp desteği yok ya da zahmetli bir eklentisi var. Ben de sıkıldım ve google'a sordum acaba bir ftp sunucusu en kolay nasıl yerel dosya sistemine bağlanır diye. Sonra baktım ki bunun çok kolay bir yolu varmış.

http://curlftpfs.sourceforge.net/

hemen şöyle indirdim kurdum. Ufacık bir şey zaten.

sudo apt-get install curlftpfs


sonra da şöyle bağladım :

curlftpfs ftp://kullanici:parola@sunucum.com/  /home/hasantayyar/public_html/sunucum


Artık /home/hasantayyar/public_html/sunucum dizinine girdiğimde ftp sunucumun içeriğini görüyorum.

Araştırırken bir de alternatif bulmuştum. Denemek için gözatılabilir.
http://www.howtogeek.com/howto/ubuntu/how-to-mount-a-remote-folder-using-ssh-on-ubuntu/

Konuyu irdelemek derinlemesine için:
http://www.belgeler.org/man/man8/man8-mount.html

http://en.wikipedia.org/wiki/Mount
http://wiki.linux-sevenler.org/index.php/Mount
http://www.linux-ntfs.org/doku.php?id=howto:mount
http://www.belgeler.org/glibc/glibc-Mount-Unmount-Remount.html

Bookmark and Share

jquery işlemlerinde setTimeout kullanmak

Thursday, July 23, 2009

NOT DÜŞTÜM

Jquery ile geçiktirme meselesinin çok sorulduğunu farkettim. Şaşırdım. Halbuki javascript ile bir farkı yok ki?
Ancak tabi ki daha düzenli kullanmakta fayda var.
Bu alttaki iki satırı jquery yükledikten hemen sonra çalıştırırsanız elinizde "timeout" diye bir fonksiyon olur. Yaptığı çok özel bir şey yok. Sadece jquery işlemerinizde daha kolay kullanılabilir hale getirilmiş setTimeout fonksiyonundan ibaret.

$.fn.timeout = function(t,f){
 this.each(function(){setTimeout(f,t); }); 
 return this; };

Şöyle üç şekilde kullanımına örnek verdim

js:
$(document).ready(function(){
 
  $("#metin").click(function(){  
   $(this).timeout(1000,function(){
   $("#icmetin").html("1 saniye sonra gelen mesaj");
    $(this).timeout(2000,function(){     
     $("#icmetin").append("
ilk 1 saniyelik ekleyiş ardından 2 saniye sonra gelen gelen mesaj");
    }); 
   })
   .timeout(2000,function(){     
    $("#icmetin").append("
 2 saniye sonra gelen gelen mesaj");
   });
  });
});

html:

<a href="#" id="metin">tikla</a> <div id="icmetin"></div>

şurada çalıştırarak görebilir : http://jsbin.com/ivetu
ve burada da kodları değiştirip deneyebilirsiniz : http://jsbin.com/ivetu/edit

Bookmark and Share

web cronjob

Tuesday, July 21, 2009

TAVSİYE EDİYORUM


Çok sevdiğim ve yakın zamanda iki farklı şekilde işime yarayan bir hizmeti ve deneyimimi anlatayım.
http://www.cronme.org/
Kurucusu Serkan servisi şöyle özetliyor :).
CronMe is a free web based cron service.

Bu servis ile düzenli aralıklarla yapılmasını istediğim işleri web üzerinden kontrol edebiliyor ve takip edebiliyorum (verdiği bir rss adresi ile her an takip edebiliyorum). Yakın zamanda iki şekilde kullandım.

1. Veritabanı yedekleme.
(Evet başka yolları da var fakat bu şekilde kullanımı çok hoş.)
İlk olarak çalıştığında istediğim veritabanını bir ftp dizinine yedekleyen bir php dosyası hazırladım. Sonra cronme panelinen bu işlemi haftalık olarak ayarladım.

2. Veritabanı sıkıştırma.
Sürekli şişen bir veritabanıma haftalık manuel sıkıştırma yapıyordum. bunun için bir php dosyası hazırladım ve cronme üzerinden haftalık olarak ayarladım.


Beğenirseniz ve paranız varsa bağış yapmayı unutmayın. Sitenin sol altındaki "Donate" butonuna basarak kolayca bağış yapabilirsiniz.

konuyu irdelemek için:
cronme anasayfa : http://www.cronme.org/
cron nedir? (wiki) : http://en.wikipedia.org/wiki/Cron
cron nedir? (k. özdeir) : http://www.skorp.eu/2006/10/07/linux-cron-crontab-cronjob-nedir/

Bookmark and Share