Witam,mam problem mianowicie posiadam takie coś do logowania na stronę:
if($_SESSION['zalogowany'] !== TRUE){ include 'wyglad/index.html'; odbierz_logowanie(); }elseif($_SESSION['zalogowany'] === TRUE){ http://www.php.net/echo 'Zostałeś poprawnie zalogowany.'; }else{ http://www.php.net/header('Location: /'); }
Nie rozumiem pytanie, co to znaczy z innego pliku?
W jaki sposób masz przechowywane dane do logowania?
Dane logowania są w bazie. Po zalogowaniu sesji przekierowuje na stronę main.php to by była strona dla użytkownika, a chce jeszcze strone dla admina żeby miał dodatkowe opcje w panelu czyli zeby np. ladowalo strone admin.php. Ja jestem zielony w php dlatego może też źle myśle to jak coś mnie poprawcie
Dołóż jakaś flagę isAdmin i po niej sprawdzaj czy może mieć includowany plik.
Po co ładować dwa pliki?
Ja bym dał warunek że jeśli admin to menu pokazać inne, przecież strona main i admin będzie miała ten sam wygląd?
Popcorn biore..
Ja Panowie nic nie rozumiem z tego co piszecie To jest projekt szkolny zależy mi tylko na tym żeby działało I jakby ktoś mógł pokazać na przykładzie jak to zrobić bo inaczej nic nie zrozumie
Do SESSION dałbym numerki, jeśli SESSION['rank'] ( zamiast ZALOGOWANY ) == false // pokazujemy formularz logowania
jeśli SESSION['rank'] == 1 // czyli gość po logowaniu, pokazujemy menu zwykłego usera
jeśli SESSION['rank'] == 2 // to znak że to jest admin, pokazujemy menu i funkcje dla admina
a w bazie danych dać rekord rank i tam ustawiać numerki
Nawet sesji nie trzeba, tylko sprawdzić rank z bazy danych
Aaa, czyli chcesz gotowca?
Tutaj na forum raczej wszyscy pomagają dociekliwym i tym, którzy chcą się nauczyć
Napisałem ci co możesz zrobić
Teraz trzeba to przerobić pod twój przykład, ale wysil głowę, skonstruuj pierwszy, wstępny kodzik, a My wszyscy będziemy go tutaj poprawiać aż zadziała a ty wyniesiesz z tego naukę
A sprawdzasz w jakiś sposób czy użytkownik wpisał poprawne hasło i login? Możesz przypisać id rangi do sesji i później zapytaniem mysql sprawdzić czy osoba odwiedzająca daną stronę jest administratorem czyli Select... Where id=...
<?php http://www.php.net/session_start(); $AllDetails = http://www.php.net/array ( 'janek' => http://www.php.net/array('login' => 'janek', 'pass' => 'haslojanka'), 'franek' => http://www.php.net/array('login' => 'tomek', 'pass' => 'haslotomka'), 'admin' => http://www.php.net/array('login' => 'admin', 'pass' => 'hasloadmina') ); if(!function_exists('LogIn')) { function LogIn($ArgObj1) { $ArgObj1 = "<form method=\"POST\" action=" . $_SERVER['SCRIPT_NAME'] . "?step=1>"; $ArgObj1 .= "login: <input type=\"text\" name=\"LoginName\">"; $ArgObj1 .= "Hasło: <input type=\"password\" name=\"PasswordName\">"; $ArgObj1 .= "<input type=\"submit\" value=\"Loguj sie\" name=\"input\">"; $ArgObj1 .= "</form>"; return $ArgObj1; } } if(!function_exists('ShowLogOutLinkAndDetails')) { function ShowLogOutLinkAndDetails($sess) { return ($sess == 1) ? $sess . "<a href=" . $_SERVER['SCRIPT_NAME']. "?step=2>Wyloguj</a>" : $sess . "<a href=" . $_SERVER['SCRIPT_NAME']. "?step=2>Wyloguj</a>"; } } @$step = $_GET['step']; (!http://www.php.net/isset($step)) ? $step = 0 : $step = $step; switch($step): case('0'): if(http://www.php.net/isset($_SESSION['user']['login'])) { http://www.php.net/print ShowLogOutLinkAndDetails($_SESSION['user']['login']); } else { http://www.php.net/echo LogIn($ArgObj1 = true); } break; case('1'): $submit = $_POST['input']; $LoginName = $_POST['LoginName']; $PasswordName = $_POST['PasswordName']; if(http://www.php.net/isset($_SESSION['user']['login'])) { http://www.php.net/print ShowLogOutLinkAndDetails($_SESSION['user']['login']); } else { if($submit) { if( (http://www.php.net/trim($LoginName) != '') || (http://www.php.net/trim($PasswordName) != '') ) { if(http://www.php.net/isset($AllDetails[$LoginName]['login']) && http://www.php.net/isset($AllDetails[$LoginName]['pass'])) { if( ($AllDetails[$LoginName]['login'] == $LoginName ) && ($AllDetails[$LoginName]['pass'] == $PasswordName) ) { if ($_SERVER['REQUEST_METHOD'] === 'POST') { if(session_status() == PHP_SESSION_ACTIVE) { http://www.php.net/session_regenerate_id(); if($AllDetails[$LoginForm]['login'] == 'admin') { $_SESSION['user']['login'] = $AllDetails[$LoginName]['login']; http://www.php.net/session_regenerate_id(); http://www.php.net/header('location: gdziestam.php'); } else { $_SESSION['user']['login'] = $AllDetails[$LoginName]['login']; http://www.php.net/session_regenerate_id(); http://www.php.net/header('location: gdziestam.php'); } } else { http://www.php.net/header('location:' . $_SERVER['SCRIPT_NAME']); } } } else { http://www.php.net/exit("Dane są nieprawidłowe <a href=". $_SERVER['SCRIPT_NAME'] .">WSTECZ</a>"); } } else { http://www.php.net/header('location:' . $_SERVER['SCRIPT_NAME']); } }else { http://www.php.net/exit('Prosze wypelnic pola'); } } else { http://www.php.net/exit("błąd"); } } break; case('2'): http://www.php.net/unset($_SESSION['user']['login']); $_SESSION = http://www.php.net/array(); if (http://www.php.net/ini_get("session.use_cookies")) { $params = http://www.php.net/session_get_cookie_params(); http://www.php.net/setcookie(http://www.php.net/session_name(), '', http://www.php.net/time() - 3600, $params["path"], $params["domain"], $params["secure"], $params["httponly"]); } http://www.php.net/session_destroy(); http://www.php.net/header('location:' . $_SERVER['SCRIPT_NAME']); http://www.php.net/exit; break; default: http://www.php.net/header('location:' . $_SERVER['SCRIPT_NAME']); http://www.php.net/exit; endswitch; ?>
<?php http://www.php.net/session_start(); if($_SESSION['user']['login'] == 'user') { http://www.php.net/print 'zawartosc strony dla uzytkownika'; http://www.php.net/print " <a href=index.php?step=2>Wyloguj</a>"; } if($_SESSION['user']['login'] == 'admin') { http://www.php.net/print 'zawartosc strony dla admina'; http://www.php.net/print " <a href=index.php?step=2>Wyloguj</a>"; } ?>
Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)