• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Zmienne sesyjne się nie ustawiają

Object Storage Arubacloud
0 głosów
495 wizyt
pytanie zadane 9 sierpnia 2018 w PHP przez kuba802802 Początkujący (380 p.)
zamknięte 10 sierpnia 2018 przez kuba802802

Witam, mam problem z moim logowaniem mianowicie chodzi o to, że wysyłam AJAX'em request to PHP potem waliduje dane i następuje logowanie okej, tylko jest problem bo gdy dochodzi o tego momentu kodu, zmienne sesyjne się nie ustawiają i gdy zwracam dla AJAX'a, kod że udało się zalogować następuję przekierowanie window.location.href = main.php no tylko tam jest warunek jako pierwszy, i nie pozwala mi wejść na tą stronę, wszystko w głównym kodzie PHP działało, zapytanie przysłanie danych bla bla to działa tylko zmienne sesyjne się krzaczą. Dodam że wszystko działało póki nie dodałem kilku metod w innych skryptach, które potem usunąłem, więc raczej to nie ich wina z góry dziękuje za pomoc. Proszę również o nie ocenianie kodu, gdyż większość jest napisana źle, prosty powód męczę się z tym zmieniam co się da dzisiaj tj. 09.08 od 8 rano 

if (!isset($_SESSION["zalogowano"]))
{
  header('Location: index.php');
  exit();
}
if ($result->num_rows > 0) {
    
    while($row = $result->fetch_assoc()) {
            //print_r($row);
        if (password_verify($haslo, $row['haslo'])){
            
                $_SESSION['zalogowano'] = true;
                $_SESSION['ranga'] = $row['ranga'];
                $_SESSION['nick'] = $row['nick'];
                $_SESSION['id'] = $row['ID'];
                $_SESSION['status'] = $row['status'];
                $_SESSION['stopienTekst'] = $row['stopienText'];
                $_SESSION['stopien'] = $row['stopien'];
                echo "2";
              
          }
          

    }
}
         $.ajax({
                         url: "logging.php",
                         method: "POST",
                         data: {log: login,pass: haslo},
                         success: function(call)
                         {
                            if(call == 0){
                              swal("Błąd","Nieprawidłowy login lub hasło","error");
                            }
                            else {
                              
                                if(call == "2"){

                                    window.location.href = "main.php";
                                   
                                }
                                
                              
                            }

                             
                          }
                        

                   });

 

komentarz zamknięcia: Strona się sama naprawiła, nie znam przyczyny czemu, ale system działa dziękuje wszystkim za pomoc
komentarz 9 sierpnia 2018 przez StOcK Mądrala (6,100 p.)

spróbuj dodać 

session_start()

gdzieś na początku (config lub header czy coś podobnego)

komentarz 9 sierpnia 2018 przez Kamil110501 Bywalec (2,490 p.)
no masz racje bo on nie startuje z sesjami na serwerze takto te zmienne sesyjne bez tej lini nie są przekazane przez sesje
komentarz 10 sierpnia 2018 przez kuba802802 Początkujący (380 p.)
edycja 10 sierpnia 2018 przez kuba802802
No niestety, ale ta linijka jest dodana, w każdym z 15 skryptów.
komentarz 10 sierpnia 2018 przez kuba802802 Początkujący (380 p.)

@StOcK, jeszcze powiedz mi gdzie bym znalazł ten plik, być może, że tam tego nie ma. Ale we wszystkich 15 skryptach jest to dodane. 

komentarz 10 sierpnia 2018 przez StOcK Mądrala (6,100 p.)
wrzuć na samym początku pliku funkcję session_start();

w pliku main.php, index.php, logging.php

1 odpowiedź

0 głosów
odpowiedź 9 sierpnia 2018 przez OdsetekGlupoty Pasjonat (15,360 p.)
Witam,

Wiem, że może trochę to zbyt proste, ale nic innego nie przychodzi mi do głowy (kod z tego co widzę jest ok). Dodałeś session_start() na początku?
komentarz 10 sierpnia 2018 przez kuba802802 Początkujący (380 p.)
Masz racje to jest zbyt proste, jednak ta funkcja jest dodana.
komentarz 10 sierpnia 2018 przez kuba802802 Początkujący (380 p.)
To jest tak strasznie nie logiczny błąd.

Podobne pytania

0 głosów
1 odpowiedź 214 wizyt
pytanie zadane 21 sierpnia 2020 w PHP przez Bakkit Dyskutant (7,600 p.)
+1 głos
2 odpowiedzi 555 wizyt
pytanie zadane 18 listopada 2018 w PHP przez Mavimix Dyskutant (8,390 p.)
0 głosów
1 odpowiedź 137 wizyt
pytanie zadane 1 września 2016 w PHP przez Q_Nick Mądrala (5,010 p.)

92,548 zapytań

141,390 odpowiedzi

319,509 komentarzy

61,932 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...