Doğru Cevap
-
php manual diyor ki;
"This function sends out several HTTP headers depending on the configuration. See session_cache_limiter() to customize these headers."
http://php.net/manual/en/function.session-start.php
-
shidaiko
özür dilerim. düşüncesizlik yaparak sadece ingilizce açıklamayı gönderdim. Türkçe çeviri;
"Bu fonksiyon bazı HTML başlık bilgilerini gönderir. Bu başlıkları düzenlemek için session_cache_limiter fonksiyonunu inceleyin"
verebileceğim birkaç "acil" çözüm:
1. sayfa kaydedilirken BOM kullanılmamış olmasına dikkat et. yarım günümü yemişliği vardir.
2. php.ini içerisindeki session.save_path değişkeninin geçerli bir dizini gösterdiğinden emin ol. ben bir faydasını göremedim ama belki sen görürsün.
3. session_start fonksiyonundan önce ob_start(); kullanarak başlıkları önbelleğe alabilirsin.12 yıl önce yazılmış -
muhibbi
Çok teşekkürler, sorun BOM ile ilgiliymiş. utf8 with bom seçeneğini seçerek yeniden kodladığımda sorunun çözüldüğünü gördüm.12 yıl önce yazılmış
-
Cevaplar
-
<?php ob_start(); session_start(); $_SESSION['kullanici']='name'; ?>
Şeklinde Deneyebilirmisiniz ama session kullanıcı değerine name değeri yerine kullanıcı adını atamanız gerekir bu şekilde pek parlak bi fikir olduğunu söyleyemeyeceğim. -
Session start etmek için hiç bir veri göndermemeniz gerekir, herhangi bir veri gönderimi header'lerin bittiğini bildirir, fakat session start etmek için header bitmemiş olması gerekir.
Sorun bu nedenden ötürü kaynaklanıyor, headerler senin yakalayamadığın bir nedenden ötürü veri gönderimi yapıyor, ob_start() veriyi göndermeden önce sakladığı için headerler gönderim yapmaz. ve BOM dosya türünde senin görmediğin veriler gidebilir.