require vs require_once

Herkese merhaba,
geçen gün bir arkadaşım hangi durumlarda php dosyasını include ettiğimi sordu. Gerekli açıklamaları yaptıktan sonra neden bunu kendi blogumda yayınlamıyorum diye kendi kendime düşündüm
Belki sizde bilmiyorsunuzdur düşüncesiyle açıklamaya başlıyayım.
Aslında isminden de anlaşılacağı üzere require diye bir php dosyayı eklediğimizde daha önce sayfada üst yerlerde aynı dosyayı çağırdığımızda genede çalıştıracaktır. Ama require_once ile php dosyayı eklediğimizde eğer sayfanın yukarısında aynı dosyayı bir kez daha çalıştırmaya kalktığımızda bu sefer çalıştırmayacaktır.
Bmp uzantılı resim dosyasını jpg veya png olarak kaydetmek

Uzun zaman önce bu sorunla bende karşılaşmıştım ve yabancı kaynak olsun, türkçe kaynak olsun adam akıllı bilgi bulamamıştım.
Şimdi diyceksiniz kardeşim git uzantısını “jpg” olarak değiştir olsun bitsin.
Malesef bu şekilde davranmak, resim üzerinde oynamak istediğimizde hatalarla karşılaşmamız anlamına gelmektedir. Örnek olarak Bmp uzantılı resimler sıkıştırlmadan oluşturulduğu için jpg olarak kaydedilerek dosyanın daha az yer kaplamasını sağlayabiliriz. Bunun için bmp uzantılı resmin image nesnesini elde etmemiz gerekmekte. Php’de bmp için “imagecreatefromgif” gibi hazır fonksiyon bulunmamakta. Bunun için kendi fonksiyonumuzu yazmamız gerekmekte.
Php Resim Boyutlandırmasında Memory Limit sorunu

Herkese Merhaba,
Yüksek çözünürlüklü (HD) resimi yeniden boyutlandırmak istediğimde aşağıdaki hatayı aldım;
Fatal error: Allowed memory size of 8988608 bytes exhausted (tried to allocate 43 bytes) in deneme.php
Sizde bu hatadan alıyorsanız yada resim üzerinde değişiklik yapacaksanız resime işlem yapmadan önce bellek kullanımını artırmanız gerekecek.
Devamı
PHP fatal libpng error: zlib error

jpeg veya gif uzantılı resim dosyasını pngye çevirirken aşağıdaki hatayı aldım;
imagepng() [function.imagepng]: gd-png: fatal libpng error: zlib error
Bu hata aşmak aslında basit. imageJpeg fonksiyonunda resim kalitesi 0 ila 100 arasında bir değer vermemiz gerekmekte. Fakat imagePng fonksiyonunda 0 ila 9 arasında bir değer vermek gerekmekte. Ben 100 değerini verdiğim için imagePng fonksiyonu bunu kabul etmediğinden dolayı bu hatayı vermekteydi. Resim kalitesini 0 ila 9 arasında verdiğimizde sorunumuz çözülmüş olacak
Php mail() fonksiyonunda maillerin spam olarak gitmesini engellemek

Uzun bir aradan sonra karşılaştığım bir sorun hakkında yazı yazma ihtiyacı hissettim.
Birkaç gündür yeni yaptığım bir sitenin sunucu değişikliğinden dolayı baya bir sorun çıkardı. Bunlardan bir taneside phpmailer kütüphanesini çalıştırmasında sorunlar çıkarmasıydı. Malum herşey hazır
Bende bunun üzerine php’nin mail fonksiyonunu kullanmakta buldum. Tabiki onda da bazı sorunlar çıkardı.
Bunlardan birincisi mail gittiği zaman gmail,hotmail,yahoo vs. de direk spam (önemsiz postaya) düşmesiydi. Biraz araştırma vs yaptıktan sonra bunun 2 türlü sorundan kaynaklandığını buldum.
MySql’de büyük boyutlu sql dosyasını yüklemek
Php geliştiricisi olarak sürekli olarak veritabanı yedeğini alıp tekrar yüklüyorum. Bir çoğunuz gibi veritabanı işlemlerini Phpmyadminden hallediyorum. Tabi bazı durumlarda phpmyadmin yetersiz kalmakta. Bunların başında eğerki yüksek boyutlu veritabanını import ederken maxfilesize hatası alırsınız. Bu sorunu çözmek için mysql command’ da aşağıdaki işlemleri takip etmeniz;
Php’de Url Parametrelerini Şifrelemek
Php’de kod yazarken bazen url kısmında gönderdiğimiz parametreleri şifreleme gereğini duymaktayız. Yazmış olduğum class sayesinde basit bir algoritma yaparak parametreleri şifreleyerek gönderebilirsiniz.
Classın çalışma mantığı basit. Şifreleme yapabilmemiz için bir tane anahtar kelime giriyoruz. Bu şekilde o kelime yardımı ile karakterleri şifreleyebiliyoruz.
Url ‘yi şifrelemek istediğinizde “encryptUrl()” fonksiyonunu çağırıyoruz. Bize şifrelenmiş bilgiyi döndürmekte.
Şifrelenmiş bilgiyi ise “decryptUrl()” fonksiyonunu çağırarak bizim için okunabilir hale getirmekte.
Php’de, transparent png’li resmi beyaz arkaplanlı jpeg resime dönüştürmek

Png uzantılı resimi jpege dönüştürmeye çalıştığımızdabir takım sıkıntılarla karşılaşmaktayız. Mesela eğer resim dosyasının uzantsını png’den jpege dönüştürüp sonra crop benzeri işleme tabi tuttuğumuzda resimden arta kalan siyah bir görüntü olmakta
Bu durumla karşılaşmamak için resimimizi aşağıdaki gibi kod bazlı işleme tutmak lazım.
Php’de eval() fonksiyonun kullanımı

Yeni bir site üzerinde çalışırken bazı sayfaların içerisine gömdüğüm php kodlarını çalıştırmam gerekti. Bunun için sevgili kardeşim Mustafa Yakut‘a ilgili soruyu yönelttim. Bana daha önce pek ismini duymadığım eval() fonksiyonu ile ilgili bir kod parçacığı gönderdi. Birazcık araştırma yaptıktan sonra tam benim istediğim fonksiyon olduğunu farkettim. Siteye entegre ettikten sonra sizlerde paylaşmak istedim.
Fonksiyon sayesinde bir yazı dizisinin içine gömdüğüm php kodlarını okumasını sağladım. Aşağıda çok basit bir örnek ile açıklamaya çalışacağım.
Php’de dosya linkini vermeden download linki oluşturmak
Diyelimki bir dosya download ettirmek için linkimiz var ama biz kullanıcının bu linki başka bi yerlerde kullanmamasını istemiyoruz. Çünkü link adresini verip başka sitelerde bu linki yayabilirler. Bunu engellemek için bir tane download.php dosyası oluşturmamız yeterli:
Etiketler
Son Yazılar
- require vs require_once
- IFrame ‘in yüksekliğini içeriğe göre ayarlamak
- Bmp uzantılı resim dosyasını jpg veya png olarak kaydetmek
- Php Resim Boyutlandırmasında Memory Limit sorunu
- PHP fatal libpng error: zlib error
Son Yorumlar
- Php ile MySql ‘den Xml oluşturmak için Enes Pekkaya
- Php ile MySql ‘den Xml oluşturmak için ercan akar
- IFrame ‘in yüksekliğini içeriğe göre ayarlamak için Enes Pekkaya
- IFrame ‘in yüksekliğini içeriğe göre ayarlamak için Erhan Saydam
- Php’de excel dosyası oluşturmak için Enes Pekkaya
Haftanın Özlü Sözü
Bağlantılar
- Googlepagerankseo.org
- Innova Bilişim Çözümleri
- Onur Değerli
- Pleksus Bilişim Teknolojileri
- Sinan Gül
- Taner Günal
Arşivler
- Şubat 2012
- Ocak 2012
- Aralık 2011
- Kasım 2011
- Ekim 2011
- Eylül 2011
- Temmuz 2011
- Haziran 2011
- Mayıs 2011
- Mart 2011
- Ocak 2011
- Aralık 2010
- Kasım 2010
- Ekim 2010
- Eylül 2010
- Ağustos 2010
- Temmuz 2010
- Haziran 2010
- Mayıs 2010
- Nisan 2010
- Mart 2010
- Şubat 2010
- Ocak 2010
- Haziran 2009
- Mayıs 2009
- Nisan 2009
- Mart 2009

