PHP’de Çok Boyutlu Dizileri Sıralamak

PHP çok boyutlu dizileri sıralamak için array_multisort işlevi kullanılır. Elbette bu işlev tek satırda çalışmamakta öncesinde dizinin belirli bir biçime getirilmesi gerekiyor. O konunun detayına hiç girmeden php.net’deki şu arkadaşın yazmış olduğu işlev bu işlemi çok kolaylaştırıyor. Bu makale biraz üzümünü ye bağını sorma şeklinde oldu ama amerikayı yeniden keşfetmeye gerek yok :) gelelim işleve

Codeigniter Form Doğrulama

Codeigniter ile geliştirme yaparken form doğrulama işlemlerinde öncelikle form_validation kütüphanesini yüklemeniz gerekmektedir. Form gönderildikten sonra hatalar oluşması durumunda formun kullanıcıya girmiş olduğu veriler silinmeden yeniden sunulması için ihtiyaç duyulacak işlevler ise form_helper kütüphanesinde bulunmaktadır. Bu kütüphaneleri şu şekilde projenize dahil edebilirsiniz. [code lang=”php”] $this->load->helper(‘form’); $this->load->library(‘form_validation’); [/code] Kütüphaneleri yükledikten sonra bu kütüphane ile ilgili ayarlar ve

Codeigniter URL Yapısından index.php Kaldırma

Codeigniter URL yapısını SEO için düzenlemek gerektiğinde index.php bağlantısının tüm URL’lerden kaldıması için yine .htaccess kullanılmalıdır. Aşağıdaki .htaccess dosyası Codeigniter projesinin kök dizininde bulundurulmalı ve Codeigniter ayarlarının yapıldığı application->config->config.php dosyasındaki $config[‘index_page’] = ‘index.php’; değeri $config[‘index_page’] = ”; olarak değiştirilmelidir. [code lang=”bash”] RewriteEngine On RewriteBase / RewriteCond %{REQUEST_URI} ^system.* RewriteRule ^(.*)$ /index.php?/$1 [L] RewriteCond %{REQUEST_URI} ^application.* RewriteRule ^(.*)$

Netbeans’de Codeigniter Autocomplete

Netbeans ile Codeigniter kullanmak istediğinizde autopcomlete özelliğini için ekteki iki dosyayı indirip Netbeans proje dizini içindeki  nbproject dizini altına açmanız yeterli olacaktır. Elbette dosyaları yükledikten sonra Netbeans yeniden başlatılmalıdır.  Dosyaları İndirmek İçin: Netbeans Codeigniter Autocomplete

No input file specified hatası

Bu hata ile iki yerde karşılaştım. Biri WordPress diğeri Jaws CMS. Sanırım PHP’de bazı şeyler değişmiş :) açıkçası neyin değiştiğini araştırmadım ve çözüme yöneldim. Çözüm .htaccess dosyasından geçiyor. Aşağıdaki rewrite direktifleri benim için yeterli oldu. Kullandığınız kalıcı bağlantı yapısına göre kurallar değişiklik gösterebilir. Kendime uygun kuralı bulmak 1 günümü aldı diyebilirim. Bu süre aslında kayıp

Flow Chart Visual Programming Language

Algoritma ve Akış Diyagramı eğitimde kullanılabilecek çok güzel, VisualBasic ile yazılmış, open source bir proje; ben çok beğendim ve derslerimde de kullanmaya başladım. Normalde zipli bir klasörle buradan erişebilirsiniz. Ayrıca kurulumunun windows makinelerde kolay olması için bir yükleyici (installer) oluşturdum. Onu da buradan indirebilirsiniz. Son olarak kurulum klasöründe kaynak kodlara ve örneklere erişebilirsiniz…

Help Center Live / Açık Kaynaklı Web Destek Sistemi

Bir proje için Canlı Web Sohbet özelliği olan bir Web Tabanlı Destek Sistemi’ne ihtiyaç duydum. Önce yazayım dedim ama bu aralar pek zamanım olmadığı için açık kaynak cennetinde bir araştırmaya çıktım. Basit yönetimli güzel bir uygulama olan Help  Center Live ile karşılaştım. Önce çalışmadı ama biraz forum karıştırınca gördüm ki firefox kullanmamdan kaynaklanıyormuş. Böcek düzeltilmemiş

Google Code, SVN, Netbeans

Güzel bir makale… vaktim olursa tercüme ederim… Orjinali İçin: http://dupyshon.com/kylanrobinson/blog/2008/10/google-code-svn-and-netbeans/ This tutorial is intended to explain how to use Subversion to participate in Google Code projects using NetBeans in a Windows environment. Definitions: First, some definitions. Subversion (SVN) is a revision control system used in software development projects. It logs the complete history of a

Campsite Web Yayıncıları İçin Açık Kaynak Kodlu İnternet Gazetesi / Dergisi Yazılımı

Campware girişimi MDLF tarafından bağımsız medya için açık kaynak kodlu çözümler üreten bir platformdur. Campsite bu platformun 2001 yılında çıkan ilk ürünüdür. PHP ve Mysql tabanlı bu sistem genellikle medya kuruluşları tarafından kullanılmakta ve içeriklerini çevrimiçi olarak internette yayınlayabilmelerini sağlamaktadır. İnternet ortamında yayıncılık üzerine geliştirilen (benim bulabildiğim) yegane projedir. Campware girişiminin bunun dışında radyo yayın

MySQL 4.1’de Şifre Karmaşıklaştırma ve Problemi

Mysql veritabanı’nda şifreler düz-metin (plaintext) olarak kaydedilmez. Karmaşık şifreler Mysql’deki PASSWORD() işlevi ile üretilirler. Mysql, şifreleri istemci/sunucu iletişiminde iki safhada kullanır: İstemci sunucuya bağlanmak istediğinde sunucuda karmaşıklaştırılmış şekilde saklanan şifre ile eşleşecek bir şifre hazırlar. Ardından şifreler eşleşirse İstemci sunucuya bağlanır ve Mysql’deki hesapların (eğer yetkileri uygunsa) şifrelerini oluşturabilir veya değiştirebilir. Mysql 4.1 versiyonunda bu

Debian’da Java Kurulumu

Java lisans nedeni ile debian varsayılan depolarında bulunmuyor. Ama debian için contrib depolarında bulabilirsiniz. Yükleyebilmek için aşağıdaki depoyu /etc/apt/source.list dosyasına ekleyin: [code lang=”bash”]deb http://ftp.us.debian.org/debian sarge main contrib non-free[/code] ardından aşağıdaki komut ile apt depolarından sisteminizi güncelleyin: [code lang=”bash”]apt-get update [/code] ardından aşağıdaki komut ile java paketini sisteminize yükleyin: [code lang=”bash”] apt-get install java-package [/code] daha

Jaws’ta TinyMCE düzenleyicisine tablo eklentisini kurmak

Jaws içerisindeki tinyMCE editörünün varsayılan ayarlarında tablo eklentisi olmuyor. Tablo araçları ise web ortamında sıklıkla kullanılan araçlar oldukları için TinyMCE’de ilk kurulan eklentilerden biridir. Eklentiyi kurmak için öncelikle Jaws içerisinde; include\Extras\tinymce\mce_gzip.php dosyasında 455. satırdan sonra aşağıdaki satırı eklemelisiniz… [code lang=”php”] $tinyMCEplugins = ‘table’; [/code] ardından son bölümdeki tinyMCE kurulum alanında en üste aşağıdaki satırları ekleyin.

BIND9 namedrndc problemi

VPS sunucularda eğer bind9 kullanıyor iseniz gerçekten bir problem; bind9’u yeniden başlattığınızda [code lang=”bash”] Stopping domain name service: namedrndc: connect failed: connection refused . Starting domain name service: named. [/code] hatasını alıyorsanız anahtar kelime [code lang=”bash”] killall named [/code] sonra bind9’u yeniden başlatırsanız çalışacaktır…

Jaws Türkiye Yayında

Jaws Türkiye adı altında tüm türk jaws kullanıcılarını bir çatı altında toplamayı ve türkiyede jaws’ı tanıtmayı ve yaygınlaştırmayı hedeflediğimiz jaws-tr.com sitesi artık yayında tüm jaws kullanıcı ve geliştiricilerini bu çatı altına bekliyoruz…

Jaws 0.7.2 Artık Türkçe

Yapısını çok beğendiğim ve bundan sonra elimden geldiği kadar katkıda bulunmayı hedeflediğim jaws project artık türkçe, bu çalışmada emekleri için ayrıca öğrencim Fatih AKKOYUN’a da teşekkür etmek istiyorum. Bu çalışmamız için Jaws ekibide bizlere teşekkür etmiş; http://www.jaws-project.com/index.php?blog/show/36

No space left on device: mod_rewrite: could not create rewrite_log_lock

log dosyanızda aşağıdakine benzer bir hata alıyorsanız: [crit] (28)No space left on device: mod_rewrite: could not create rewrite_log_lock Configuration Failed. İşletim sisteminin kullanıcı temelinde sınırlı oluşturduğu semafor depolama kapasitesi aşılmıştır örneğin www-data kullanıcısının hafızada kullandığı semafor dizilerinin listesini şu komutla görebilirsiniz: ipcs -s | grep www-data Bu problemin çözümü ise aşağıdaki scriptin çalıştırılmasıyla bunların silinmesidir:

PHP ile Thumbnail (Küçük Resim) Üretmek

Sesli sözlükte thumbnail denildiğinde ilk karşımıza çıkan çeviri başparmak tırnağı yada başparmak tırnağı kadar oluyor,en son sırada da minyatür çizim olarak ifade edilmiş. Ben burada küçük resim demeyi tercih ediyorum. Birçok sitede olduğu gibi çoğu zaman resimler birden çok boyutta görüntülenebilmektedir. Bu işlem PHP’de GD kütüphanesi kullanılarak orjinal bir resimden istenilen yerde resim üretilerek yapılmaktadır.Internet’te

Internet Explorer’da Flash Player Etkinleştirme Problemi

Flash animasyon içeren bir sayfada görüntülenen animasyonlar şeffaf bir çerçeve içine alınmaktadır. Bazen de ActiveX denetimi etkinleştirilmeden animasyonlar çalışmamaktadır. Problem Microsoft’a açılan bir lisans davasından kaynaklanmaktaymış :) Eğer ziyaretçilerinizi bu tür bir etkinleştirmeyle uğraştırmak istemiyorsanız Açık Kaynak Kodlu Mozilla Firefox kullanmaya zorlamalısınız :) …. yok yok bir çözümü daha var… Sorun problemin kaynaklandığı noktayı bularak

CURL(Client URL Library Functions) Nedir? CURL ile kullanıcı kontrolü nasıl yapılır?

Daniel Stenberg tarafından yazılan bu PHP kütüphanesi, birçok farklı tipteki sunucunun, birçok farklı tipte protokol kullanarak birbirleriyle bağlantı ve iletişim kurabilmesini sağlamaktadır. Desteklenen protokoller ise http, https, ftp, gopher, telnet, dict, file, ve ldap protokolleridir.PHP 4.0.2. versiyonundan sonra PHP’ye eklenmiştir. Basit bir örnek vermek gerekirse cURL ile bir sitenin ana sayfasını HTML dosyası olarak sunucunuza

MySQL Root Şifresini Resetlemek

Eğer MySQL sunucusu çalışıyorsa [code lang=”bash”] /etc/init.d/mysql stop [/code] diyerek MySQL sunucusunu durduruyoruz. böyle durduramazsak pid’sini bulup kill komutunu kullanarak durduruyoruz. daha sonra [code lang=”bash”] mysqld –skip-grant-tables –user=root [/code] komutuyla yetki tablolarını pas geçerek root yetkisiyle çalıştırıyoruz.Bu işlemden sonra makinede yeni bir konsol açıyoruz. daha sonra [code lang=”bash”] mysql -u root [/code] komutuyla MySQL sunucusuna

NetBeans 4.1 ve Üstü Versiyonlarda Kurulum Problemi

Netbeans 4.1 üstü versiyonlarda JDK’dan kaynaklanan türkçe karakter probleminden dolayı Bölgesel Ayarları Türkçe olan Window XP makinelerde kurulum yapılamamaktadır. Bu problem Windows makinelerdeki Bölgesel Ayarları İngilizce yaparak çözülebilmekte, kurulum yapıldıktan sonra kurulum_dizini/etc/netbeans.conf dosyasında netbeans_default_options= satırına -locale tr_TR parametresinin eklenerek, sistemin Bölgesel Ayarları türkçeye geri döndürülebilir.

NetBeans’de Performans Arttırmak

NetBeans ilk açıldığında IDE’nin kurulu olduğu dizin altında kurulum_dizini/etc/netbeans.conf dosyasında izin verilen değerler ile çalıştılırır.Burada çalışma esnasında performansı etkileyecek IDE’nin kullanacağı minimum ve maksimum RAM değerleri tanımlanmaktadır. Varsayılan olarak gelen -J-Xms32m -J-Xmx128m değerleri, makinenizin imkan verdiği ölçüde yeniden düzenlenerek IDE’nin açılması ve çalışması esnasında performans artışı sağlanabilmektedir. Örneğin 512 RAM’e sahip bir makinede -J-Xms384m -J-Xmx512m

NetBeans’de Kütüphaneleri içeren Jar dosyası oluşturmak

Kullandığınız kütüphaneleri Netbeans’da oluşturduğunuz jar dosyasına şu şekilde ekleyebilirsiniz. 1.adım. Projenizdeki build.xml dosyasının sonuna aşağıdaki kodu eklemelisiniz. [code lang=”xml”] [/code] 2.Adım Shift+F11 yapın ve oldu. Artık dist klasöründeki jar dosyanızı istediğiniz yerde kullanabilirsiniz. Bununla beraber MANIFEST.mf dosyasınında doğru düzenlenmiş olması gerekmektedir. MANIFEST.mf dosyası şu şekilde düzenlenmelidir: ——————————————————– Manifest-Version: 1.0 Main-Class: Class_adi Class-Path: lib/swing-layout-1.0.jar Created-By: 1.3.1_01

Mysql veritabanını başka bir makinaya kopyalamak

Bu işlem için mysqldump en çok kullanılan seçenektir. Ama çok büyük tabloları daha hızlı ve basit bir şekilde başka bir makineye taşımak için yapılması gerekenler şunlardır: ilk önce dosyaların aktarılacağı bir dizin yaratıyoruz ve bu dizine –tab=DUMPDIR parametresiyle veritabanının yedeğini alıyoruz. [code lang=”Bash”] kabuk> mkdir DUMPDIR kabuk> mysqldump –tab=DUMPDIR veritabani_adi [/code] Daha sonra DUMPDIR dizinindeki

PHP ile rasgele şifre üretmek

PHP ile rasgele şifre üretmek için aşağıdaki scripti kullanabilirsiniz. Fonksiyon sizin vereceğiniz uzunluk değerine göre bir şifre üretiyor. Algoritma şu şekilde çalışıyor;ilk önce rand() fonksiyonu ile şifreyi oluşturacak karakterlerin ASCII değerleri elde ediliyor, chr() fonksiyonu ile de karakter karşılıkları elde ediliyor ve switch() fonksiyonunda da hangi case’in çalışacağı yine rasgele belirlenerek her bir karakter için

WordPress için Code Snippet Plugin

WordPress makalelerinde kod parçacıklarını reklendirmek için kullanılabilecek güzel bir plugin, desteklediği dil sayısı da kayda değer. http://blog.enargi.com/codesnippet/ linkinden indirebilirsiniz. Kontrol ettim de hala çalışmıyor site :( isterseniz buradan indirebiirsiniz

MySQL 4.1 veya 5.0’dan 4.0’a uyumlu yedek alımı

Mysql’in 4.1 ve 5 versiyonlarında her tablo hatta her alan için karakter seti tanımlaması yapılabilmesi veritabanının yedeklenip eski versiyonlarda yeniden kullanılmasını zorlaştırmıştır. Eski verisiyonlara dönüş yapılması gereken durumlarda mysqldump komutunu ” –comatiple=mysql40 “ parametresiyle çalıştırmak yeterli olacaktır. [code lang=”Bash”] kabuk>mysqldump -uroot -psifre –compatiple=mysql40 veritabani_adi > yedek_dosyasi.sql [/code] kabuk’dan vereceğiniz bu komut veritabanının mysql40 versiyonuna uyumlu

Seçim kutusu’ndan birden çok değerin PHP’ye aktarılması

Html form nesnelerinden seçim kutusunu <select multiple> şeklinde kullanmak ve seçim nesnesinin ismini verirken ismin sonuna “köşeli parantezler” eklemek bu nesne ile birden çok seçim yapılabilmesine ve değerlerin form’dan dizi şeklinde php’ye aktarılmasına olanak sağlamaktadır. Aşağıdaki örnekte html formunun nasıl düzenlendiği gösterilmektedir; [code lang=”html”] BaklavaŞekerpareKadayıf [/code] Bu formdan veriyi alabilmek için $_POST kullanmak en

Obezite

Eğer kilonuz 88,5 ve boyunuz da 1.71 cm ise o zaman siz bir obezsiniz. Evet ya sınırdasınız ya da obezsiniz, nereden mi biliyorum? çünkü;bugün gittiğim doktor ilk önce “obezite sınırındasınız” dedi sonra da “obez de diyebiliriz” dedi. üzüldüm tabi kendime ama bu “insülin direnci” dedikleri bir hastalık olabilirmiş onu tedavi edersek ideal kilom olan 69

Tema arayışı

Sonunda aradığım temayı buldum sanırım, WP için tasarlanmış 500 küsür tema arasında son bir haftadır her boş zamanımda bakındığım ve sonuda bulduğum tema budur. Seçeneğin bu kadar çok olması insanı gerçekten zora sokuyor. Temanın bannerında bir değişiklik yaptım o kadar ne de olsa Açık Kaynak Kod kendi ihtiyacıma göre düzenleyebilirim :)

İlk Yazı

Artık yazmaya başlamalıyım, birkaç satır da olsa bir yerlerde yazılı bir kaç metnim bulunmalı… Kategorileri oluşturacak, üzerine bildiklerimi aktaracak bir yer olsun, birileri de okusun artık.