Bisakah kita menggunakan cookie di php?

Dalam tutorial ini Anda akan belajar cara menyimpan sejumlah kecil informasi di dalam browser pengguna itu sendiri menggunakan cookie PHP

Apa itu Cookie

Cookie adalah file teks kecil yang memungkinkan Anda menyimpan sejumlah kecil data (hampir 4KB) di komputer pengguna. Mereka biasanya digunakan untuk melacak informasi seperti nama pengguna yang dapat diambil situs untuk mempersonalisasi halaman saat pengguna mengunjungi situs web di lain waktu.

Tip. Setiap kali browser meminta halaman ke server, semua data dalam cookie secara otomatis dikirim ke server dalam permintaan tersebut

Mengatur Cookie di PHP

Fungsi setcookie() digunakan untuk mengatur cookie di PHP. Pastikan Anda memanggil fungsi setcookie()_ sebelum output apa pun dihasilkan oleh skrip Anda, jika tidak, cookie tidak akan disetel. Sintaks dasar dari fungsi ini dapat diberikan dengan

setcookie(nama, nilai, kedaluwarsa, jalur, domain, aman);

Parameter fungsi setcookie()_ memiliki arti sebagai berikut

ParameterDeskripsinameNama cookie. valueNilai cookie. Jangan simpan informasi sensitif karena nilai ini disimpan di komputer pengguna. expiresTanggal kedaluwarsa dalam format stempel waktu UNIX. Setelah waktu ini cookie tidak dapat diakses. Nilai default adalah 0. 0Tentukan jalur di server tempat cookie akan tersedia. Jika disetel ke _1, cookie akan tersedia di seluruh domain. 2Tentukan domain tempat cookie tersedia untuk e. g www. contoh. com. 3Kolom ini, jika ada, menunjukkan bahwa cookie harus dikirim hanya jika terdapat koneksi HTTPS yang aman

Tip. Jika waktu kedaluwarsa cookie disetel ke 0, atau dihilangkan, cookie akan kedaluwarsa pada akhir sesi i. e. saat browser ditutup

Berikut adalah contoh yang menggunakan fungsi setcookie()_ untuk membuat cookie bernama 5 dan menetapkan nilai nilai 6 ke dalamnya. Ini juga menentukan bahwa cookie akan kedaluwarsa setelah 30 hari (7)

Catatan. Semua argumen kecuali nama bersifat opsional. Anda juga dapat mengganti argumen dengan string kosong ("") untuk melewati argumen itu, namun untuk melewati argumen kedaluwarsa, gunakan nol (0), karena ini adalah bilangan bulat

Peringatan. Jangan simpan data sensitif dalam cookie karena berpotensi dimanipulasi oleh pengguna jahat. Untuk menyimpan data sensitif dengan aman, gunakan sesi sebagai gantinya

Mengakses Nilai Cookie

Variabel superglobal PHP 8 digunakan untuk mengambil nilai cookie. Ini biasanya array asosiatif yang berisi daftar semua nilai cookie yang dikirim oleh browser dalam permintaan saat ini, dikunci dengan nama cookie. Nilai cookie individu dapat diakses menggunakan notasi array standar, misalnya untuk menampilkan cookie nama pengguna yang diatur pada contoh sebelumnya, Anda dapat menggunakan kode berikut

Kode PHP pada contoh di atas menghasilkan keluaran berikut

Merupakan praktik yang baik untuk memeriksa apakah cookie disetel atau tidak sebelum mengakses nilainya. Untuk melakukan ini, Anda dapat menggunakan fungsi PHP ________0______9, seperti ini

Anda dapat menggunakan fungsi 0 seperti 1 untuk melihat struktur array asosiatif 8 ini, seperti Anda dengan array lain

Menghapus Cookie

Anda dapat menghapus cookie dengan memanggil fungsi setcookie() yang sama dengan nama cookie dan nilai apa pun (seperti string kosong), namun kali ini Anda perlu menyetel tanggal kedaluwarsa di masa lalu, seperti yang ditunjukkan pada contoh di bawah ini

Tip. Anda harus melewati jalur, domain, dan argumen lain yang persis sama dengan yang Anda gunakan saat pertama kali membuat cookie untuk memastikan bahwa cookie yang benar telah dihapus

Cookie adalah file kecil dengan ukuran maksimum 4KB yang disimpan server web di komputer klien

Setelah cookie ditetapkan, semua permintaan halaman yang mengikuti mengembalikan nama dan nilai cookie

Cookie hanya dapat dibaca dari domain asalnya. Misalnya, set cookie menggunakan domain www. guru99. com tidak bisa dibaca dari domain career. guru99. com

Sebagian besar situs web di internet menampilkan elemen dari domain lain seperti periklanan. Domain yang menyajikan elemen ini juga dapat menyetel cookie mereka sendiri. Ini dikenal sebagai cookie pihak ketiga

Cookie yang dibuat oleh pengguna hanya dapat dilihat oleh mereka. Pengguna lain tidak dapat melihat nilainya

Sebagian besar browser web memiliki opsi untuk menonaktifkan cookie, cookie pihak ketiga, atau keduanya

Jika demikian, maka PHP merespons dengan meneruskan token cookie di URL

Diagram yang ditunjukkan di bawah mengilustrasikan cara kerja cookie

Di Sini,

1) Pengguna meminta halaman yang menyimpan cookie

2) Server menyetel cookie di komputer pengguna

3) Permintaan halaman lain dari pengguna akan mengembalikan nama dan nilai cookie

Dalam tutorial ini, Anda akan belajar-

Mengapa dan kapan menggunakan Cookie?

  • Http adalah protokol tanpa kewarganegaraan; . Jalur penyimpanan cookie bergantung pada browser. Internet Explorer biasanya menyimpannya di folder Temporary Internet Files
  • Personalisasi pengalaman pengguna – ini dicapai dengan memungkinkan pengguna memilih preferensi mereka. Halaman yang diminta untuk mengikuti dipersonalisasi berdasarkan preferensi yang ditetapkan dalam cookie
  • Melacak halaman yang dikunjungi oleh pengguna

Membuat Cookie

Sekarang mari kita lihat sintaks dasar yang digunakan untuk membuat cookie

<?php setcookie(cookie_name, cookie_value, [expiry_time], [cookie_path], [domain], [secure], [httponly]); ?>

DI SINI,

  • Php“setcookie” adalah fungsi PHP yang digunakan untuk membuat cookie
  • “cookie_name” adalah nama cookie yang akan digunakan server saat mengambil nilainya dari variabel array $_COOKIE. Itu wajib
  • “cookie_value” adalah nilai cookie dan bersifat wajib
  • “[expiry_time]” bersifat opsional; . Waktu diatur menggunakan fungsi PHP time() plus atau minus beberapa detik lebih besar dari 0 i. e. waktu() + 3600 selama 1 jam
  • “[cookie_path]” bersifat opsional; . Garis miring “/” berarti cookie akan tersedia di seluruh domain. Sub direktori membatasi akses cookie ke subdomain
  • “[domain]” bersifat opsional, dapat digunakan untuk menentukan hierarki akses cookie i. e. <?php setcookie("user_name", "Guru99", time()+ 60,'/'); // expires after 60 seconds echo 'the cookie has been set for 60 seconds'; ?>0 berarti seluruh domain sementara <?php setcookie("user_name", "Guru99", time()+ 60,'/'); // expires after 60 seconds echo 'the cookie has been set for 60 seconds'; ?>1 membatasi akses cookie ke <?php setcookie("user_name", "Guru99", time()+ 60,'/'); // expires after 60 seconds echo 'the cookie has been set for 60 seconds'; ?>1 dan sub domainnya. Perhatikan itu mungkin untuk memiliki subdomain dari subdomain asalkan total karakter tidak melebihi 253 karakter
  • “[aman]” adalah opsional, standarnya salah. Ini digunakan untuk menentukan apakah cookie dikirim melalui https jika disetel ke true atau http jika disetel ke false
  • “[Httponly]” adalah opsional. Jika disetel ke true, maka hanya bahasa skrip sisi klien i. e. JavaScript tidak dapat mengaksesnya

Catatan. fungsi cookie set php harus dijalankan sebelum tag pembuka HTML

Sekarang mari kita lihat contoh yang menggunakan cookie

Kami akan membuat program dasar yang memungkinkan kami menyimpan nama pengguna dalam cookie yang kedaluwarsa setelah sepuluh detik

Kode di bawah ini menunjukkan implementasi dari contoh di atas “cookies. php”

<?php setcookie("user_name", "Guru99", time()+ 60,'/'); // expires after 60 seconds echo 'the cookie has been set for 60 seconds'; ?>

Keluaran

the cookie has been set for 60 seconds

Mengambil nilai Cookie

Buat file lain bernama “cookies_read. php” dengan kode berikut

<?php print_r($_COOKIE); //output the contents of the cookie array variable ?>

Keluaran

Array ( [PHPSESSID] => h5onbf7pctbr0t68adugdp2611 [user_name] => Guru99 )

Catatan. $_COOKIE adalah variabel super global bawaan PHP

Ini berisi nama dan nilai dari semua cookie yang ditetapkan

Jumlah nilai yang

Array $_COOKIE dapat berisi tergantung pada ukuran memori yang diatur dalam php. ini

Nilai default adalah 1GB

Menguji aplikasi kami

Anggaplah Anda telah menyimpan file PHP Anda di folder phptus

  • Langkah 1 – buka browser web Anda dan masukkan URL http. //localhost/phptuts/cookies_read. php

Catatan. Hanya array kosong yang ditampilkan

  • Langkah 2 – Browser ke URL http. //localhost/phptuts/cookies. php

  • Langkah 3 – Beralih kembali ke tab pertama lalu klik tombol segarkan

Tunggu sebentar lalu klik tombol segarkan lagi. Hasil apa yang Anda dapatkan?

Hapus Cookie

  • Jika Anda ingin menghancurkan cookie sebelum waktu kedaluwarsanya, maka Anda mengatur waktu kedaluwarsa ke waktu yang telah berlalu.
  • Buat field baru bernama penghancuran cookie. php dengan kode berikut
<?php setcookie("user_name", "Guru99", time() - 360,'/'); ?>
  • Ulangi langkah 1 hingga 3 dari bagian di atas untuk mengambil nilai cookie
  • Buka URL http. //localhost/phptuts/cookie_destroy. php
  • Beralih ke URL http. //localhost/phptuts/cookies_read. php hasil apa yang ditampilkan?

Apa itu Sesi?

  • Sesi adalah variabel global yang disimpan di server
  • Setiap sesi diberi id unik yang digunakan untuk mengambil nilai yang disimpan
  • Setiap kali sesi dibuat, cookie yang berisi id sesi unik disimpan di komputer pengguna dan dikembalikan dengan setiap permintaan ke server. Jika browser klien tidak mendukung cookie, id sesi php unik ditampilkan di URL
  • Sesi memiliki kapasitas untuk menyimpan data yang relatif besar dibandingkan dengan cookie
  • Nilai sesi secara otomatis dihapus saat browser ditutup. Jika Anda ingin menyimpan nilai secara permanen, maka Anda harus menyimpannya di database
  • Sama seperti variabel array $_COOKIE, variabel sesi disimpan dalam variabel array $_SESSION. Sama seperti cookie, sesi harus dimulai sebelum tag HTML apa pun

Mengapa dan kapan menggunakan Sesi?

  • Anda ingin menyimpan informasi penting seperti id pengguna dengan lebih aman di server tempat pengguna jahat tidak dapat marah dengan mereka
  • Anda ingin meneruskan nilai dari satu halaman ke halaman lainnya
  • Anda menginginkan alternatif cookie pada browser yang tidak mendukung cookie
  • Anda ingin menyimpan variabel global dengan cara yang efisien dan lebih aman dibandingkan dengan meneruskannya di URL
  • Anda sedang mengembangkan aplikasi seperti keranjang belanja yang harus menyimpan informasi sementara dengan kapasitas lebih besar dari 4KB

Membuat Sesi

Untuk membuat sesi, pertama-tama Anda harus memanggil fungsi session_start PHP dan kemudian menyimpan nilai Anda dalam variabel array $_SESSION

Misalkan kita ingin mengetahui berapa kali halaman telah dimuat, kita dapat menggunakan sesi untuk melakukannya

Bagaimana cara menambahkan cookie di PHP?

Fungsi setcookie() PHP .
$nama_cookie = "pengguna";
jika(. isset($_COOKIE[$cookie_name])) { echo "Cookie bernama '". $ nama_kuki. "' tidak diatur. "; } kalau tidak {.
.
.

Bisakah PHP membaca cookie js?

cookie php tidak dapat menilai cookie , php hanya dapat menilai cookie yang ditetapkan oleh dokumen. Kue kering. print_r($_COOKIE); .

Bagaimana cara menggunakan cookie di PHP untuk login?

Sistem login dengan cookie menggunakan database PHP dan MYSQL .
Apa itu kue?.
Buat tabel database MYSQL menggunakan kueri. .
Masukkan data ke dalam tabel database untuk login dengan cookie menggunakan PHP. .
Buat file koneksi. .
Buat formulir login HTML termasuk kode PHP. .
Buat skrip PHP untuk sistem login dengan cookie

Di mana cookie disimpan PHP?

Cookie selalu disimpan di klien . Jalur tersebut hanya menetapkan batasan pada halaman jarak jauh mana yang dapat mengakses cookie tersebut. Misalnya, jika Anda menyetel cookie dengan jalur "/foo/" maka hanya halaman di direktori "/foo/" dan subdirektori "/foo/" yang dapat membaca cookie.

Postingan terbaru

LIHAT SEMUA