Mehmetcan Yegen tarafından yazılmış tüm yazılar

Php’de file_exists() fonksiyonu kullanımı

Php’de bir dosyanın var olup olmadığını kontrol etmek için file_exists() fonksiyonu kullanılır. Bu ne işimize yarayacak ki diyecek olan varsa eğer, şöyle örnek verebilirim. Bir sistem tasarlıyorsunuz ve gelen bilgiye göre bir sayfa açacaksınız, sileceksiniz vs… Bu gelen bilgiyi işleyebilmek için önce dosya var mı diye kontrol etmeniz gerekebilir, çünkü dosya var olmadan siz o dosyayı açmaya çalıştığınızda ekrana görünüşü çirkin bir uyarı gelecektir. Bu yüzden ilk önce kontrol edersiniz, eğer varsa yükler, yoksa böyle bir dosya yok vs diye hata verirsiniz.

Fonksiyon çalıştırıldığında size return olarak boolean değeri gönderir, eğer dosya varsa true, yoksa false değeri alırsınız.


$dosyaismi = "iletisim.php";

if(file_exists($dosyaismi)){

echo $dosyaismi . 'var ve yüklendi.';

include $dosyaismi;

} else {

echo $dosyaismi . 'malesef bulunamadı :/ ';

}

 

Php ile fonksiyon oluşturma

php fonksiyonPhp fonksiyon oluşturma

Php’de fonksiyonlar belli başlı işleri yapmak için kullanılan programcıklardır diyebiliriz. Php ile gelen çok fazla sayıda hazır fonksiyon bulunmaktadır. Fakat php programcıları kendilerine özel fonksiyonlar da tanımlayabilmektedirler. Fonksiyon tanımlamaya bir örnek vereceğim


<?php

function topla($sayi1, $sayi2){

$sonuc = $sayi1 + $sayi2;

return $sonuc;

}

?>

yukarıdaki örnekte topla isminde bir fonksiyon oluşturduk, giriş değerleri olarak sayi1 ve sayi2 değişkenlerini gösterdik, daha sonradan bu değişkenleri toplama operatörü ile toplayıp çıkan sonucu sonuc isminde bir değişkene aktardık.

Son olarak da sonuc isimli değişkenin değerini return yaptık.Tahmin edebileceğiniz üzere bir fonksiyon içerisinde return yapmak, return yapılan değeri fonksiyonun kendisine sanki o fonksiyon da bir değişkenmiş gibi değer atamaktır. Yani bir takım işlemler yapıyorsunuz ve bu işlemler arasından istediğiniz bir değeri return yapıyorsunuz, bu değer fonksiyonun kendisine yerleşiyor, daha sonradan bu değeri direk fonksiyon adıyla kullanabiliyorsunuz.

Bu sefer de fonksiyonumuzu program içerisinde nasıl kullanılırız buna bir örnek verelim;


<?php

topla(1+2);

?>

Bu örnekte fonksiyonumuz 1 ve 2 nin toplama işlemlerini yapacaktır fakat ekrana birşey yazdırmayacaktır, sonuç değerini return ettiğimiz halde bunu echo veya print ile ekrana yazdırmak zorundayız…


<?php

echo topla(1+2);

?>

fonksiyon çalıştırıldığında ekrana 3 yazdıracaktır.

Bir de dizi şeklinde değer döndürmeye örnek vereyim


<?php

function topla($sayi1, $sayi2){
$sonuc[1] = $sayi1 + $sayi2;
$sonuc[2] = 25;
return $sonuc;
}

print_r(topla(1,2));

?>

Bu örnekte ise sonuc isimli değişkene 1 ve 2 numaralı dizi elemanı olarak bazı değerler tanımladık ve return edilmiş bu dizi değerini print_r fonksiyonu ile ekrana yazdırdık

Linux sunucuda htaccess modrewrite özelliğini etkinleştirmek

linux htaccess modrewrite

htaccess modrewrite nasıl etkinleştirilir?

Linux sunucularda standart olarak htaccess modrewrite kullanımı pasif gelebilir.

Bu yüzden host ettiğiniz sitelerde htaccess mod rewrite özelliğini kullanabilmek için aşağıdaki komutu terminale yazmalısınız

Ubuntu kullandığınızı varsayarak

sudo a2enmod rewrite

yazıyorsunuz. Daha sonradan apache yi yeniden başlatmayı unutmayın…

service apache2 restart

Php ile güvenlik resmi (captcha) oluşturma

captchaPhp ile kendi captcha kodlarınızı yazın

Geçenlerde bir arkadaşım için captcha lazım olduğunda aramıştım, fakat internette bulduğum örnekleri bir türlü çalıştıramamıştım.

Ben de oturdum yazdım, basit ama kullanışlı birşey ortaya çıktı. 2 adet dosyamız var birincisi resim.php diğeri ise iletisim.php bu dosyaların kodlarını veriyorum

resim.php


<?php
session_start();
$image = imagecreate(50,20);
$background = imagecolorallocate($image,0,0,0);
$foreground = imagecolorallocate($image,255,255,255);
imagestring($image,5,5,1,$_SESSION["resimguvenlik"],$foreground);
header("Content-type: image/jpeg"); imagejpeg($image);
?>

iletisim.php

<?php session_start();
if(!isset($_POST['guvenlikkodu'])){
$random = rand(1000,9999);
$_SESSION["resimguvenlik"] = $random;
}
if($guvenlikkodu!=$_SESSION["resimguvenlik"]){
//Burada güvenlik kodunun yanlış olduğuna dair uyarı veriyoruz
}else{
///Burada resim kodu doğru ise yapılacakları sıralıyoruz

bu da form ile ilgili html kodlarına bir örnek


<img alt="" src="resim.php" />
<form action="iletisim.php" method="post"><input type="text" name="guvenlikkodu" />
<input type="submit" value="Gönder" />
</form>
<pre>

Peki burada ne yaptık? ilk önce isset kullanarak daha önceden o sayfaya form post bilgisinin gelip gelmediğini kontrol ettik, bunu yapmazsak bir işlem için iki kod üretecektir. birincisi sayfa ilk yüklenirken, ikincisi butona basıldığı anda tekrar.
Ürettiğimiz bu kodu bir session(oturum) bilgisine aktardık, bunu yapıyoruz çünkü sayfa yeniden yüklendiğinde bilgiyi bir yerde tutmamız lazım. Daha sonradan sessiona kaydettiğimiz bilgi ile formdan gelen bilgiyi karşılaştırdık, eğer doğruysa şunları şunları yap dedik, vs…
Tabi ki bu kodların en basite indirgenmiş hali, mesala karakterler biraz daha zor okunsun, botlar kolay anlayamasın diye araya bazı simgeler karakterler sıkıştırabilirsiniz

Php ile captcha oluşturmayı anlatmaya çalıştım, umarım işinize yarar…