Aynı PHP dosyasında oturum ve çerez?

2 Cevap php

Ben aynı PHP dosyası oturum ve çerez set değil mi?

Ben başlık zaten gönderilir olduğunu söyleyip oturumu kurdum sonra çerez ayarlarsanız ben bir hata mesajı alıyorum.

Ben cookie sonra oturumu ayarlarsanız ben bir şey olsun ama iyi çalışmak değil gibi görünüyor.

2 Cevap

short answer evet - Eğer aynı PHP dosyası oturumu ve tanımlama verilerini ayarlayabilirsiniz.

The longer answer:

  • Cookie veri sayfasının başlığında gönderilir.
  • Eğer müşteriye başlıklarını gönderdikten sonra çerezleri ayarlayabilirsiniz olamaz.
  • Eğer istemci (: tarayıcı yani) herhangi bir veri çıktısı başlamak gibi Başlıkları kısa sürede gönderilecektir.

Bu durumda, başlık gönderilen ve / veya OTURUM veri ayarlarken aynı yerde istemci veri çıkışının başlamış olması muhtemeldir.

the PHP manual: Cookies daha fazla bilgi için bkz. Özellikle bir alıntı:

"Çerezler HTTP başlığının bir parçası, bu nedenle herhangi bir çıktı tarayıcıya gönderilmeden önce setcookie () çağrılmalıdır. Bu başlık aynı sınırlama () sahiptir. Size kadar komut çıkışını geciktirmek için çıktı tamponlama işlevlerini kullanabilirsiniz çerezleri ayarlamak veya herhangi bir başlık göndermek için olsun ya da olmasın karar verdik. "

If you need further help - Sen ile ilgili sorunlar yaşıyorsanız sizin örnek kod / sayfası yerleştirmeyi deneyin.

Hep aynı sayfada çerezleri oturumu ayarlayabilirsiniz. Her zaman bir oturum başlatmak veya oluşturmadan önce bir çerez ayarlamak gerekir, ancak (yani session_start ()) bir oturum başlatma veya bir cookie (yani çıkmadan önce HTML veya dize bir blok üzerinden yankılanıyor çünkü alıyorsanız herhangi output.The hata mesajı setcookie ()).

For a more detailed explanation, see 'description' sections in: http://php.net/manual/en/function.setcookie.php

and 'Notes' section in: http://php.net/manual/en/function.session-start.php