如何删除会话Cookie


经过大量研究,我终于找到了实现梦想的方法。我目前正在制作一个托管在m<quot;localhost";(总有一天会上线(,并且在登录后只为记住用户实现了一个Cookie。我需要一种通过按钮为我的用户注销的方法,但问题是我找不到任何适合我的";案例";。我已经尝试过更改cookie的日期,以及他们删除cookie的许多方法,但都没有成功,这可能是会话cookie没有到期日期的问题。Cookie名称总是";PHPSESSID";它将在登录后创建:
<?php
session_start();
require("db.php");
if(isset($_SESSION['code'])){
$code = $_SESSION['code'];
$saftycode = $db_link->real_escape_string($code);
$check = 0;
$db_res = mysqli_query($db_link, "SELECT * FROM user WHERE code = '$saftycode'");
while($row = mysqli_fetch_array($db_res)){
$check = 1;
}
if($check == 1){
header('Location: home.php');
}
}
?>
<html>
...
</html>
<?php
if(isset($_POST['username']) || isset($_POST['password'])){
$username = $_POST['username'];
$password = $_POST['password'];
if($username){
if($password){
require("db.php");
$saftyusername = $db_link->real_escape_string($username);
$saftypassword = $db_link->real_escape_string($password);
$code = null;
$db_res = mysqli_query($db_link, "SELECT * FROM user WHERE username = '$saftyusername' AND password = '$saftypassword'");
while($row = mysqli_fetch_array($db_res)){
$code = $row['code'];
}
if($code){
$_SESSION['code'] = $code;
$_SESSION['ERROR'] = "";
header('Location:home.php');
}else{
$_SESSION['code'] = $code;
$_SESSION['ERROR'] = "";
header('Location:index.php');
}
}else{
$_SESSION['ERROR'] = "";
header('Location: index.php');
}
}else{
$_SESSION['ERROR'] = "";
header('Location: index.php');
}
}

在整个脚本中没有实现sessiondestroy((。实际上,我不知道是否可以删除javascript中的PHPSSID cookie,如果不可能,我可以使用php删除cookie。有没有通过脚本删除PHPSSID Cookie?,我可以一次删除所有cookie吗?这些是我要问你们的问题

Cookie保存在localhost下>Cookie>phpsession-

也许这个问题是重复的,但我需要知道如何注销用户

你说在PHP中没有办法做到这一点是正确的,如果你想删除cookie,你可以做的是将过期时间设置为过去的某个时间:

// Set to 1 second in the past, this will invalidate the cookie.
setcookie("cookie_name", "", time() - 1, "/");

$_COOKIE全局中取消设置cookie索引也是一个好主意,因为它可以在解析页面的其余部分时存在于其中。

unset($_COOKIE["cookie_name"])

要删除cookie,您只需将到期日期设置为之前的日期(例如昨天(

setcookie("sessioncookie", "", time()-3600);

最新更新