Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Czy session_start() wysyla naglowki
Forum PHP.pl > Forum > PHP
squid
Jak w temacie, wydaje mi sie ze tak ale pewnosci nie mam, chce dac mozliwosc sciagania plikow tylko osoba zalogowanym wiec zebys prawdzic czy ktos jest zalogowany uzywam f-cji z tematu i sprawdzam zmienne sesyjen i potem tworze naglowek dla zciaganego pliku ale nie dziala to, stad wydaje mi esie ze session_start() wysyla naglowki, mam racje?
xamil
Tak. session_start() wysyła nagłówki. Wysyła chociażby cookie z id sesji. Czy funkcja wysyła (czy też nie) nagłówki można łatwo sprawdzić czyniąc np.

  1. <?php
  2.  
  3. print(&#092;"Czy funkcja wysyła nagłówki?\");
  4.  
  5. ?>


Jeśli wysyła to wyskoczy błąd że nagłówki zostały już wysłane bo wysłaliśmy wcześniej tekst. Oczywiście musi być włączone w php raportowanie błędów.
crash
  1. <?php
  2. ?>

Wykonaj ten prosty test i sam sobie odpowiedz... Oczywiście jeśli używasz Apache... Jeśli nie, no cóż... Nie powiem tongue.gif
squid
Cytat(xamil @ 2005-01-12 22:10:46)
Tak. session_start() wysyła nagłówki. Wysyła chociażby cookie z id sesji. Czy funkcja wysyła (czy też nie) nagłówki można łatwo sprawdzić czyniąc np.

  1. <?php
  2.  
  3. print(&#092;"Czy funkcja wysyła nagłówki?\");
  4.  
  5. ?>


Jeśli wysyła to wyskoczy błąd że nagłówki zostały już wysłane bo wysłaliśmy wcześniej tekst. Oczywiście musi być włączone w php raportowanie błędów.

sek w tym ze juz cos podobnego zrobilem przy pomocy echo i bledow nie ma! zmienne sesji tez zawieraja poprawne wartosci, nie rezkazuje sessID przez GET
Ive
bo moze musisz wstawic do kodu:
error_reporting" title="Zobacz w manualu PHP" target="_manual(E_ALL);
xamil
Cytat(squid @ 2005-01-12 21:14:13)
Oczywiście musi być włączone w php raportowanie błędów.

Czytanie ze zrozumieniem się kłania;) A jak nie to musisz uwierzyć na słowo, że odpowiedź na Twoje pytanie to "TAK";)
squid
w pliku konfiguracyjnym mam E_ALL wlaczone, wyskakuja mi Notice'y ale nie ma bledy typu naglowki zostaly juz wyslane
ale fakt wysyla: [Set-Cookie] => PHPSESSID=f4a6faf646cf9999a3d8f432d047af6c
tylko czemu nie pojawia sie blad?
jedyne co mi sie nasowa do buforowanie wyjscia bo tylko wtedy moze nie byc bledow ale w takim wypadku jesli rzeczywiscie ustawilem kiedys buforowanie wyjscia to po session_start(); moge sobie tez spreparowac inne naglowki tak?
xamil
Jesteś pewien że ustawiłeś a nie miałeś starego jeszcze cookie? Jak tak to ja nie wiem.... u mnie ładnie się Warning'i pokazująwinksmiley.jpg Chętnie się dowiem jakie jest rozwiązanie;)
squid
to moj plik konf.:
Cytat
;   - Show all errors
;
error_reporting  =  E_ALL

jesli chodzi o cookie do zalogowalem sie jako inny user i jest tak samo czyli bez jakiegolwiek bledu

ale wszstko jasne znalazlem to:
Cytat
output_buffering = 4096

musialem to kiedys ustawic, przy takim rozwiazaniu nie powinno byc bledo jednakze kiedy wysylam dodatkowe naglowki nie dziala to prawidlowo, np gdy chcem wyslac plik zip albo mp3 lub pdf do przegladarki trafia mnostwo krzaczkow i nic wiecej
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.