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
Friday, September 18, 2009
Thursday, September 17, 2009
php ile pdf işlemlerimi artık tcpdf ile yapıyorum
ÖĞ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ış :
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ış :
- Simple PDF with default Header and Footer: [PHP] [PDF]
- Simple PDF without Header and Footer: [PHP] [PDF]
- Custom Header and Footer: [PHP] [PDF]
- Cell stretching: [PHP] [PDF]
- Multicell: [PHP] [PDF]
- WriteHTML and RTL support: [PHP] [PDF]
- Independent columns with WriteHTMLCell: [PHP] [PDF]
- External UTF-8 text file: [PHP] [PDF]
- Image: [PHP] [PDF]
- Multiple columns: [PHP] [PDF]
- Colored Tables: [PHP] [PDF]
- Graphic Functions: [PHP] [PDF]
- Graphic Transformations: [PHP] [PDF]
- Javascript and Forms: [PHP] [PDF]
- Bookmarks (Table of Content): [PHP] [PDF]
- Document Encryption: [PHP] [PDF]
- Independent columns with MultiCell: [PHP] [PDF]
- Persian and Arabic language on RTL document: [PHP] [PDF]
- Non unicode / Alternative config file: [PHP] [PDF]
- Multicell complex alignment: [PHP] [PDF]
- writeHTML alignment: [PHP] [PDF]
- CMYK colors: [PHP] [PDF]
- Page Groups: [PHP] [PDF]
- Object Visibility: [PHP] [PDF]
- Object Transparency: [PHP] [PDF]
- Text Clipping: [PHP] [PDF]
- Barcodes: [PHP] [PDF]
- Multiple page formats: [PHP] [PDF]
- Set PDF viewer display preferences: [PHP] [PDF]
- Colour gradients: [PHP] [PDF]
- Pie Chart Graphic: [PHP] [PDF]
- EPS/AI vectorial image: [PHP] [PDF]
- Mixed font types (TrueType Unicode, core, CID-0): [PHP] [PDF]
- Clipping masks: [PHP] [PDF]
- Line styles with cells and multicells: [PHP] [PDF]
- Text Annotations: [PHP] [PDF]
- Spot Colors: [PHP] [PDF]
- NON-embedded CID-0 CJK font: [PHP] [PDF]
- HTML Justification: [PHP] [PDF]
- Booklet (double-sided pages): [PHP] [PDF]
- File attachment: [PHP] [PDF]
- Image with Alpha Channel Transparency: [PHP] [PDF]
- Disk caching: [PHP] [PDF]
- Move and delete page: [PHP] [PDF]
- Table Of Content with Bookmarks: [PHP] [PDF]
- Text hyphenation: [PHP] [PDF]
- Transactions and UNDO: [PHP] [PDF]
- Table header and rowspan: [PHP] [PDF]
- TCPDF methods in HTML: [PHP] [PDF]
- Experimental 2D Barcode: [PHP] [PDF]
- Full page background: [PHP] [PDF]
- Digital Signature Certification: [PHP] [PDF]
- Javascript functions: [PHP] [PDF]
- XHTML Form: [PHP] [PDF]
Tuesday, September 15, 2009
gmail kullanıcı dostudur, size öneriler sunar
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.
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.
Friday, September 11, 2009
Hızlı Yol Tarifi Formu
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:
İsterseniz hemen deneyin:
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:
Saturday, September 5, 2009
javascript kullanarak iphone, android, blackberry uygulamalar
ÖĞ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.
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.
Tuesday, August 4, 2009
jquery validation eklentisi select elemanı neden i.e.'da hata verir
ÇÖ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.
Sonra fark ettim ki "option" lar için hiç "value" girmemişim.
Hepsi şu şekildeydi:
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.
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.
Wednesday, July 29, 2009
php ve excel tabloları
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/
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/
Friday, July 24, 2009
ftp sunucumu yerel bir dizine bağlamak
ÖĞ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.
sonra da şöyle bağladım :
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
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
Thursday, July 23, 2009
jquery işlemlerinde setTimeout kullanmak
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.
Şöyle üç şekilde kullanımına örnek verdim
js:
html:
şurada çalıştırarak görebilir : http://jsbin.com/ivetu
ve burada da kodları değiştirip deneyebilirsiniz : http://jsbin.com/ivetu/edit
---
Farkettim ki yukarıdaki çok karışık geliyor insanlara. halbuki kullanım kolaylığını göstermek için çeşitli şekillerde örnek vermişdim. Neyse, hasılı, nihayetinde şöyle de kullanabilirsiniz:
Alıntı :
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
---
Farkettim ki yukarıdaki çok karışık geliyor insanlara. halbuki kullanım kolaylığını göstermek için çeşitli şekillerde örnek vermişdim. Neyse, hasılı, nihayetinde şöyle de kullanabilirsiniz:
Alıntı :
- $(document).ready(function() {
- window.setTimeout(function() {
- // islem islem islem
- }, 1000);
- });
Tuesday, July 21, 2009
web cronjob
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/
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.
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/

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.
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/
Saturday, June 20, 2009
css deneylerim - üçgen
çok güzel css deneyleri ile karşılaştım bu gün. Biraz biraz denemelere başladım ben de.
Herkes gibi css ve üçgen meselesine uzaktan giriş yaptım:
benim üçgen modelim şöyle oldu:
(css ile sadece dik kenar üçgen çizmek için bir prototiptir. yükseklik, taban uzunluğu, konum ve renk değiştirilebilir.)
css:
biraz oynayınca şuna benzer çıktılar da elde edilebilir.
konuyu irdelemek için:
http://www.tantek.com/ (css ve geometrik şekiller ile ilgili ilk incelediğim site)
http://www.tantek.com/CSS/Examples/polygons.html (yöntemler harika)
Herkes gibi css ve üçgen meselesine uzaktan giriş yaptım:
benim üçgen modelim şöyle oldu:
(css ile sadece dik kenar üçgen çizmek için bir prototiptir. yükseklik, taban uzunluğu, konum ve renk değiştirilebilir.)
css:
<style type="text/css" media="screen">
.ust {
position:absolute;
left:150px; top:100px;/* konumlandır */ }
.ust div {
border-left-color: transparent;
border-style: solid;
}
.ic{
border-width: 0 0 /* taban: */ 300px /* yükseklik : */ 200px;
border-bottom-color: #955;
}
</style>html:<div class="ust"> <div class="ic"></div> </div>sonuç:
biraz oynayınca şuna benzer çıktılar da elde edilebilir.
konuyu irdelemek için:
http://www.tantek.com/ (css ve geometrik şekiller ile ilgili ilk incelediğim site)
http://www.tantek.com/CSS/Examples/polygons.html (yöntemler harika)
webkit sevimlidir
NOT DÜŞTÜM
sevimlidir çünkü oval köşeler yapmak için sizi uğraştırmaz, geçiş efekti için javascript yazmanıza gerek kalmaz (tek neden bu değil elbette). Kolaycı bir yaklaşımı vardır.
Bugün öğrendim ki; renk geçişini şöyle sağlayabiliyormuşum:
Zannederim biraz performansı düşürüyor. Abartmamak lazım. Örneğin şu blog da tüm oval köşeler ve geçişler çok kullanılmış.
Not: CSS3 ile zaten bu tarz işlemler standart olma (galiba) aşamasında efendim :
http://www.w3.org/TR/css3-transitions/
konuyu irdelemek için:
sevimlidir çünkü oval köşeler yapmak için sizi uğraştırmaz, geçiş efekti için javascript yazmanıza gerek kalmaz (tek neden bu değil elbette). Kolaycı bir yaklaşımı vardır.
Bugün öğrendim ki; renk geçişini şöyle sağlayabiliyormuşum:
- bir link için normal ve :hover durumları yazılır:
- Sonrasında da bügün örendiğim ve renk geçişini sağlayan şu kod
a {-webkit-transition-duration: .33s; -webkit-transition-property: color, background;}
a{ background-color: #239; color: #fff; padding:10px;}
a:hover{ background-color: #932; color: #020202; }Zannederim biraz performansı düşürüyor. Abartmamak lazım. Örneğin şu blog da tüm oval köşeler ve geçişler çok kullanılmış.
Not: CSS3 ile zaten bu tarz işlemler standart olma (galiba) aşamasında efendim :
http://www.w3.org/TR/css3-transitions/
konuyu irdelemek için:
- http://css-infos.net/property/-webkit-transition-duration
- http://developer.apple.com/documentation/AppleApplications/Reference/SafariCSSRef/Articles/StandardCSSProperties.html#//apple_ref/css/property/-webkit-transition-duration
- http://webkit.org/blog/138/css-animation/
- http://www.w3.org/TR/css3-transitions/
Thursday, June 11, 2009
cURL ile İlk SSL url
Normel de şöyle kullanıyorum:
işte güvenli sayfalar için şu üst bilgiyi vermem gerekmekteymiş.
// method = POST/GET// adres = "http://..."
// veri = "a=deneme&b=deneme_deger2"
$ch = curl_init(); // cURL oturumu baslatildi.
$url = $method == 'GET' ? $adres."?".$veri : $adres; // get ? post
curl_setopt($ch, CURLOPT_URL,$url."");
if($method == 'POST') {
curl_setopt($ch, CURLOPT_POSTFIELDS,"$veri");
}
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch,CURLOPT_REFERER,$referans);
curl_setopt($ch,CURLOPT_USERAGENT,$ajan);
curl_setopt($ch,CURLOPT_HTTPHEADER,array("application/x-www-form-urlencoded"));
$veri=curl_exec($ch);
echo $veri;
işte güvenli sayfalar için şu üst bilgiyi vermem gerekmekteymiş.
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
Thursday, June 4, 2009
Mandelbrot Büyük Adammış
Fractal setler arasında en sevdiğim Mandelbrot'dur. Wiki'ye sordum tam istediğim cevabı verdi. En anlaşılır biçimiyle Mandelbrot seti algoritması (pseudocode olarak)
Konuyu irdelemek için bağlantılar
http://en.wikipedia.org/wiki/Mandelbrot_set#
http://www.codeproject.com/KB/cpp/mandelbrot_obfuscation.aspx (c++ ile Mandelbrot seti)
http://local.wasp.uwa.edu.au/~pbourke/fractals/mandelbrot/ (The Mandelbrot At A Glance)
http://snippets.dzone.com/tag/mandelbrot
For each pixel on the screen do
{
x = x0 = x co-ordinate of pixel
y = y0 = y co-ordinate of pixel
iteration = 0
max_iteration = 1000
while ( xx + yy = (22) AND iteration max_iteration )
{
xtemp = xx - yy + x0
y = 2xy + y0
x = xtemp
iteration = iteration + 1
}
if ( iteration == max_iteration )
then
color = black
else
color = iteration
plot(x0,y0,color)
}
Konuyu irdelemek için bağlantılar
http://en.wikipedia.org/wiki/Mandelbrot_set#
http://www.codeproject.com/KB/cpp/mandelbrot_obfuscation.aspx (c++ ile Mandelbrot seti)
http://local.wasp.uwa.edu.au/~pbourke/fractals/mandelbrot/ (The Mandelbrot At A Glance)
http://snippets.dzone.com/tag/mandelbrot
Wednesday, June 3, 2009
Jquery Animasyonlarında Dikkat Edilmesi Gereken Önemli Bir Nokta
Bu sabah jquery ile yaşadığım kötü hatıra ile not etme gereği duydum
Sıradan bir menü efekti için mouse linklerin üzerine geldiğinde linklerin sağa doğru animasyonunu sağlayan kod kabaca şu şekilde olabilir.
Etraflıca bakınmanız için ek bağlantılar:
http://docs.jquery.com/Effects/stop
http://docs.jquery.com/Effects/animate
http://docs.jquery.com/API/1.3/Effects
Sıradan bir menü efekti için mouse linklerin üzerine geldiğinde linklerin sağa doğru animasyonunu sağlayan kod kabaca şu şekilde olabilir.
$(document).ready(function() {
$('ul a')
.hover(
function() {$(this).animate({ left: 30 });},
function() { $(this).animate({ left: 0 });});
});Görmek için: http://jsbin.com/oyaxe
Kodu daha yakın incelemek/düzenlemek için: http://jsbin.com/oyaxe/edit
Fakat yukarıdaki örnekde mouse hızlıca linklerin üzerinden bir kaç gez gidip geldiğinde linklerin tüm animasyonu tamamlamak için animasyonları kuyruğa koyar ve mouse artık başka yerde olsa bile önceki hareketinin tetiklediği animasyonlar bir süre devam eder. Bu önemli nokta genellikle atlanıyor. Bunun önüne geçmek için animate() fonksiyonundan hemen önce stop() fonksiyonu kullanılmalı. Şöyle ki:
Fakat yukarıdaki örnekde mouse hızlıca linklerin üzerinden bir kaç gez gidip geldiğinde linklerin tüm animasyonu tamamlamak için animasyonları kuyruğa koyar ve mouse artık başka yerde olsa bile önceki hareketinin tetiklediği animasyonlar bir süre devam eder. Bu önemli nokta genellikle atlanıyor. Bunun önüne geçmek için animate() fonksiyonundan hemen önce stop() fonksiyonu kullanılmalı. Şöyle ki:
$(document).ready(function() {
$('ul a')
.hover(
function() {$(this).stop().animate({ left: 30 });},
function() { $(this).stop().animate({ left: 0 });});
});
Görmek için : http://jsbin.com/ayizi/
Kodu daha yakın incelemek/düzenlemek için: http://jsbin.com/ayizi/edit
http://docs.jquery.com/Effects/stop
http://docs.jquery.com/Effects/animate
http://docs.jquery.com/API/1.3/Effects
Thursday, May 28, 2009
Google Chart Api'den Çok Memnunum
TAVSİYE EDİYORUM
Bir süredir google chart api kullanıyorum ve gerçekten hayat kurtarır bir etken. kod kalabalığını yok eden oldukça sevimli ve bir o kadar da profesyonel bir api. Detaylar ve örnekler kendi sayfasında verilmiş.
Yampanız gereken tek şey parametreleriniz "<img" içinde "src" a eklemek. Eğer daha da tembelseniz birisi google chart api için sihirbaz yapmış : http://www.jonwinstanley.com/charts/
Kısa bir kaç örnek:


Bir süredir google chart api kullanıyorum ve gerçekten hayat kurtarır bir etken. kod kalabalığını yok eden oldukça sevimli ve bir o kadar da profesyonel bir api. Detaylar ve örnekler kendi sayfasında verilmiş.
Yampanız gereken tek şey parametreleriniz "<img" içinde "src" a eklemek. Eğer daha da tembelseniz birisi google chart api için sihirbaz yapmış : http://www.jonwinstanley.com/charts/
Kısa bir kaç örnek:
<img src="http://chart.apis.google.com/chart? chs=400x200 &chco=859999|efe0a0|889955 &chd=t:60,10,30 &cht=p3 &chl=friendfeed|facebook|twitter|myspace" alt="Sample chart" />
çıktısı:
<img src="http://chart.apis.google.com/chart? cht=lc &chs=400x200 &chco=0077CC &chd=t:27,25,60,31,25,39,25, 31,26,28,80,28,27,31,27, 29,26,35,70,25" />
çıktısı:
<img src="http://chart.apis.google.com/chart? cht=s &chco=954141 &chd=t:12,87,75,41,23,96,68,71,34,9|98,60,27,34,56,79,58,74,18,76|84,23,69,81,47,94,60,93,64,54&chxt=x,y&chxl=0:|0|20|30|40|50|60|70|80|90|10|1:|0|25|50|75|100 &chs=400x200" />
çıktısı:
Monday, May 25, 2009
Greasemonkey ilk denemem
Greasemonkey ile herhangi bir twitter profilinden son güncellemeyi aralılarla kontrol edip herhangi bir sayfanın üzerinde tek satır olarak görüntüleyeceğim. Tabiki sadece bir prototip.
Greasemonkey ile jquery hiç kullanmamıştım bu vesileyle onu da kullanmış oldum.
Eğer kodu buradan okuyamıyorsanız : http://pastebin.com/f6e5cbbe3
test3.user.js
Greasemonkey ile jquery hiç kullanmamıştım bu vesileyle onu da kullanmış oldum.
Eğer kodu buradan okuyamıyorsanız : http://pastebin.com/f6e5cbbe3
test3.user.js
// ==UserScript==
// @name test3
// @description tayyar test3
// @copyright 2009, Hasan Tayyar BEŞİK
// @license GPL version 3 or any later version (http://www.gnu.org/copyleft/gpl.html)
// @include *
// ==/UserScript==
// jQuery eklendi
var jq = document.createElement('script');
jq.src = 'http://jquery.com/src/jquery-latest.js';
jq.type = 'text/javascript';
document.getElementsByTagName('head')[0].appendChild(jq);
// jQuery yüklenme durumu kontrolü
function GM_wait() {
if(typeof unsafeWindow.jQuery == 'undefined') { window.setTimeout(GM_wait,100); }
else { $ = unsafeWindow.jQuery; twit_kontrol(); }
}
GM_wait();
function twit_kontrol(){
var obje = document.createElement("div");
obje.innerHTML = '<div style="width:100%;height:25px;z-index:100; background:#7FDFF8;color:#050505;position:relative; top:0" id="twits"></div>';
document.body.insertBefore(obje, document.body.firstChild);
var siteName = 'htayyar';
$.getJSON(
'http://search.twitter.com/search.json?callback=?&rpp=50&q=from:' + siteName,
function(data) {
$.each(data, function(i, tweets) {
if(tweets[0].text !== undefined)
$('#twits').append('<span>' + tweets[0].text + '</span><br />');
});
}
);
var st=setTimeout("twit_kontrol()",2000);
}
Friday, May 22, 2009
ip adresinden ülke, bölge, şehir öğrenmek için ücretsiz bir api kullanıyorum
http://iplocationtools.com "Free IP address geolocation, API and fraud detection tools"
Bu ücretsiz api ile ip adresinin konumunu bulabilirsiniz. %90-%95 doğruluk oranı verilmekte. Nadiren yakın bölgeler çıkabiliyor. Örneğin İzmir için bazen Manisa çıkabilir ki bunun nedeni de muhtemelen oradaki internet ağı ile ilgili.
Bu apinin php ile nasıl kullanılacağı bu sayfada güzelce yazılmış : http://iplocationtools.com/ip_location_api.php
Veriyi varsayılan olarak XML formatta alıyorsunuz. Ancak JSON olarak da alabilirsiniz.
# xml veya json cikti verebiliyor :
http://iplocationtools.com/ip_query.php?ip=120.120.120';
http://iplocationtools.com/ip_query.php?ip=120.120.120&output=json';
# callback fonksiyonu ekleyebilirsiniz
http://iplocationtools.com/ip_query.php?ip=120.120.120&output=json&callback=functionToCall
Güzel yanı bir kerede birden fazla sorgu yapabilirsiniz.
http://iplocationtools.com/ip_query2.php?ip=120.120.120.100,121.121.121.100&output=json
Detay bilgiler değil sadece ülke adının öğrenmek için daha temiz çıktı veren bir sayfası daha var bu apinin.
http://iplocationtools.com/ip_query_country.php?ip=120.120.120.120&output=json
Ayrıca tüm veritabanını indirebilirsiniz. Bunu sevdim çünkü çoğu yer satıyor.
http://iplocationtools.com/sql_database.php
Kullanıp memnun kalırsanız lütfen donation butonuna basıp birazcık bişeyler gönderiverin.
https://www.vpnmentor.com/tools/ipinfo/ "100% Accuracy Free Ip Lookup Tool"
Bu ücretsiz api ile ip adresinin konumunu bulabilirsiniz. %90-%95 doğruluk oranı verilmekte. Nadiren yakın bölgeler çıkabiliyor. Örneğin İzmir için bazen Manisa çıkabilir ki bunun nedeni de muhtemelen oradaki internet ağı ile ilgili.
Bu apinin php ile nasıl kullanılacağı bu sayfada güzelce yazılmış : http://iplocationtools.com/ip_location_api.php
Veriyi varsayılan olarak XML formatta alıyorsunuz. Ancak JSON olarak da alabilirsiniz.
# xml veya json cikti verebiliyor :
http://iplocationtools.com/ip_query.php?ip=120.120.120';
http://iplocationtools.com/ip_query.php?ip=120.120.120&output=json';
# callback fonksiyonu ekleyebilirsiniz
http://iplocationtools.com/ip_query.php?ip=120.120.120&output=json&callback=functionToCall
Güzel yanı bir kerede birden fazla sorgu yapabilirsiniz.
Detay bilgiler değil sadece ülke adının öğrenmek için daha temiz çıktı veren bir sayfası daha var bu apinin.
Ayrıca tüm veritabanını indirebilirsiniz. Bunu sevdim çünkü çoğu yer satıyor.
http://iplocationtools.com/sql_database.php
Kullanıp memnun kalırsanız lütfen donation butonuna basıp birazcık bişeyler gönderiverin.
Guncelleme
Arayuzu daha duzgun olan bir arac daha var (cok arac var aslinda). Sunu da bir deneyin derimhttps://www.vpnmentor.com/tools/ipinfo/ "100% Accuracy Free Ip Lookup Tool"
Kullanıcıya güvenme 1 - Form Submit Butonunu Etkinsizleştir
TAVSİYE EDİYORUM
Çoğu uygulamada görüp hala kendi uygulamalarımda yapmadığım bir durumdur. Bir formda "Submit" tuşuna basıldıysa kullanıcının tekrar tekrar o tuşa basmasını engellemek gerek. tembel olduğum için kısaca tüm formlara bu özelliği şu şekil ekliyorum artık
Çoğu uygulamada görüp hala kendi uygulamalarımda yapmadığım bir durumdur. Bir formda "Submit" tuşuna basıldıysa kullanıcının tekrar tekrar o tuşa basmasını engellemek gerek. tembel olduğum için kısaca tüm formlara bu özelliği şu şekil ekliyorum artık
// <form> bütün form tagleri $('form').submit(function(){// submit olduğu vakit $('input[type=submit]', this).attr('disabled', 'disabled'); });
Thursday, May 14, 2009
last.fm verilerinizi php ile çekin
Aslında temel amacım tüm verileri indirmek. Fakat tüm verileri çekmek için last.fm api yeterli gelmiyor. bundan dolayı profil sayfasında curl ile dolaşarak ayrıştırmam gerkecek.
curl olmadan last.fm api'si sayesinde last.fm verilerinizin bir kısmını xml olarak çekebilirsiniz.
örneğin şunlar çekilebiliyomuş : topalbums, topartists, toptracks, friends, activefriends, neighbours, replytracker, recentactivity, recenttracks, tags, taggeditems, artisttags, albumtags, tracktags, journals, weeklychartlist, weeklyartistchart, weeklytrackchart, weeklyalbumchart, profile, manualrecs, wikirecs, recentlovedtracks, recentbannedtracks, events, playlist, systemrecs, friendevents, eventsysrecs, tasteometer
xml adresi şuna benziyor: http://ws.audioscrobbler.com/1.0/user/[username]/topartists.xml
örnek bazı adresler şöyleki:
http://ws.audioscrobbler.com/1.0/user/hasantayyar/topartists.xml
http://ws.audioscrobbler.com/1.0/user/hasantayyar/topalbums.xml
http://ws.audioscrobbler.com/1.0/user/hasantayyar/toptracks.xml
Şöyle bi kaç şey denedim örneğin:
demo (topartist için): http://hasantayyar.tekabul.com/last.fm.api.demo.php
kod (topalbums için örnek kodlar)
curl olmadan last.fm api'si sayesinde last.fm verilerinizin bir kısmını xml olarak çekebilirsiniz.
örneğin şunlar çekilebiliyomuş : topalbums, topartists, toptracks, friends, activefriends, neighbours, replytracker, recentactivity, recenttracks, tags, taggeditems, artisttags, albumtags, tracktags, journals, weeklychartlist, weeklyartistchart, weeklytrackchart, weeklyalbumchart, profile, manualrecs, wikirecs, recentlovedtracks, recentbannedtracks, events, playlist, systemrecs, friendevents, eventsysrecs, tasteometer
xml adresi şuna benziyor: http://ws.audioscrobbler.com/1.0/user/[username]/topartists.xml
örnek bazı adresler şöyleki:
http://ws.audioscrobbler.com/1.0/user/hasantayyar/topartists.xml
http://ws.audioscrobbler.com/1.0/user/hasantayyar/topalbums.xml
http://ws.audioscrobbler.com/1.0/user/hasantayyar/toptracks.xml
xml yapısını görmek için adresi herhangi bir tarayıcı ile açıp kaynağına bakarsanız node adlarını göreceksiniz. sonrasında ise aşağıdaki örneği baz alıp verilerinizi çekebilirsiniz.
Şöyle bi kaç şey denedim örneğin:
demo (topartist için): http://hasantayyar.tekabul.com/last.fm.api.demo.php
kod (topalbums için örnek kodlar)
<?php
$user = "hasantayyar"; // last.fm user name
$xml=array(
"topalbums"=>"topalbums.xml",
"topartists"=>"topartists.xml",
"toptracks"=>"toptracks.xml"
//...
);
// sunlar olabilir: topalbums, topartists, toptracks, friends, activefriends, neighbours, replytracker, recentactivity, recenttracks, tags, taggeditems, artisttags, albumtags, tracktags, journals, weeklychartlist, weeklyartistchart, weeklytrackchart, weeklyalbumchart, profile, manualrecs, wikirecs, recentlovedtracks, recentbannedtracks, events, playlist, systemrecs, friendevents, eventsysrecs, tasteometer
// ben şimdilik topalbum icin yapiyorum
$url ="http://ws.audioscrobbler.com/1.0/user/".$user."/".$xml["topalbums"];
$xml = simplexml_load_file("$url"); // PHP4 ile çalışmaz sanırım
print "<div class='container'>";
foreach($xml->album as $album)
{
$artist = $album->artist;
$album_image_medium = $album->image->medium;
$album_name = $album->name;
$album_url = $album->url;
echo "<div class='row'>
<div class='album_img'><img src='".$album_image_medium."'></div>
<div class='album_link'><a href='".$album_url."'>".$artist." - ".$album_name."</a></div>
<div class='clear'></div>
</div>
";
}
print "</div>";
?>
Subscribe to:
Posts (Atom)





