Mam skrypt w którym się logujemy i pobiera on nasze dane z bazy (punkty)
I mam problem, ponieważ po zalogowaniu i przejsciu na stronę na której mają się wyświetlić te dane - wyswietla się monit o logowanie.
Poniżej przedstawiam ten skrypt.
index.php
<?php // rozpoczęcie buforowania (jest to potrzebne by nie mieć błędów typu headers already sent) // start sesji // jeśli user jest zalogowany if($_SESSION['logged']) { // wyświetlamy userowi jego dane } // jeśli nie jest zalogowany else { } // koniec buforowania ?>
login.php
<?php // rozpoczęcie buforowania (jest to potrzebne by nie mieć błędów typu headers already sent) // start sesji // połączenie z mysql // wybór bazy danych // nagłówek // sprawdzamy czy user jest już zalogowany else { // tworzymy prosty formularz echo '<form action="login.php" method="POST"> Nick: <br /> <input type="text" name="nick"><br /> Hasło: <br /> <input type="password" name="pass"><br /> <input type="submit" name="ok" value="Zaloguj"> </form>'; // jeśli zostanie naciśnięty przycisk "Zaloguj" { $nick = $_POST['nick']; $pass = $_POST['pass']; // sprawdzamy czy wszystkie dane zostały podane // jeśli tak... else { // filtrujemy dane // kodujemy hasło // sprawdzamy czy istnieje użytkownik z takim loginem i hasłem // jeśli nie istnieje // jeśli tak... else { // dodajemy wynik zapytania do tablicy // ustawianie sesji że użytkownik jest zalogowany $_SESSION['logged'] = true; // dodawanie do sesji id użytkownika, login oraz datę rejestracji $_SESSION['id'] = $row['id']; $_SESSION['punkty'] = $row['punkty']; $_SESSION['nick'] = $row['nick']; $_SESSION['data_rejestracji'] = $row['data_rejestracji']; // wyświetlenie komunikatu oznaczającego poprawne logowanie echo 'Zostałes poprawnie zalogowany! Możesz teraz przejsć na <a href="index.php">stronę główna</a>'; } } } } // rozłączenie z bazą danych // koniec buforowania ?>
logout.php
<?php // rozpoczęcie buforowania (jest to potrzebne by nie mieć błędów typu headers already sent) // start sesji // nagłówek // jeśli user jest zalogowany if($_SESSION['logged']) { // to go wylogowujemy i usuwamy jego dane z sesji $_SESSION['logged'] = false; $_SESSION['nick'] = ''; $_SESSION['id'] = ''; } // jeśli nie jest zalogowany else { } // koniec buforowania ?>
rejestracja.php
<?php // rozpoczęcie buforowania (jest to potrzebne by nie mieć błędów typu headers already sent) // start sesji // połączenie z mysql // wybór bazy danych // nagłówek // tworzymy prosty formularz echo '<form action="register.php" method="POST"> Nick: <br /> <input type="text" name="nick"><br /> Hasło: <br /> <input type="password" name="pass"><br /> <input type="submit" name="ok" value="Rejestruj"> </form>'; // jeśli zostanie naciśnięty przycisk "Rejestruj" { $nick = $_POST['nick']; $pass = $_POST['pass']; // sprawdzamy czy wszystkie dane zostały podane // jeśli tak... else { // filtrujemy dane // sprawdzamy czy jest już użytkownik o takim loginie // jeśli już istnieje // jeśli nie... else { // pobieramy aktualną datę // kodujemy hasło // tworzymy zapytanie $query = "INSERT INTO `users` (`nick` , `pass`, `data_rejestracji`) VALUES ('$nick', '$pass', '$data')"; // jeśli zapytanie wykona się poprawnie to zostanie wyświetlony stosowny komunikat if(mysql_query($query)) echo 'Zostałes poprawnie zarejestrowany! Możesz się teraz <a href="login.php">zalogować</a>'; } } } // rozłączenie z bazą danych // koniec buforowania ?>