Panel logowania w PHP user zalogowany na podstronach

Dla rozpoczynających przygodę z programowaniem i językiem PHP.
Awatar użytkownika
Kubala94
Posty: 1
Rejestracja: 18 lut 2016, 15:49

Panel logowania w PHP user zalogowany na podstronach

Post autor: Kubala94 » 18 lut 2016, 15:55

Witam, mam pytanie zrobiłem prosty system logowania z poradnika z pewnej strony smile.gif następnie "podpiąłem" ten panel logowania do mojej strony , która napisałem w html , działa OK ale pytanie jak zrobić żeby działało na każdej podstronie serwisu .. tzn. żeby użytkownik był zalogowany cały czas nawet jeśli przejdzie na podstronę (obecnie jak kliknę w inna podstronę to się wylogowuje , nawet jak przejdę na stronę główną zaraz po zalogowaniu) jak to napisać w php? Jestem początkującym , proszę o wyrozumiałość smile.gif P.S. wiem , że nikt nie napisze tego za mnie , nie tego oczekuje , tylko proszę o jakieś wskazówki , pokazanie jak to zrobić..

Kod: Zaznacz cały

    plik zaloguj.php na który jest przekierowanie po wpisaniu danych logowania 
     
     
    <?php
     
        session_start();
     
        if((!isset($_POST['login'])) || (!isset($_POST['haslo'])))
        {
            header('Location: index.html');
     
            exit();
        }
        require_once "connect.php";
     
        $polaczenie = new mysqli($host, $db_user, $db_password, $db_name);
     
        if ($polaczenie->connect_errno!=0)
        {
            echo "Error:".$polaczenie->connect_errno;
        }
        else
     
        {
         $login = $_POST['login'];
         $haslo = $_POST['haslo'];
     
          $login = htmlentities($login,ENT_QUOTES, "UTF-8");
          $haslo = htmlentities($haslo,ENT_QUOTES, "UTF-8");
     
     
        if($rezultat = @$polaczenie->query(
        sprintf("SELECT * FROM uzytkownicy WHERE user='%s' AND pass='%s'",
        mysqli_real_escape_string($polaczenie,$login),
        mysqli_real_escape_string($polaczenie,$haslo))))
        {
            $ilu_userow = $rezultat->num_rows;
            if($ilu_userow>0)
            {
                $_SESSION['zalogowany'] = true;
     
                $wiersz = $rezultat->fetch_assoc();
                $_SESSION['id'] = $wiersz['id'];
                $_SESSION['user'] = $wiersz['user'];
                $_SESSION['email'] = $wiersz['email'];
                $_SESSION['kontovip'] = $wiersz['kontovip'];
     
     
                unset($_SESSION['blad']);
                $rezultat->free_result();
     
                header('Location: profile.php');
     
            }else{
     
                $_SESSION['blad'] = '<span style="color:red"> Nieprawidłowy login lub hasło!</span>';
                header('Location: index.php');
            }
     
        }
        $polaczenie->close();
     
        }
     
    ?>
     
     
    dalsza cześć kod plik profile.php
     
    <?php
     
    session_start();
     
    if (!isset($_SESSION['zalogowany']))
        {
            header('Location: index.html');
            exit();
        }
     
    ?>
     
    logout.php
     
     
        <?php
     
        echo "<p>Witaj ".$_SESSION['user'].'![<a href="logout.php">Wyloguj się</a>]';
        echo "<p><b>E-mail</b>:".$_SESSION['email'];
        echo "|<b>Konto Vip</b>:".$_SESSION['kontovip']."</p>";
    ?>
     
    w indeksie mam wklejone to :
     
    <?php
        session_start();
     
        if ((isset($_SESSION['zalogowany'])) && ($_SESSION['zalogowany']==true))
        {
            header('Location: profile.php');
            exit();
        }
    ?>
     
    <?php
                        if(isset ($_SESSION['blad'])) echo $_SESSION['blad'];
     
                            ?>
    
formularz logowania w html:
 
Zaloguj się: <br />
                        <br />
 
                         <form action="zaloguj.php" method="post">
                            Login: <br/> <input type="text" name="login" /> <br />
                            Hasło: <br /> <input type="password" name="haslo" />
 
                            <input type="submit" value="Zaloguj" />
 
                        </form>




 

ODPOWIEDZ