Home » PHP » Fungsi setrawcookie() Network PHP

Fungsi setrawcookie() Network PHP

by Hanifah Nurbaeti
by Hanifah Nurbaeti

Section Artikel

Definisi dan Penggunaan

Fungsi setrawcookie() digunakan untuk mendefinisikan cookie (tanpa pengkodean URL) untuk dikirim bersama dengan header HTTP lainnya.

Cookie sering digunakan untuk mengidentifikasi pengguna. Cookie adalah file kecil yang disematkan pada server di komputer pengguna. Setiap kali komputer yang sama meminta halaman dengan browser, cookie juga akan dikirim. PHP dapat membuat dan mengambil nilai cookie.

Nama cookie secara otomatis ditetapkan ke variabel dengan nama yang sama. Misalnya, jika cookie dikirim dengan nama “user”, variabel secara otomatis dibuat bernama $user, yang berisi nilai cookie.

Catatan: Fungsi setrawcookie() harus muncul SEBELUM tag <html>.

Catatan: Untuk secara otomatis menyandikan URL nilai cookie saat mengirim dan secara otomatis mendekode saat menerima, gunakan fungsi setcookie() sebagai gantinya.

Syntax

setrawcookie(name, value, expire, path, domain, secure);

Nilai Parameter

ParameterDeskripsi
nameRequired. Menentukan nama cookie
valueOptional. Menentukan nilai cookie
expireOptional. Menentukan kapan cookie kedaluwarsa. Nilai: time () + 86400 * 30, akan menyetel cookie agar kedaluwarsa dalam 30 hari. Jika parameter ini dihilangkan atau disetel ke 0, cookie akan kedaluwarsa di akhir sesi (saat browser ditutup). Default-nya adalah 0
pathOptional. Menentukan jalur server cookie. Jika disetel ke “/”, cookie akan tersedia di seluruh domain. Jika disetel ke “/php/”, cookie hanya akan tersedia di dalam direktori php dan semua sub-direktori php. Nilai defaultnya adalah direktori saat ini tempat cookie sedang disetel
domainOptional. Menentukan nama domain cookie. Untuk membuat cookie tersedia di semua subdomain example.com, setel domain ke “example.com”. Menyetelnya ke www.example.com akan membuat cookie hanya tersedia di subdomain www
secureOptional.Menentukan apakah cookie hanya boleh dikirim melalui koneksi HTTPS yang aman atau tidak. TRUE akan menunjukkan bahwa cookie hanya akan disetel jika ada koneksi aman. Default-nya FALSE

Detail Teknis

Return Value:TRUE jika sukses. FALSE jika gagal
PHP Version:5+

Contoh 1
Contoh berikut membuat cookie dengan PHP. Cookie tersebut bernama “user” dan nilainya adalah “Tony Stark”. Nilai cookie tidak akan dienkode URL. Cookie akan kedaluwarsa setelah 30 hari (86400 * 30). Menggunakan “/”, berarti cookie tersedia di seluruh situs web (jika tidak, pilih direktori yang diinginkan):

<?php
$cookie_name = "user";
$cookie_value = "Tony";
setrawcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/");
// 86400 = 1 day
?>
<html>
<body>

<?php
echo "Cookie sudah di setel.";
?>

</body>
</html>
?>
  // Output : Cookie sudah di setel

Contoh 2
Ambil nilai cookie bernama “user” (menggunakan variabel global $_COOKIE). Gunakan juga fungsi isset() untuk mengetahui apakah cookie itu ada:

<html>
<body>

<?php
$cookie_name = "user";
if(!isset($_COOKIE[$cookie_name])) {
    echo "Nama cookie '" . $cookie_name . "' tidak ada!";
} else {
    echo "Nama cookie: " . $cookie_name . "<br>Nilainya: " . $_COOKIE[$cookie_name];
}
?>

</body>
</html>
  // Output : Nama cookie tidak ada

Contoh 3
Untuk memodifikasi cookie, cukup setel (lagi) cookie menggunakan fungsi setrawcookie():

<?php
$cookie_name = "user";
$cookie_value = "Stark";
setrawcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/");
?>
<html>
<body>

<?php
$cookie_name = "user";
if(!isset($_COOKIE[$cookie_name])) {
    echo "Nama cookie '" . $cookie_name . "' tidak ada!";
} else {
    echo "Nama cookie: " . $cookie_name . "<br>Nilainya: " . $_COOKIE[$cookie_name];
}
?>

</body>
</html>
  // Output : Nama cookie tidak ada

Contoh 4
Untuk menghapus cookie, gunakan fungsi setrawcookie () dengan tanggal kedaluwarsa di masa lalu:

<?php
$cookie_name = "user";
unset($_COOKIE[$cookie_name]);
// nilai kosong dan kedaluwarsa satu jam sebelumnya
$res = setrawcookie($cookie_name, '', time() - 3600);
?>
<html>
<body>

<?php
echo "Cookie 'user' dihapus.";
?>

</body>
</html>
  
  // Output : Cookie 'user' dihapus

Contoh 5
Buat skrip kecil yang memeriksa apakah cookie diaktifkan. Pertama, coba buat cookie percobaan dengan fungsi setrawcookie(), lalu hitung variabel array $_COOKIE:

<?php
setrawcookie("test_cookie", "test", time() + 3600, '/');
?>
<html>
<body>

<?php
if(count($_COOKIE) > 0) {
    echo "Cookies diaktifkan";
} else {
    echo "Cookies dinonaktifkan";
}
?>

</body>
</html>
  
  // Output : Cookies dinonaktifkan

You may also like