Koodla Dosya Yükleme Sınıfı
Suncuya dosya yüklemek pek çok zaman zor olabilir, beklenmeyen hatalar, işlerinizi istemediğiniz kadar uzatabilir.

Bunun önüne geçmek için Koodla Dosya Yükleme sınıfını yazdım. Sınıfın temel amacı sunucuya dosya yükleme işlemini olabildiğince basit ve sade bir hale getirmesi, bir hata oluşursa doğru şekilde bilgilendirmesi.
Çözüm Yolları ve Bakış Açısı
Bir sorunla karşılaştığımızda hedefimiz bellidir, bu sorunu en kısa yoldan çözmek. Veya bazen en “akılcı” yoldan çözmek de olabilir eğer en kısa yol makul olarak kabul ettiğimiz sınırlar içerisinde değilse.

Sorunumuzu tam olarak belirledikten sonra çözüm için çalışmaya başlarız, tasarladığımız cevapları soruna uygularız ve hedefimize ulaşıp ulaşmadığımızı değerlendiririz.
Ancak çözüm yolları arayışında probleme bakış açımız o kadar önemlidir ki, bazen bakış açımızı değiştirmediğimiz sürece en basit problemlerin bile altından kalkamayabiliriz. Benim yaşadığım ve bu yazıyı da yazmama vesile olan basit bir örnek ile bu duruma bir örnek vermek istiyorum.
PHP mktime() ile zaman işlemleri
PHP ile tarih işlemleri yapmak her zaman lazım olur. Uygulamanızın özellikleri ne olursa olsun, bir yerinde mutlaka zaman hesaplama ile haşır neşir olursunuz. Böyle durumlarda mktime() fonksiyonu çok işinize yarayabilir.
Kullanıcı dostu URL oluşturma (2. teknik)
Bundan daha önceki bir yazımızda kullanıcı dostu url oluşturma’dan bahsetmiştik. Ancak orada kullanıdığımız teknikte işlemi gerçekletirecek dosyayı uzantısız olarak kaydetmemiz gerekiyordu, bu da biraz zahmetli oluyordu.
Şimdi ise daha kullanışlı bir teknikten bahsedelim, üstelik bu teknikte uzantısız dosya falan yok
PHP ile sınırsız alt kategori mantığı
PHP ile yazılan içerik yönetimi uygulamalarının vazzgeçilmez parçasıdır kategorilendirme. Eğer her bir içerik tek bir kategoriye ait olacaksa ve bütün kategoriler birbiri ile aynı önemdeyse kolay şekilde bir kategorilendirme yapabilirsiniz. Ancak kategoriler arasında ast-üst ilişkisi oluşturmaya başladığınızda, yani “alt kategori” mantığına geçtiğinizde aklınıza gelecek ilk soru şu olacaktır: “ne kadar alt kategori olacak?”

Tabi ki alt kategori sayısını belrleyip ona göre uygulamanızı hazırlayabilirsiniz ancak ileride yeni bir alt kategori eklemek isterseniz ne olacak? Bütün uygulamayı baştan yazamayacağınıza göre, hazırladığınız program bir şekilde yeni alt kategoriler eklenmesini destekliyor olmalıdır.
İsterseniz burada böyle bir alt kategorilendirme sistemini nasıl oluşturacağımızı tartışalım. Uygulamamız netice itibariyle sınırsız sayıda alt kategoriyi destekliyor olacak.
Javascript için PHP fonksiyonları
PHP’nin çekirdeğinde yer alan fonksyonlar o kadar kullanışlıdır ki, tek satır kod ile dizileri sıralayabilir, md5 kodlanmış halini alabilir veya dizideki tüm elemanlara elinizdeki fonksiyonu tek bir satır ile uygulatabilirsiniz.
Şu andaki mevcut kütüphaneler ile ‘altın’ çağına giren javascriptde de bunlara benzer fonksiyonlar olsa ne güzel olur değil mi? İşte böyle düşünen bir geliştiricinin (Kevin van Zonneveld) başlattığı açık kaynak bir javascript kütüphanesi oluşturma fikrinin pek çok başka geliştiriciden de destek bulması ile ortaya 146 adet PHPdekilerin eşleniği olan javascript fonksiyonları çıkmış.
Kullanıcı dostu url hazırlamak
Pek çok siteye baktığınızda, şöyle uzayıp giden adresler görebilirsiniz: site.com/yazilar/kategori/14/yazi/21/ gibi. İlk aklınıza gelen “bu kadar dosyayı – dizini nasıl idare ediyorlar?” sorusu olabilir, ancak durum öyle değil. Yaptıkları sadece farklı bir url mantığı kullanmak.

Yani yukarıdaki adresin asıl ifade ettiği şey, site.com/kategori.php?kategori=14&yazi=21 . İlkinin daha kullanıcı dostu olduğunu söyleyebiliriz rahatlıkla ve bu yazıda bu tarz adresleri nasıl oluşturacağımız üzerine tartışacağız.
Headerlar ve PHP ile header() kullanımı
Bir web sayfasının adresini, tarayıcının adres satırına yazıp “enter”a bastıktan sonra biraz bekleriz ve karşımıza istediğimiz web sayfası gelir. Enter’a basışımızdan, sayfanın yüklenmesi tamamlanana kadar arada pek çok işlem gerçekleşir, ama biz bu yazımızda sadece tarayıcı ile sunucu arasındaki ilişkiyi sağlayan “header”lar üzerine eğileceğiz!

Header’ı Türkçeleştirdiğimiz zaman karşımıza “başlık” kelimesi çıkar, tam olarak da doğrudur aslında, kullanıcının tarayıcısı ile internet sitesinin sunucusu arasında geçen diyalogda, tarafların birbirine gönderdikleri başlıklardır.
Koodla resim işlemleri sınıfı
PHP’nin en güzel yanlarından biri de resimler üzerinde işlem yapabilmede size verdiği özelliklerdir. Ama bazen sunulan bu özellikler kafa karıştırıcı olabiliyor.

Ama hazırladığım bu sınıf ile işlemler biraz daha kolay olabilecek. Çünkü içerisinde yer alan türkçe kullanım klavuzu ile işlemler daha kolay anlaşılabilecek, nesne yönelimli yaklaşımla yazılacak kod satır sayısı oldukça azaltılabilecek.
Hata sayfaları yönetimi
Web programlama dillerinin (ör: PHP) getirdiğini en büyük avantaj kuşkusuz içeriğin dinamik olarak oluşturulabilmesi. Bu şekilde içeriği düzenlediğimizde statik html sayfalarının aksine, çok fazla sayıda sayfa oluşturabiliyoruz. Bu kadar çok sayfanın getirdiği bazı sorunlar da oluyor tabi ki. Bunların en meşhuru, “sayfa bulunamadı” anlamına gelen “404 hatası”.

404 hatasıyla beraber, sık karşılaşılan başka sunucu hataları da var tabiki, kullanıcı, bu tür hatalardan birine yol açacak bir istek yaptığında apache sunucusu varsayılan hata sayfasını kullanıcıya gösterir. Bu hata sayfalarının pek sevimli olmadığı itiraf etmemiz gerekir, genelde kullanıcı kaybına yol açarlar. Bunun önüne geçmek için kendi hata sayfalarımızın olması gerekmekte.
Arama
E-Posta Aboneliği
RSS Aboneliği
En Çok Yorumlanan Yazılar
- Ajax ile dinamik listeleme (22)
- Blogger’da “devamını oku” bağlantısı (21)
- MySQL’de Transaction ve PHP ile kullanımı (16)
- PHP ile sınırsız alt kategori mantığı (16)
- MySQL’de “join” kullanımı (13)
- Kullanıcı dostu url hazırlamak (12)
- PHP’nin (muhtemelen) az bilinen 10 özelliği (12)
- Kullandığınız programlama dili ne kadar popüler? (12)
- .htaccess konuları [Giriş] (11)
- Blogger’da arama kutusu ekleme (10)
Etiketler
Son Yorumlar
- Fatih: Açıkçası sitenizi yeni keşfettim ve gerçekten beğendim. Kaynak ve tutorial ihtiyacı olduğunda yabancı blog...
- beyo: emeğine sağlık, temiz bir anlatım olmuş
- gokhan: güzel bir anlatım yapmışsın.. devamını bekleriz.. kolay gelsin
- web yazılım şirketi: google blog araması ile .net üzerinden hizmet veren web yazılım şirketi ararken tesadüfen bu web...
- Codderol: çok teşekkürler bu çalışma bana çok yardımcı oldu….
02 / Mayıs / 2009