Aynı isimde birden fazla kurabiye

3 Cevap php

I just figured out that I have a problem in IE while working with one of my pages. I set cookie with:

setcookie('page', '12345', '2000000', '/');

And if I login I reset the cookie calling that function again. In firefox everything works fine cause the old cookie is deleted but in IE both cookies stay? How can this happen? Isn't that illegal?

şimdi ben bu sabit:

setcookie('page', '', time() - 3600, '/');
setcookie('page', '1234', '2000000', '/');

Bu ok bir çözüm veya bir şey eksik?

3 Cevap

According to the documentation, bir çerezi kaldırmak için doğru bir yoldur.

Sadece bir önsezi, ama değer bir zaman damgası için oldukça düşük sona gibi görünüyor, bu tanımlama muhtemelen (seans sonuna yani) hemen sona erer. Belki böyle bir şey birden fazla çerez vererek IE kafa karıştırıcı?

Muhtemelen Örneğin, bitiminden ayarlamak yerine time() kullanmanız gerekir:

setcookie('page', '12345', time() + 3600, '/');

Btw, çözüm bana güzel görünüyor.

Ben benzer bir sorun yaşıyorum.

I session_start () yükler her zaman kullanarak, benim sayfa birden çok kez yeniden. JavaScript PHP kullanmak çerezleri ayarlar. Istemci ınternet Explorer, $ _ENV ["HTTP_COOKIE"] her çerez için birden girdileri içeren olduğunda. Bu Firefox ile olmaz.

Bir etki alanı adında xyz de kod çalıştırırken gibi yakın şimdiye kadar rakam gibi, Internet Explorer yz için çerezleri tarafından takip xyz için çerezleri gönderir PHP ardından $ _ENV ["HTTP_COOKIE"] içine çerezleri iki seti koyar.

Belki de bu bir PHP hata olarak kabul, belki olabilir. IMHO, bu bir Internet Explorer hata olduğunu. Ben sizin sorununuzu çözmeye yardımcı olabilir umuduyla burada yayınlayacağız.