Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] Zabezpieczenie plikow przed pobraniem, bez autoryzacji
jol.us_
post
Post #1





Grupa: Zarejestrowani
Postów: 132
Pomógł: 0
Dołączył: 10.12.2003
Skąd: Kraków

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


Szukam sprawdzonej metody ograniczenie upload'u plikow. Chodzi o to aby osoba, ktora nie przeszla autoryzacji nie mogla pobrac plikow z okreslonego katalogu. Jezeli ktos przejdzie autoryzacje to ma dostep do pliku poprzez zwyklego linka.

Do tej pory zabezpieczalem pliki umieszczajac je w bazie danych i sprawa byla prosta, ale teraz musze to trzymac w katalogu na serwerze. Myslalem zeby moze nadac jakas tymczasowa nazwe w tymczasowym katalogu ale skad niby mialbym wiedziec kiedy taki plik skasowac (kiedy zakonczy sie pobieranie pliku).

Googlanie i przekopanie postow na forum nic nie dalo (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
dtb
post
Post #2





Grupa: Zarejestrowani
Postów: 476
Pomógł: 1
Dołączył: 5.11.2005
Skąd: Bieruń city

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


tworzysz tabelke w bazie danych o nazwie 'file_list':

id - unikalne id pliku
file - url do pliku

a potem: pobierz.php?id=ID_PLIKU aby rozpoczac sciaganie

kod pobierz.php:

  1. <?php
  2. if (...) { // tu sprawdza czy user jest zalogowany
  3. $r = mysql_fetch_array(mysql_query('SELECT * FROM file_list WHERE id='.$_GET['id'].''));
  4. if (file_exists($r['file'])) {
  5. header("Content-Type: application/force-download\n");
  6. header('Content-Disposition: attachment; filename='.$r['file']);
  7. readfile($r['file']);
  8. } else {
  9. header("HTTP/1.0 404 Not Found");
  10. }
  11. } else {
  12. header("HTTP/1.0 404 Not Found");
  13. }
  14. ?>
Go to the top of the page
+Quote Post

Posty w temacie


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.10.2025 - 10:04