![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 333 Pomógł: 16 Dołączył: 13.05.2008 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Witam, powraca sprawa sesji.
Mam przykładowy skrypcik, który wykorzystuje includowanie plików "naglowek.php" i "stopka.php". - są to wspólne pliki dla wszystkich podstron. W nagłowek daję następujący kod (żeby go nie powtarzać): Kod $zapytanie = mysql_query("SELECT * FROM cms_rejestracja WHERE `login` = '".$_POST['login']."' AND `haslo` = '".$_POST['haslo']."'"); while($row = mysql_fetch_array($zapytanie)){ if($row['login'] == $_POST['login'] && $row['haslo'] == $_POST['haslo']){ $_SESSION['zalogowany'] = true; $_SESSION['zalogowany'] = 1; $_SESSION['login'] = $row['login']; $imie = $row['imie']; jak odwołać się do tej sesji w pliku, żeby osobom zarejestrowanym przedstawić bogatszą zawartość strony? Kod session_start(); if (isset($_SESSION['zalogowany']) && $_SESSION['zalogowany'] == 1) {................... treść strony } else {treść dla niezalogowanych}? To co zlepiłem niebardzo działa... 2 sprawa: mój sposób sprawia, że w plikach jest 2* więcej kodu - dla zalogowanych i niezalogowanych. Jak myślicie - bardzo to opóźni ładowanie się strony? Proszę o pomoc i z góry za nią dziękuję. -------------------- Kliknij POMÓGŁ jeśli moja odpowiedź okazała się użyteczna!
|
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 2 Dołączył: 17.09.2005 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
(...) Kod $zapytanie = mysql_query("SELECT * FROM cms_rejestracja WHERE `login` = '".$_POST['login']."' AND `haslo` = '".$_POST['haslo']."'"); while($row = mysql_fetch_array($zapytanie)){ if($row['login'] == $_POST['login'] && $row['haslo'] == $_POST['haslo']){ $_SESSION['zalogowany'] = true; $_SESSION['zalogowany'] = 1; $_SESSION['login'] = $row['login']; $imie = $row['imie']; jak odwołać się do tej sesji w pliku, żeby osobom zarejestrowanym przedstawić bogatszą zawartość strony? Kod session_start(); if (isset($_SESSION['zalogowany']) && $_SESSION['zalogowany'] == 1) {................... treść strony } else {treść dla niezalogowanych}? To co zlepiłem niebardzo działa... Otóż z tego co widzę za każdym razem pobierasz z bazy login i hasło i porównujesz je z tym, co użytkownik przesłał ($_POST), nawet jak nie przesłał nic. Spróbuj tak: Kod session_start(); if (isset($_POST['login']) && isset($_POST['haslo'])) { $zapytanie = mysql_query("SELECT * FROM cms_rejestracja WHERE `login` = '".$_POST['login']."' AND `haslo` = '".$_POST['haslo']."'"); while($row = mysql_fetch_array($zapytanie)){ if($row['login'] == $_POST['login'] && $row['haslo'] == $_POST['haslo']){ $_SESSION['zalogowany'] = 1; // albo true, albo 1! $_SESSION['login'] = $row['login']; $imie = $row['imie']; } Druga część wygląda OK, więc powinno zadziałać. 2 sprawa: mój sposób sprawia, że w plikach jest 2* więcej kodu - dla zalogowanych i niezalogowanych. Jak myślicie - bardzo to opóźni ładowanie się strony? (...) Niee... 2 razy tyle kodu masz w pliku PHP, a ładujesz tylko część - albo tę dla zalogowanych, albo tę dla niezalogowanych! Pozdr. :-) |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.06.2025 - 20:13 |