CodeBlanks Logo Icon CodeBlanks

setcookie() ile çerez oluşturma

PHP kursu · Orta seviye · Ders 88/115

setcookie() ile tarayıcıda çerez oluşturmayı öğrenirsin.

setcookie() ne yapar?

HTTP durumsuzdur: her istek bir öncekinden bağımsızdır. Çerezler (cookie) tarayıcının istekler arasındaki veriyi hatırlamasını sağlar. PHP, setcookie() ile bir çerez oluşturur.

Çağrıldığında PHP bir Set-Cookie başlığı gönderir. Tarayıcı çerezi saklar ve sonraki isteklerde geri gönderir.

Çıktıdan önce, sayfanın başında çağır; yoksa headers already sent hatası alırsın.

Çerez adı ve değeri

setcookie() en az iki argüman alır: ad ve değer. İkisi de dizgidir (string). Ad çerezi tanımlar; değer tarayıcının sakladığı veridir.

Çerez adları basit tutulur: boşluksuz, özel karakter olmadan. Değer kısa olmalı; tarayıcılar genellikle 4 KB sınırına izin verir.

Örnek: setcookie('dil', 'tr') çerezi dil adıyla tr değeriyle oluşturur.

Uygulama Çerez oluştur ve doğrula

setcookie() çağır: birinci argüman 'username', ikinci 'Ayşe'. Sonra echo ile created yazdır.

Örnek çözümü göster
setcookie('username', 'Ayşe') çağır, sonra echo "created" yaz.
Örnek çözüm:
<?php
// setcookie çağır ve 'created' yazdır
setcookie('username', 'Ayşe');
echo "created\n";

Kendini test et

  1. setcookie() ne zaman çağrılmalı?

    • Sayfanın en sonunda, tüm çıktıdan sonra
    • Çıktıdan önce, sayfanın başında
    • Yalnızca veritabanı bağlantısından sonra
    • Echo ile aynı satırda
    Cevabı göster

    Çıktıdan önce, sayfanın başında — Doğru. setcookie() çıktıdan önce çağrılır; böylece başlık olarak gönderilebilir.

  2. Çerezi yapılandırmadan oluştur

    <?php
    $cfg = ['user' => 'Ayşe'];
    ____
    echo $cfg['user'];
    
    Cevabı göster
    <?php
    $cfg = ['user' => 'Ayşe'];
    setcookie('user', $cfg['user']);
    echo $cfg['user'];
    
  3. setcookie parçalarını eşleştir

    setcookie(ad, değer)
    Çerezi oluşturur
    ad
    Çerezin adı
    değer
    Çerezin değeri
    Tarayıcı
    Çerezi saklar

Orta seviye bölümündeki tüm dersler