Witam . Ściągnąłem z książki skrypt logowania . Samo logowanie działa bardzo dobrze . Teraz tak mam strone levy div w którym są linki i środkowy div w ktorym się pokazuje zawartość tych linków . I mam sobie skrypt logowania . Gdy się zaloguje wszystko jest ok pokazuje jesteś zalogowany jako xxx. Jednak kiedy klikne na jakiś link to ta informacja czy jestem zalogowany czy nie mi znika . Nie mam pojęcia jak to okiełznać żeby zawsze pisało że jestem zalogowany i nieważne na jaki link w stronie klikne i dopóki nie wcisne wyloguj się, i znowu pokaże formularz logowania aż do zalogowania się . Do tego jak mam formularz logowania gdy klikne zaloguj i jestem zalogowany chcę aby ten formularz mi zniknął a on dalej jest a pod nim że jestem zalogowany jako xxx.
levy div :
<?php
if(isSet($_SESSION['komunikat'])) echo $_SESSION['komunikat']; else
echo "Wprowadź nazwę i hasło użytkownika:"; ?>
<form name = "formularz1"
action = "index.php?go=9"
method = "POST"
>
<table border="0" align="center"><tr>
<td>Użytkownik:</td>
</tr>
<tr>
<td>
<input type="text" name="user">
</td>
</tr><tr>
<td>Hasło:</td>
</tr><tr><td>
<input type="password" name="haslo">
</td>
</tr><tr>
<td align="left">
<a href="new_user.html">Rejestracja</a>
</td></tr><tr>
<td align="left">
<input type="submit" value="Wejdź">
</td>
</tr></table>
</form>
srodkowy divw pliku index.php
<?
switch ($_GET['go'])
{
case 9:
include("rejestracja/login.php");
break;
case 10:
include("rejestracja/main.php");
break;
case 11:
include("rejestracja/logout.php");
break;
}
?>
login.php w folderze rejestracja
<?PHP
function checkPass($user, $pass)
{
/*sprawdzenie długości przekazanych ciągów*/
$userNameLength = strlen($user); $userPassLength = strlen($pass);
if($userNameLength < 3 || $userNameLength > 20 ||
$userPassLength < 6 || $userPassLength > 40){
return 2;
}
/*nawiązanie połączenia serwerem i wybór bazy*/
if (!$db_lnk = @mysql_connect("mysql3.yoyo.pl", "db486994", "xxxxxxxxxxxxxxxxxxxxx")){ //echo('Wystąpił błąd podczas próby połączenia z serwerem MySQL...');
return 1;
}
//echo('Wystąpił błąd podczas wyboru bazy danych: test...');
return 1;
}
/*wykonanie zapytania sprawdzającego poprawność danych*/
$query = "SELECT COUNT(*) FROM Users WHERE Nazwa='$user' ";
$query .= "AND Haslo='$pass'";
//echo('Wystąpił błąd: nieprawidłowe zapytanie...');
return 1;
}
/*sprawdzenie wyników zapytania*/
//echo('Wystąpił błąd: nieprawidłowe wyniki zapytania...');
return 1;
}
else{
if($row[0] <> 1){
return 2;
}
else{
return 0;
}
}
}
/* rozpoczęcie sesji i procedur logowania*/
if(isSet($_SESSION['zalogowany'])){ header("Location: index.php?go=10"); }
else if(!isSet($_POST["haslo"]) || !isSet($_POST["user"])){ $_SESSION['komunikat'] = "Wprowadź nazwę i hasło użytkownika:";
include('form.php');
}
else{
$val = checkPass($_POST["user"], $_POST["haslo"]);
if($val == 0){
$_SESSION['zalogowany'] = $_POST["user"];
header("Location: index.php?go=10"); }
else if($val == 1){
$_SESSION['komunikat'] = "Błąd serwera. Zalogowanie nie było możliwe.";
include('form.php');
}
else if($val == 2){
$_SESSION['komunikat'] = "Nieprawidłowa nazwa lub hasło użytkownika.";
include('form.php');
}
else{
$_SESSION['komunikat'] = "Błąd serwera. Zalogowanie nie było możliwe.";
include('form.php');
}
}
?>
main.php
<?php
if(!isSet($_SESSION['zalogowany'])){ $_SESSION['komunikat'] = "Nie jesteś zalogowany!";
include('form.php');
}
?>
Witaj:
<?php echo $_SESSION['zalogowany'] ?>Pamiętaj o wylogowaniu przed opuszczeniem strony!
<a href="index.php?go=11">Wylogowanie</a>
Pozdrawiam i czekam na odpowiedź.