arşiv

0, 2008 için arşiv

php dosya işlemleri

Cuma, 31 Eki 2008

PHP’de yukarıda ele aldığımız include ve require komutları ve biraz sonra değineceğimiz dosya okutma ve yazdırma işlemleri dolayısıyla bir dosyanın varlığı veya yokluğu, ya da bir dosyaya ait sandığımız ismin bid klasöre ait olması, programımızın sağlıklı işleyebilmesi açısından büyük önem taşır. PHP bu amaçla bize bir kaç kullanıma hazır fonksiyon sağlıyor. Burada kısaca bu fonksiyonlara ve nasıl kullanıldıklarına değinelim:

Dosya var mı? file_exits()

Bir dosyanın var olup olmadığını denetleyen bu fonksiyon, dosya varsa true/doğru, yoksa false/yanlış sonucunu verir. Örnek:

[php]
if ( file_exits ( “bir_dosya.txt” ) )
print (“Dosya var!”);
[/php]

Dosya yoksa, program “Dosya var!” yazmadan yoluna devam edecektir.

Dosya mı, dizin mi? is_file() ve is_dir()

Kimi zaman klasörler de tıpkı dosyalar gibi adlandırılabilir. Bir dizinde gördüğümüz ismin gerçekten bir dosyaya ait olup olmadığını bu fonksiyonla sınarız. Sınama doğru, yani isim bir dosyaya ait ise fonksiyon true/doğru, değilse false/yanlış sonuç verir. Örnek:

[php]
if ( is_file ( “bir_dosya.txt” ) )
print (“Bu bir dosyadır!”);
[/php]

İsim bir dosyaya ait değilse program “Bu bir dosyadır!” yazmadan yoluna devam edecektir. Sınamayı ismin bir klasöre ait ait olup olmadığına bakrarak da yaparız. Bu durumda is_dir() fonksiyonunu kullanırız. isim bir dizine aitse fonksiyon true/doğru, değilse false/yanlış sonuç verir. Örnek:

[php]
if ( is_dir ( “/bir_isim” ) )
print (“Bu bir dizindir!”);
[/php]

İsim bir dizine ait değilse program “Bu bir dizindir!” yazmadan yoluna devam edecektir.

Dosya okunabilir mi? is_readable()

Programda kullanmaya karar vermeden önce bir dosyanın erişilebilir ve PHP tarafından okunabilir olup olmadığını sınayan bu fonksiyon, dosya okunabilir ise true/doğru, değilse false/yanlış sonuç verir. Örnek:
[php]
if ( is_readable ( “bir_dosya.txt” ) )
print (“Bu dosya okunabilir!”);
[/php]

Dosya okunabilir değilse program “Bu dosya okunabilir!” yazmadan yoluna devam edecektir. (Unix ortamında varlığını görebildiğimiz her dosyanın okuma izni bulunmayabilir.)

Dosya yazılabilir mi? is_writable()

Programda kullanmaya karar vermeden önce bir dosyanın yazılabilir olup olmadığını sınayan bu fonksiyon, dosya yazılabilir ise true/doğru, değilse false/yanlış sonuç verir. Örnek:
devamını oku…

, , , , , , , , , ,

ücretsiz RSS iconları

Cuma, 31 Eki 2008

Tasarımlarınızda, bloglarınızda kullanabileceğiniz güzel hayvan vektör rss iconları
rss

, , , ,

WordPress flash upload “HTTP Error” hatası

Perşembe, 30 Eki 2008

Media yükleme bölümünden bir dosya yükleyeme çalıştığınızda “HTTP Error” alıyorsanız bu büyük ihtimalle safe_mode nin on olmasından kaynaklanmaktadır.
Server erişiminde root yetkiniz varsa tek bir site için safe_mode off konumuna getirebiliriz
[php]pico /etc/httpd/conf/httpd.conf[/php]
ctrl+w ardından da siteadresi.com diye yazıp enterlayın
[php]

ServerAlias sistembilgisi.com
ServerAdmin webmaster@sistembilgisi.com
DocumentRoot /home/sistembilgisi/public_html
BytesLog domlogs/sistembilgisi-com-bytes_log[/php]
DocumentRoot satırının altına
[php]php_admin_flag safe_mode Off[/php]
yazın, ctrl+x ile çıkın y’ye basın
en sonunda da apache ye reset atın
[php]service httpd restart[/php]

Sunucu bizim değil, biz sadece yetkileri sınırlı bir kullanıcıysak .htaccess dosyasına ekleme yaparak kapatabilirsiniz
[php]php_flag register_globals off[/php]

Hala sorun yaşıyorsanız http://wordpress.org/extend/plugins/image-upload-http-error-fix/ plugini işinizi görebilir

, , , , , ,

Ücretsiz kaliteli script koleksiyonu

Çarşamba, 29 Eki 2008

Birazda opensource nin nimetlerinden faydalanadım
Tiny Tiny RSS
Google Readers benzeri php ve ajax ağırlıklı rss okuyucu script
Tiny Tiny RSS
Detaylar:
http://tt-rss.org/trac/
Demo:
http://tt-rss.org/demo/tt-rss.php
Download:
http://tt-rss.org/download/tt-rss-1.2.17.tar.gz

Mahara
Açık kaynak kodlu community scripti
mahara
Detaylar:
http://www.mahara.org
Demo:
http://demo.mahara.org
Download:
http://eduforge.org/frs/?group_id=176&release_id=99999

Scuttle
Açık kaynak kodlu bookmarking scripti
scuttle
Detaylar:
http://sourceforge.net/projects/scuttle/
Demo
http://tools.splitbrain.org/scuttle/
Download:
http://nchc.dl.sourceforge.net/sourceforge/scuttle/scuttle.0.7.2.zip

Pligg
Açık kaynak kodlu ünlü digg.com clone olarak bilinen bookmarking scripti
pligg
Detaylar:
http://pligg.com/
http://sourceforge.net/projects/pligg/

Demo:
http://www.ms-dn.com/
http://forums.pligg.com/my-pligg-site/
http://www.typeforcash.net/

Download:
http://forums.pligg.com/downloads.php
http://sourceforge.net/project/platformdownload.php?group_id=176676

, , ,

Hangi kelime aranarak geldi?

Çarşamba, 29 Eki 2008

Bildiğiniz gibi arama motorları kullanıcılar için artık internetin olmazsa olmazlarından, tabi biz site sahipleri içinde çok önemli.
Peki arama motorlarından (google, msn, yahoo,…) gelen ziyaretçi hangi aramayı yaparak geldi? Bunu bulmak için ufak bi çalışmam var:
[php]
$referer=$_SERVER[‘HTTP_REFERER’];

if(eregi(“google”,$referer)){
$s=explode(“?”,$referer);
parse_str($s[1]);
$kelime= $q;
}
if(eregi(“yahoo”,$referer)){
$s=explode(“?”,$referer);
parse_str($s[1]);
$kelime= $p;
}
if(eregi(“msn”,$referer)){
$s=explode(“?”,$referer);
parse_str($s[1]);
$kelime= $q;
}
// $kelime arama yaparak geldiği kelime
[/php]
Buna ilaveten hangi sayfaya geldiğini bulmak için
[php]$sayfa=$_SERVER[‘REQUEST_URI’] // geldiği sayfa[/php]

, , , , ,

Joomla Blogger Plazza Teması

Çarşamba, 29 Eki 2008

Joomla ile Blog Sayfanız olsun. Artık Templateplazza bunu Blogger Plazza Teması ile gerçekleştiriyor. Mükemmel bir tarzı ve profesyonel tasarımı ile Joomla ya yep yeni bir arayüz vermektedir. Blog sevenler için bu Tema heyecan demektir.

8 farklı Stil seçenekleri ile, 22 Modül Pozisyonları, 3 farklı Font Boyutu ve mükemmel Web 2.0 Dizaynı artık Templateplazza.com da.
Blogger Plazza

Blogger Plazza Demo
Satın Almak için

,

Mozilla Firefox 3 Temaları

Çarşamba, 29 Eki 2008

NASA Night Launch
NASA Night Launch
https://addons.mozilla.org/en-US/firefox/downloads/file/38981/nasa_night_launch-0.6.20081008-fx.jar

Newgrounds Classic

https://addons.mozilla.org/en-US/firefox/downloads/file/38547/newgrounds_classic-2.027-fx.jar

Ohio State Buckeyes (OSU) Official Theme and Toolbar

https://addons.mozilla.org/en-US/firefox/downloads/file/39141/ohio_state_buckeyes__osu__official_theme_and_toolbar-1.0-fx.xpi

, ,

PHP -> hayat kurtarabilecek fonksiyonlar

Çarşamba, 29 Eki 2008

Tehlikeli bir değişkenden gelen veriyi işlemlere tabi tutmadan önce ilk olarak önce onaylanamanız ve filtrelemeniz gerekmektedir.Zira bunları yapmazsak basit yöntemlerle hacklenmek elde bile değil.
mysql_real_escape_string
Bu fonksiyon gelen veride mysql’e iş yaptırma olasılığı olan simgelerin önüne veri olarak gösterecek olan \ koyuyor.\x00, \n, \r, \, ‘, “ ve \x1a. Bu şekilde kişinin yazdığı yazı doğrudan yazı olarak veritabanına eklenmiş oluyor. mysql_real_escape_string ile sql injection u ortadan kaldırıyoruz
[php]$query=mysql_real_escape_string($_GET[kelime]);
mysql_query(“insert into arama (kelime) values (‘$query’)”);[/php]

htmlentities
Girdilerde olduğu gibi dışarıya sunulan tüm verilerin de (güvenli olarak filtreleyip veritabanına işlediğiniz verilerin dahi) filtrelenmesi gerekmektedir.

Filtrelenmesi gereken en önemli şey probleme yol açabilecek olan HTML tag’leridir. Bunu yapmanın en kolay yolu bütün HTML’i escape işlemine sokan htmlentities() fonksiyon’udur:
[php] [/php]
htmlentities ile muhtemel muhtemel XSS (cross site scripting) saldırılarını kaldırırsınız

Eğer tüm html taglarını silmek istemiyorsanız strip_tags() kullanarak bazı html taglarına izin verebilirsiniz.

, , , , ,