Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menetapkan kuki melalui Ajax dan PHP

Bagaimana untuk menetapkan kuki melalui Ajax dan PHP

PHPz
PHPzasal
2023-04-25 15:12:151031semak imbas

Dalam pembangunan tapak web, kadangkala kita perlu menggunakan kuki untuk menyimpan status log masuk pengguna, tetapan diperibadikan dan maklumat lain, dan Ajax dan PHP ialah teknologi yang biasa digunakan dalam pembangunan bahagian hadapan dan belakang Artikel ini akan memperkenalkan cara untuk menetapkan melalui Ajax dan Kuki PHP.

1. Apakah itu Kuki

Kuki ialah fail teks kecil yang disimpan pada komputer klien oleh pelayan tapak web. Ia boleh menyimpan maklumat sesi, tetapan diperibadikan dan data lain di tapak web. Apabila pengguna melawati berbilang halaman pada tapak web yang sama, tapak web tersebut boleh mendapatkan rekod operasi pengguna sebelumnya dan tetapan diperibadikan dengan membaca kuki.

2. Menetapkan dan mendapatkan kuki

Untuk menetapkan kuki, anda boleh menggunakan fungsi setcookie() dalam PHP Fungsi ini perlu memasukkan sekurang-kurangnya tiga parameter: nama kuki, nilai kuki dan masa tamat tempoh. Berikut ialah contoh menetapkan kuki:

setcookie('username', 'abc', time()+3600);   // 设置一个名称为“username”,值为“abc”,过期时间为1小时后的Cookie

Untuk mendapatkan kuki, anda boleh menggunakan pembolehubah global $_COOKIE dalam PHP, yang mengandungi semua maklumat kuki yang dibawa oleh permintaan HTTP semasa. Berikut ialah contoh mendapatkan kuki:

echo $_COOKIE['username'];   // 输出Cookie“username”的值

3 Menetapkan Kuki melalui Ajax

Menggunakan Ajax untuk menetapkan Kuki pada halaman hadapan boleh menyimpan data ke Kuki tanpa memuat semula halaman. tengah. Berikut ialah contoh penggunaan jQuery untuk menetapkan Kuki pada klien:

$.ajax({
    type: "POST",
    url: "set_cookie.php",    // 后台处理设置Cookie的PHP文件
    data: {username: "abc"},  // 要保存到Cookie中的数据
    success: function() {     // 成功回调函数
        alert("设置Cookie成功!");
    }
});

Di latar belakang fail PHP set_cookie.php, anda boleh mendapatkan data yang diserahkan oleh pelanggan melalui Ajax melalui $_POST, dan gunakan setcookie( ) fungsi untuk menetapkan Cookie:

if(isset($_POST['username'])) {
    setcookie('username', $_POST['username'], time()+3600);
}

Dalam contoh di atas, kami menghantar data "abc" ke fail set_cookie.php latar belakang melalui Ajax, simpan ke Cookie dalam PHP, dan kembalikan petunjuk kejayaan. Dengan cara ini, kami boleh menetapkan kuki tanpa memuat semula halaman.

4. Mendapatkan Kuki melalui Ajax

Kami juga boleh mendapatkan data daripada Kuki di sisi pelanggan melalui Ajax, yang lebih biasa di beberapa halaman yang memerlukan pengguna log masuk. Berikut ialah contoh penggunaan jQuery untuk mendapatkan kuki pada bahagian pelanggan:

$.ajax({
    type: "GET",
    url: "get_cookie.php",    // 后台处理获取Cookie的PHP文件
    success: function(data) { // 成功回调函数
        alert("Cookie值为:" + data);
    }
});

Dalam fail PHP latar belakang get_cookie.php, anda boleh mendapatkan kuki yang dibawa oleh pelanggan melalui $_COOKIE dan mengembalikannya kepada Terminal pelanggan:

if(isset($_COOKIE['username'])) {
    echo $_COOKIE['username'];
}

Dalam contoh di atas, kami menghantar permintaan GET ke fail get_cookie.php di latar belakang melalui Ajax, dapatkan nilai "nama pengguna" Kuki dan paparkan outputnya dalam fungsi panggil balik kejayaan.

5. Nota

Perlu diambil perhatian bahawa apabila menggunakan Ajax untuk menetapkan atau membaca kuki, pastikan nama domain dan laluan kuki adalah betul, jika tidak kuki itu mungkin tidak dibaca atau ditetapkan. Selain itu, membawa kuki dalam setiap permintaan boleh meningkatkan saiz data tindak balas dan beban pada pelayan, jadi keperluan keselamatan dan prestasi harus ditimbang semasa mengendalikan kuki.

Ringkasan:

Melalui pengenalan artikel ini, kami telah mempelajari cara menetapkan dan mendapatkan kuki melalui Ajax dan PHP. Menggunakan Ajax boleh menetapkan dan membaca kuki tanpa memuat semula halaman, memberikan pengguna pengalaman yang lebih baik. Semoga artikel ini bermanfaat kepada semua orang!

Atas ialah kandungan terperinci Bagaimana untuk menetapkan kuki melalui Ajax dan PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:Apakah maksud bahasa c dan php?Artikel seterusnya:Apakah maksud bahasa c dan php?