Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] Zabezpieczanie panelu admina
krzysiek_raven
post
Post #1





Grupa: Zarejestrowani
Postów: 86
Pomógł: 0
Dołączył: 28.09.2007

Ostrzeżenie: (0%)
-----


Witam. Jestem nowy na tym forum. Niedawno zacząłem uczyć sie php i im głębiej w to wchodze tym większe problemy napotykam:P
Zrobiłem prosty system artykułów i komentarzy do nich i panel do zarządznia tym systemem. Panel znajduje sie w oddzielnym folderze i składa sie z kilku plików .php. Chciałbym zabezpieczyć jakoś pliki w tym folderze albo najlepiej cały folder wraz z zawartością. Znalazłem już kilka rozwiązań np. coś takiego jak tu http://www.webdiary.pl/technologie+art.id+217.htm ale mój panel składa sie z kilku plików i zabezpieczanie każdego pliku z osobna oznaczało by, przy przejściu na podstrone, konieczność ponownego podania hasła:/ Oznacza to że trzeba tak zrobić panel aby wszystko zawierało się np. w stronie index.php? Czy może da rade jakoś zabezpieczyć cały folder z zawartością?
Link do stronki: http://www.testyphpsql.yoyo.pl/index.php
Link do panelu: http://www.testyphpsql.yoyo.pl/admin_panel/
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
krzysiek_raven
post
Post #2





Grupa: Zarejestrowani
Postów: 86
Pomógł: 0
Dołączył: 28.09.2007

Ostrzeżenie: (0%)
-----


Czy takie coś powinno wystarczyć, aby przeciętnemu użytkownikowi nie udało sie nic namieszać w panelu administracjnym?

plik login.php
  1. <?php
  2.  
  3. // ---- LOGIN i HASŁO ----
  4. $login = "admin";
  5. $haslo = "f39bfe1e6901e9cc87ca44e435f5671b";
  6. // -----------------------
  7.  
  8. function formularz()
  9. {
  10.  echo '<FORM ACTION="login.php" METHOD="post">
  11.  Wpisz login i hasło<br />
  12.  Login: <INPUT TYPE="tekst" NAME="log"><br />
  13.  Hasło: <INPUT TYPE="tekst" NAME="has"><br />
  14.  <input type="submit" value="zaloguj">
  15. </FORM>';
  16. }
  17. function sprawdz($l, $h, $login, $haslo)
  18. {
  19.  if ($l == $login && md5($h) == $haslo){
  20. return TRUE;
  21.  }
  22.  else return FALSE;
  23. }
  24.  
  25.  
  26. // -- MAIN --
  27.  
  28. $l = $_POST['log'];
  29. $h = $_POST['has'];
  30.  
  31. if (sprawdz($l, $h, $login, $haslo)){
  32.  
  33.  // -- obsługa sesji --
  34.  
  35.  if (!isset($_SESSION['id'])){
  36. $_SESSION['id'] = $login;
  37. header("Location: index.php" . SID);
  38.  }
  39.  
  40. }
  41. else if ($l == TRUE || $h == TRUE){
  42.  echo('Dane niepoprawne - spróbuj jeszcze raz<br>');
  43.  formularz();
  44. }
  45. else formularz();
  46.  
  47. ?>


plik index.php i inne pliki panelu
  1. <?php
  2.  
  3.  if (!isset($_SESSION["id"])){
  4. header("Location: login.php" . SID);
  5. exit();
  6.  }
  7.  else{
  8. echo ('strona główna<br><br>');
  9. echo('<a href="logout.php">Wyloguj</a>');
  10.  }
  11.  
  12. ?>


plik logout.php
  1. <?php
  2.  
  3.  echo "Użytkownik " . $_SESSION["id"];
  4.  echo " został wylogowany.";
  5.  
  6. ?>


Nie używałem cookies bo jeszcze dokładnie nie wiem jak.
Go to the top of the page
+Quote Post

Posty w temacie
- krzysiek_raven   [php] Zabezpieczanie panelu admina   28.09.2007, 10:41:08
- - kossa   Na sam początek zacznij od logowania opartego na s...   28.09.2007, 11:01:58
- - krzysiek_raven   Ok, dzieki. Spróbuje wykombinować coś z tymi sesja...   28.09.2007, 11:09:43
- - TomASS   Hasło na cały katalog to przy pomocy pliku .htacce...   28.09.2007, 11:19:30
- - krzysiek_raven   Poczytałem troche już o sesjach i chodzi w tym mni...   28.09.2007, 12:20:55
- - mike   Tak. Teraz musisz to ogarnąć w praktyce   28.09.2007, 12:29:29
- - krzysiek_raven   Czy takie coś powinno wystarczyć, aby przeciętnemu...   28.09.2007, 17:55:37
- - marcio   mam ten sam problem i sesje robie prawie tak samo ...   28.09.2007, 20:51:21
- - krzysiek_raven   Hasło w bazie jest zakodowane? Jeśli tak...   28.09.2007, 21:36:05
- - marcio   zrobilem identycznie tylko ze najpierw podalem zmi...   28.09.2007, 21:57:05
|- - Grabarz   Cytat(marcio @ 28.09.2007, 22:57:05 )...   28.09.2007, 23:32:10
- - krzysiek_raven   Mam jeszcze jeden problem z tym zabezpieczeniem. J...   29.09.2007, 09:32:40
- - tiraeth   Ale w porządku robi. Przenosi do login.php. Jako d...   29.09.2007, 09:42:31
- - marcio   Grabarz dzieki ale pisalem na szybko i bylo pozno ...   29.09.2007, 10:45:47
- - Grabarz   Też prawda:] Ale ja dodatkowo sprawdzam funkcją ct...   29.09.2007, 12:58:41
- - marcio   a jaka jest roznica jak ja zrobie bez SID??   29.09.2007, 14:05:54
- - Gość   Utwórz w katalogu z panelem administracyjny plik a...   29.09.2007, 17:15:26
- - jarekjr   Witam mam podobną rzecz do zrobienia i mam jedno p...   24.10.2008, 09:31:25
- - tiraeth   Przed znacznikiem <html> wstaw: [PHP] pobier...   24.10.2008, 09:35:24
- - jarekjr   Jeszcze jakby mi ktos wyjasnił o co chodzi z takim...   24.10.2008, 09:53:39
- - golaod   To oznacza, że wcześniej przed session_start wysył...   24.10.2008, 12:07:24
- - jarekjr   niestety to nie działa . Przed <html> wkleja...   24.10.2008, 12:26:21
- - Lars   Nagłówki wysyłasz na początku, przed jakimkolwiek ...   24.10.2008, 12:27:23
- - golaod   Poczytaj o kodowaniu plików, możliwe, że masz źle ...   24.10.2008, 12:31:57


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 9.06.2026 - 13:10