PHP ile Cookie(Çerez) İşlemleri

Php ile cookie oluşturmak, cookie kontrolü ve cookie silme işlemleri gerçekleştirebilirsiniz. Güvenli oturum işlemine gerek duymadığınız yada beni hatırla gibi özelliklerde kullanabileceğiniz cookie(çerez) işlemleri yazılımda veritabanında tutmaya değer olmayan bazı değerleri belirli bir süre kullanıcının bilgisayarında saklamanızı sağlar.

Bugün tüm büyük yazılımlar yada şirketler birçok konuda çerezlerden yararlanmaktadır. Sizde projenizde çerezleri kullanabilirsiniz. Öncelikle PHP ile nasıl çerez oluşturabilirsiniz kısaca onu aktaralım. Bir cookie oluşturmak için setcookie() fonksiyonundan yararlanıyoruz. Bu fonksiyon sırasıyla çerez adı, çerez değeri, zaman, yol, domain, güvenlik ve çalışacağı http protokolü değerini alır. Genel yaygın kullanımı ise çerez adı, çerez değeri ve zamandır. Örnek kullanımı;

setcookie('cerezim','Merhaba Dünya', time() + 86400);

Burada cerezim adında Merhaba dünya değerini barındıran ve güncel saatten 86400 saniye yani 24 saat boyunca aktif olacak bir çerez tanımladık. Bu çerezi tarayıcıya depoladık. İstediğimiz zaman bu çerezin var olup olmadığını kontrol edip, içindeki değeri değiştirebiliriz. O halde kontrol edelim proje dosyamızda cerezim isimli bir çerez var mı yok mu ?

if(isset($_COOKIE['cerezim']):
 echo $_COOKIE['cerezim'];
else:
 echo 'Böyle bir Çerez Tanımlanmamıştır.';
endif;

Yukarıdaki kod eğer cerezim isimli bir çerez tanımlıysa o çerezin değerini ekrana yazdıracaktır. Eğer tanımlı değilse Böyle bir çerez tanımlanmamıştır yazdıracaktır. Peki tanımladığımız çerezleri nasıl sileriz yada yeniden tanımlarız ? Aynı çerezi birden çok oluşturabilir miyiz ?

Bu soruların cevaplarınıda verelim isterseniz. En son sorudan başlayarak evet, aynı çerezi birden çok oluşturabilirsiniz. Bu da kontrol esnasında bilgi karmaşası oluşturabilir. Şimdi aklımıza şu geldi biz aynı isimli bir çerez daha oluştursak ve değerini farklı tutsak öncekinin üzerine yazılır mı ? hayır yazılmaz. Bu nedenle mantığı iyice kavrayabilmeniz için ilk olarak çerez silme olayını göstereceğim.

setcookie("cerezim", null, -1);

Bu işlem ile cerezim isimli çerezin değerini null yaparak -1 saniye geriye gönderdik ve çerezimizi otomatik olarak silmiş olduk. Ayrıca olası silinmeme durumunda unset() fonksiyonu ile birlikte kullanabilirsiniz.

unset($_COOKIE['oturumid']);
setcookie("cerezim", null, -1);

Boş değerlerde unset() fonksiyonu hata vereblir o nedele başına bir @ koyarsanız hataları görmezden gelecektir. Şimdi aynı çerezi yeniden oluşturalım ve şartlayarak bunu yapalım.

if($_COOKIE['cerezim']):
	@unset($_COOKIE['cerezim']);
	setcookie('cerezim', null, -1);
setcookie('cerezim','Yeni Değer', time() + 86400);
else:
setcookie('cerezim','Yeni Değer', time() + 86400);
   endif;

cerezim isimli çerezi önce kontrol ettirdik, eğer varsa tanımlı çerez bu çerezi sildirdik ve yeni değer atadık. Yoksa direk yeni değerimizi atadık. Php dilinde çerez oluşturma, çerezleri takip etme ve yeniden oluşturup silme işlemleri bu şekilde gerçekleşmektedir.

Bu arada ne zaman bir PHP içeriği eklesem kapak fotoğrafı için Google resimlere girdiğimde o sevimli fili görünce bir kitap ismi geliyor akılma "Şu hortumlu Dünyada Fil yalnızca bir Hayvandır."


PHP Kodlama kategorisinde 04 Haziran 2020 - 14:16:06 tarihinde yayınlanmıştır. 236 Gösterim

Kazım USLU Hakkında

PHP,MYSQL,CSS,JS,JQUERY yazılım dillerine hakim, Şu sıralar PYHTON ve LINUX üzerine araştırma geliştirme yapan, sunucu optimizasyonu ile uğraşan dijital kod yazarıyım...

Yorumlar (0)

Bu yazıya henüz bir yorum yapılmamış, hemen bir tane yapmak ister misin ?

Yorum Yapın