Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Upload Download stosunek 1:2
Forum PHP.pl > Forum > PHP
byczek
Witam posiadam na swojej stroni Upload i Download plików chciałbym sobie zrobic scrypcik taki aby nie wszyscy mogli pobierac a tylko ci co uploaduja czyli chodzi mi cos takiego jak stosunek 1:2 czyli jeden wstawiony plik 2 moze pobrac moze jest cos takiego albo ktos jest w stanie cos takiego wykonac w wzamian za reklame na www z 6 tys uniq dziennie to mozemy sie dogadac jestem pod GG 5121808

pozdrawiam
Ludvik
Ciężko jest pilnować plików używając php... Najpierw pomyśl jak udostępnić pliki poprzez protokół ftp/http/etc. tak, aby nie każdy miał do nich dostęp. Osobiście nie znam żadnego gotowca.

Poza tym ciężko zrozumieć twój post - nie użyłeś ani jednego znaku interpunkcyjnego pomijając dwukropek przy stosunku.
Kristof
o ile zakladam z epliki sa dostepne tylko dla zarejestrowanych i uzywasz sql to nie jest takie trudne. Wystarczy ze zrobisz odpowiednia tabele w sql i przy kazdym pobieraniu pliku i wysylaniu bedzie dodawal liczbe czyli +1 do poprzedniego i zapisywał. Również przy downloadzie przed rozpoczeciem rezzty sprawdzal by if ($upload / $download <0,5) die i dalej juz by poszlo. Nie wiem jakiego szablonu uzywasz ale przerobienie i dodanie tej funkcji nie bylo by skomplikowane.
byczek
No zapomniałem dodac ze uf upload i download tylko dla zarejestrowanych jest smile.gif
poison.Pluto
W php będzie ci ciężko kontrolować dostęp do plików... Każdy kto będzie znać ścieżkę do pliku go ściągnie. Chyba, że użyjesz htacces itp.
Kristof
da sie musialbys trzymac np pliki w jakims katalogu i dostep do niego tylko spod serwera czyli chmod 770 i sciaganie odpowidnio przez plik php ze zmiennym adresem w zaleznosci od usera. Jest to do wykonania. Podobnie jest ale prościej jezeli masz serwer wirtualny tro mozesz w zupelnie inny katalog niz htdocs i wtedy nie ma dostepu spod http i jedynie przez plik php w ktorym jest sciezka i odbywa sie to na prawach roota badz wlasciciela pliku.
bregovic
To się da spokojnie zrobić. Wystarczy że zrobisz plik-bramkę, który:
  • Sprawdza czy user jest zalogowany
  • Sprawdza czy user może downloadować
  • Ładuje z odpowiednimi headerami odpowiedni plik
Najlepiej żeby pliki identyfikować poprzez id - z właściwą nazwą pliku zapisaną w bazie. Wtedy np download.php?file=1233456789 ładowałby plik znajdujący się zupełnie gdzie indziej.
Oczywiście aby było to bezpieczne, musisz pliki umieścić poza document root serwera.
Edit: lub z odpowiednim chmodem, jak napisał Kristof.
sf
Co w przypadku jesli pobieranie zakonczy sie niepowodzeniem? Wystapi przerwa podczas sciagania? Jak sprawdzic czy uzytkownik sciagnol caly plik?
crash
Ciężko jest przewidzieć takie wypadki, ale można na przykład założyć, że cały rozmiar pliku uwzględniany w ratio jest doliczany odrazu przy rozpoczęciu pobierania. Można też ustalić, że w jakimś tam czasie pobieranie tego samego pliku (np. wznawianie po przerwaniu) nie będzie powodowało wpływu na ration. Z uploadem jest o wiele łatwiej, wiadomo ile zajmuje wgrany plik...
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.