Могу ли я добавить на сайт что-нибудь, что заставит браузеры удалить куки и забыть предыдущую версию?
Потому что каждый раз, когда я обновляю сайт, старый сайт остается до тех пор, пока я не удалю куки. И я не думаю, что каждый пользователь будет знать, как удалить куки.
2 ответа
Я удаляю куки, используя этот JS "deleteCookie(sName)":
function miTrim(cadena){
var seguir;
seguir = true;
while ( cadena != "" && seguir) {
if ( cadena.charAt(0)==' ' ) {
cadena = cadena.substring(1, cadena.length );
} else {
if( cadena.charAt(cadena.length-1) == ' ') {
cadena = cadena.substring(0, cadena.length-1 );
} else {
seguir = false;
}
}
}
return cadena;
}
function obtenerCookie( cookieBuscada ){
var todasCookies = document.cookie;
var matrizCookies = todasCookies.split(';');
var unaCookie;
var nombreCookie;
var posicion;
for ( var i= 0; i < matrizCookies.length; i++) {
unaCookie = matrizCookies[i];
posicion = unaCookie.indexOf("=")
if ( posicion > 0) {
nombreCookie = miTrim(unaCookie.substring(0,posicion));
if (nombreCookie == cookieBuscada) {
return unaCookie.substring(posicion +1);
}
}
}
return "";
}
function deleteCookie(sName) {
document.cookie = sName + "=" + obtenerCookie(sName) + "; expires=Fri, 31 Dec 1990 23:59:59 GMT;path=;";
}
Взятые с этой страницы, это приведет к удалению всех файлов cookie для вашего домена:
// unset cookies
if (isset($_SERVER['HTTP_COOKIE'])) {
$cookies = explode(';', $_SERVER['HTTP_COOKIE']);
foreach($cookies as $cookie) {
$parts = explode('=', $cookie);
$name = trim($parts[0]);
setcookie($name, '', time()-1000);
setcookie($name, '', time()-1000, '/');
}
}