![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 1 Dołączył: 23.10.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam
czy ma ktoś pomysł dlaczego nie działa funkcja session_regenerate_id();? Skrypt ma zalogować użytkownika w bezpieczny sposób. W związku z tym podane hasło i login zostają porównane z tymi w bazie danych i o ile tam występują to następnym krokiem jest właśnie użycie session_regenerate_id();, tak, żeby można było wygenerować nowe ID Sesji, które będzie zapisane do bazy. Jednak zamiast Id sesji dostaję następujący wyjątek: Warning: session_regenerate_id() [function.session-regenerate-id]: Cannot regenerate session id - headers already sent po czym wskazana zostaje linijka kodu, w której użyta zostałą fukncja Regenerate Id. ID Sesji nie zmienia się. (Dodam, że źródła w sieci, do których udało mi się dotrzeć w większości wskazują na puste linijki przed i po skrypcie, które zostały przeze mnie pieczołowicie usunięte). Mam nadzieję, że ktoś będzie mógł pomóc.. |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 100 Pomógł: 11 Dołączył: 20.05.2007 Skąd: z fotela :) Ostrzeżenie: (0%) ![]() ![]() |
hi
sprawa dość prosta i rozbija się o to stwierdzenie: headers already sent, co oznacza że skrypt wysłał już do przeglądarki użytkownika jakieś informacje. poszukaj czy przed sprawdzeniem hasła loginu nie wyrzucasz coś poprzez echo w skrypcie. u mnie najczęściej było własnie to problemem. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 372 Pomógł: 2 Dołączył: 10.05.2009 Ostrzeżenie: (0%) ![]() ![]() |
idzie to ominąć ustawiając na początku skryptu:
a na końcu ale nie zalecane to jest (sam miałem ostatnio taki problem). Musisz patrzeć czy przed poleceniem nie ma funkcji print, echo, pustych wierszy na zewnątrz znaczników php, bądź czy nie ma dołączonych plików, które je mają. |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 358 Pomógł: 78 Dołączył: 4.11.2008 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
jesli nie pomoga sposoby poprzednikow polecam przekonwertowac kodowanie pliku na utf-8 bez bom(robi to np notepad++) - sam kiedys mialem problem, ktory po tym zniknal. bom to taki znacznik wysylany z tego co pamietam jako pierwszy w pliku.
poza tym sprawdz, czy nie wywala ci jakis bledow, powiadomien, ktore wyswietlone na stronie(jesli jest jakies przekierowanie mozesz nawet tego nie zauwazyc) spowoduja wczesniejsze wyslanie naglowkow |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 1 Dołączył: 23.10.2009 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki za odpowiedzi. Dziś problem zniknął
![]() |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 08:09 |