Strona 1 z 1

problem z $_SESSION

Napisane: wtorek, 27 listopada 2012, 10:51
przez glodny
witam mam problem z $_SESSION zaraz na początku mianowicie wprowadzam taki kod:

Code: Zaznacz cały

<?php
session_start();

?>
<html>
    <head>
        <meta http-equiv="content-type" content="text/html; charset=utf-8" />
     
        <title>Zmienna Predefiniowana $_POST - by Arkadiusz Włodarczyk - videokurs.pl</title>

    </head>
    <body>
        <form action="bbb.php" method="post" enctype="multipart/form-data">
            <div>
                <div>
                    Login: <input type="text" name="login" maxlength="8" size="5" />
                </div>
                <div>
                    Password: <input type="password" name="haslo" maxlength="15" size="5" />
                </div> 
                <div>
                    <input type="submit" value="Zaloguj się™" />
                </div>
            </div>
        </form>
        
        <?php
        
        if ((isset($_POST['login'])&& isset($_POST['haslo'])) || $_SESSION['zalogowany'] == 1)
            
        {
          if  ((!empty($_POST['login'])&& !empty($_POST['haslo'])) || $_SESSION['zalogowany'] == 1)
            {
                $login= filter_var($_POST['login'], FILTER_SANITIZE_STRING);             - TO JEST LINIA 34

                $haslo= filter_var($_POST['haslo'], FILTER_SANITIZE_STRING);            - TO JEST LINIA 36  
                
                if (($login == "daniel" && $haslo == "skibek") || $_SESSION['zalogowany'] == 1)
                {
                    echo "gratulacje zalogowałeś sie na konto  ".$login."<br/>";
                    echo "PANEL ADMINISTRACYJNY<br/>";

                    $_SESSION['zalogowany']= 1;
                    
                }
                else
                    echo "podałes niepoprawny login lub hasło spróbuj ponownie  <a href='bbb.php'>tutaj</a>";
                    
            }
          else
                    echo "Nie podłeś loginu lub hasła. Spróbuj ponownie <a href='bbb.php'>tutaj</a>";
        }
        
        
        ?>
        
        
        </body>
</html>

po odświeżeniu strony wyskakuje błąd taki jak załączyłem do wiadomości nie mam pojęcia dlaczego tak się dzieje proszę o pomoc

Re: problem z $_SESSION

Napisane: wtorek, 27 listopada 2012, 12:00
przez Morfidon
Witam,

Proszę o stosowanie znacznika code (został już dodany).

W kodach źródłowych poprawiłem kod, aby nie było ostrzeżenia w najnowszym vertrigo server. W kursie korzystam ze starszej wersji, w której domyślne ustawienie error_reporting wyświetla coś co się zwie ostrzeżeniami - nie jest to żaden błąd, jest to potencjalne miejsce w którym może się znaleźć błąd, jeśli programista nie wiedział co robi.

Sugeruję wyłączyć to wchodząc do php.ini i zmienić
error_reporting na E_ALL & ~E_NOTICE

Re: problem z $_SESSION

Napisane: środa, 28 listopada 2012, 13:04
przez glodny
dzięki Arku pomogło :D

Re: problem z $_SESSION

Napisane: piątek, 28 grudnia 2012, 06:48
przez lightkozak
Morfidon napisał(a):...W kodach źródłowych poprawiłem kod, aby nie było ostrzeżenia w najnowszym vertrigo server. ...
Czy można skądś ściągnąć te kody źródłowe, ewentualnie je obejrzeć. Z panelu administracyjnego, gdy klikam "Ściągnij pliki źródłowe", otwiera się filmik z informacją "Token zabezpieczający przestał istnieć, prosimy o przelogowanie się" Próbowałem, przez przeglądarkę Chrome oraz Mozille. Chodzi mi szczególnie właśnie o lekcje związane z $_SESION.

Re: problem z $_SESSION

Napisane: piątek, 28 grudnia 2012, 13:37
przez Morfidon
Z załączniku. Pamiętaj by nie korzystać ze wspomagaczy do ściągania oraz AdBlockerów, niektóre blokują możliwość ściągania.

Re: problem z $_SESSION

Napisane: piątek, 28 grudnia 2012, 19:12
przez lightkozak
Leciałem z lekcjami, dosyć szybko, ale ta od $_SESION zatrzymała mnie gdzieś na kilka godzin :)
Po brutalnym porównaniu plików, za pomocą alt+tab okazało się, że w jednym miejscu zamiast $_GET miałem $GET.
Wcześniej sprawdzałem to z 10 razy i nie wiem, jak to mogłem przeoczyć, chyba z powodu zmęczenia.

Dziękuję za pomoc

ps

Informacyjnie piszę, by zadziałała opcja: Ściągnij pliki źródłowe
1) W Mozilli musiałem wyłączyć dodatek VLC Media player (VLC media player Web Plugin 2.0.0)
2) W Chrome nie ma znaczenia jakie ma się dodatki, nie działa :) wyłączyłem wszystkie zrestartowałem przeglądarkę w razie czego i tak nie działa.
3) W IE, mogłem ściągać pliki.

Re: problem z $_SESSION

Napisane: poniedziałek, 8 kwietnia 2013, 22:52
przez tajger
Mam też mały problemik dotyczący sesji a dokładnie zalogowania. Po pewnym randomowym czasie zostaję wylogowany czasami. Sprawdzałem po IP czy ktoś może wbijać na konto, ale jednak to nie to. Czy host na którym mam stronkę, może jakieś refreshe robić i dlatego czasami utracam sesję. Mam ustawioną na 15min.

Re: problem z $_SESSION

Napisane: wtorek, 9 kwietnia 2013, 08:12
przez Morfidon
Tak w ustawieniach serwera sesja również może być skrócona, ale najczęściej ustawiona jest na 15 minut / 30 minut. Randomo jednak nie powinno się tak dziać. Jeśli dzieje się randomowo to gdzieś błąd jest w skrypcie.

Re: problem z $_SESSION

Napisane: wtorek, 9 kwietnia 2013, 12:52
przez tajger
Rozwiązałem już problem... Pamiętam jak kiedyś używałem twojego kodu. U ciebie jest tylko jedna niepotrzebna rzecz, ty zawsze sprawdzasz nawet jak jest zalogowany czy jest sessiong[logged]=1 i tam cały czas podpisywales sesje zeby sie utrzymala ofc. Ja to zmienilem ostatnio i jak tylko raz sie zalogujesz to juz nie musisz sprawdzac caly czas czy jest zalogowany i podpisywac sesje w tamtym miejscu i wiele innych spraw.. Zapomniałem podpisywać sesje-logged, która mi po 15minut wygasała. Dodałem ją do innego warunku, tak żeby jak najmniej powtarzać tego typu sytuacje. Zawsze zaoszczędzi się czas i transfer, w małym stopniu, ale zawsze. :)