Jump to content

Jak zrobić panel logowania w PHP , żeby user był zalogowany na każdej podstronie .


Kubala94

Recommended Posts

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ć..

 

<?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> 

Link to comment
Share on other sites

  • 2 months later...

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...