![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 123 Pomógł: 2 Dołączył: 13.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
mam następujący problem. Tworze witrynę do której przypisałem sesje. Funkcja zapisująca login do sesji wygląda następująco:
Wykorzystuje ją przy logowaniu. Następnie po zalogowaniu przenoszony jestem do głównego miejsca, gdzie moge dokonywać zakupów. Klikając na koszyk wykonowany jest skryp szybkiego zamowienia, gdzie sesja sprawdzana jest w następujący sposób.
Gdy nie jestem zalogowany wszystko działa poprawnie i przenoszony jestem do panelu logowania, jednak gdy sie zaloguje funkcja nie działa poprawnie i nie wykonywana jest dalsza cześć skryptu. Proszę o pomoc, jeżeli potrzebne są jakieś dodatkowe informacje to oczywiście je napisze. dzięki ! |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 116 Pomógł: 119 Dołączył: 10.05.2005 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Problem jest chyba w tym kawałku kodu.
wg mnie powinno być :
lub:
ponieważ teraz u Ciebie jest tak, że jeśli user jest zalogowany to... przenosi go na stronę logowania (IMG:http://forum.php.pl/style_emoticons/default/worriedsmiley.gif) ... |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 123 Pomógł: 2 Dołączył: 13.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Masz racje Cezar708, tylko jak to zrobie to przed zalogowaniem nie dziala przeslanie do strony panelLogowania.php poprostu nic sie nie pokazuje.
prosze o kolejne podpowiedzi. dzieki pozdrawiam |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 116 Pomógł: 119 Dołączył: 10.05.2005 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Ogólnie powinno działać w ten sposób, że jeśli user jest nie zalogowany to po prostu przechodzi na stronę logowania (panelLogowanie.php). Nie wiem co jest nie tak. Może prześlesz kawałek kodu mówiący o tym jak i gdzie wywołujesz funkcję autentycznoscSesji() oraz jak wygląda funkcja unregisterLogin(). Byc może w tch kawałkach kodu masz jakiś błąd, bo w tym co mi przesłałeś to wszystko wygląda OK.
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 123 Pomógł: 2 Dołączył: 13.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Sprawa wygląda nastepująco
jest plik ulotka.php po kliknieciu w koszyk przechodzi do szybkieZamowienieUlotka.php, gdzie wywolywany jest kod:
(oczywiscie to jest istotny fragment) funkcja autentycznoscSesji:
(przed chwila troche ja zminilem wlasnie) a to dwie pozostale funkcje: [/php]function registerLogin($login) { // Rejestracja loginUsername w celu pokazania, ze uzytkownik jest zalogowany $_SESSION["login"] = $login; // Rejestracja adresu IP dla uruchomionej sesji $_SESSION["loginIP"] = $_SERVER["REMOTE_ADDR"]; } function unregisterLogin() { // Sprawdzenie, czy uytkownik nie jest zalogowany. if (isset($_SESSION["login"])) unset($_SESSION["login"]); if (isset($_SESSION["loginIP"])) unset($_SESSION["loginIP"]); }
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 1 116 Pomógł: 119 Dołączył: 10.05.2005 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
na poczatek to zmieniłbym:
w końcu jak kolesia wylogowywujesz to nie muszisz sprawdzać czy istnieje ( w najgorszym razie nie istnieje i tak usuwasz ) po drugie zamień:
i dopiero obsługę zrób w kodzie (ewentualnie dopisz jeszcze jakąś funkcję):
być może błąd wynika z tego że w niektórych przypadkach Twoja funkcja nie podejmuje żadnej akcji a ma to miejsce w momencie gdy usr jest niezalogowany. Sprawdź jak to działa. |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 123 Pomógł: 2 Dołączył: 13.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Hej, po zalogowaniu wszystko dziala, jednak zanim sie zaloguje i klikam na koszyk, żeby sprawdzic jak zareaguje nie przenosi do paneluLogowania.php tylko pokazuje bialy ekran.
czyli sytuacja jak wczesniej. Strona wsi na serwera AZ.PL w ogole to zauwazylem ze nawet jak nie jestem zalogowany to nie stara sie przejsc do panelu logowania tylko pozostaje w szybkim zamowieniu. Ostatecznie zrobiłem nawet tak:
i nadal nic nie dziala wyglada na to jakby w ogole nie dochodzilo do sprawdzenia. nie wiem czy to cos ma w tej sprawie ale session_start() wykonuje juz w pliku ulotki.php, czyli pierwszym po wejsciu na stronie. Ten post edytował piotrekk 6.08.2007, 10:05:15 |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 1 116 Pomógł: 119 Dołączył: 10.05.2005 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Cholera, cudów nie ma, masz pusty ekran znaczy że masz jakiś błąd, który powinien Ci pokazać error_log... masz jakiś dostęp? W ogóle w jakiś sposób Ci loguje błędy? Może uda Ci się za pomocą funkcji error_reporting() uda Ci się ustawić i sprawdzić co Ci się wywala... bo jakoś nic logicznego do głowy mi nie przychodzi. sposób jest dobry i powinien zadziałać, więc myślę że błędu trzeba gdzie indziej szukać!
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 123 Pomógł: 2 Dołączył: 13.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
mam ustawione error_raporting.
niestety nie zwraca zadnych bledow. jezeli ma Pan chwile to prosze napisac na gg: 1437604 wtedy dam Panu link do strony i bedzie mogl Pan sam rzucic na to okiem. Ten post edytował piotrekk 6.08.2007, 12:28:19 |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 1 116 Pomógł: 119 Dołączył: 10.05.2005 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 14:33 |