![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 20 Pomógł: 2 Dołączył: 3.06.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Mam pytanie jak zrobić download żeby orginalny adres pliku pozostał ukryty, a pobieranie odbywało się za pomocą jednorazowego linku, np. użytkownik zrobił co trzeba i dostaje adres do pliku download.php z odpowiednimi parametrami w tablicy get: download.php?id=05&linkid=WJDMATJ856984 gdzie id=05 to id pliku do pobrania którego orginalny adres jest zapisany w bazie, a linkid to jednorazowy identyfikator. Jak komuś się nie chce pisać kodu to niech chociaż napisze jak to się robi i czego mam szukać. Dzięki z góry. |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 8 Dołączył: 30.07.2005 Ostrzeżenie: (0%) ![]() ![]() |
Zaciekawileś mnie tym, więc sam sobie szybko sprawdziłem pierwsze co mi przyszło do głowy, a więc pokombinowanie z header(Location). Wyciągam z bazy ścieżkę pliku o id=ileś_tam, a następnie wrzucam tę ścieżkę do zmiennej i pakuję zmienną do header(Location). Użytkownik nie widzi adresu pliku i wszystko gra
![]() Ten post edytował Maveral 3.06.2009, 12:23:11 |
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Zobaczy. Może w Twojej przeglądarce nie widać, ale zobaczy: Nie o to chodziło - attachment.
-------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 898 Pomógł: 80 Dołączył: 31.05.2008 Ostrzeżenie: (20%) ![]() ![]() |
Najlepiej jest ładować pliki do bazy. wtedy nie masz takiego problemu.
-------------------- cojack blog - mój blog (na jakiś czas off).
"jak czegoś nie wiem, to nie myślę że wiem" - moja domena |
|
|
![]()
Post
#6
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
To najgorsze z możliwych wyjść...
W bazie trzyma się adresy do plików, a nie je same... -------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 898 Pomógł: 80 Dołączył: 31.05.2008 Ostrzeżenie: (20%) ![]() ![]() |
Jak kto lubi, ja sobie trzymam pliki w bazie
![]() -------------------- cojack blog - mój blog (na jakiś czas off).
"jak czegoś nie wiem, to nie myślę że wiem" - moja domena |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 19 Pomógł: 0 Dołączył: 3.06.2009 Ostrzeżenie: (0%) ![]() ![]() |
Też miałem problem taki problem z downloadem. Ale napisałem skrypt, podzielę się z nim.
![]() No więc działa na dwóch plikach i folderze z plikami - ot, żeby nie było bałaganu na serwerze. ![]() Pierwszy plik znajduje się w głównym folderze serwera: (http://www.example.com/download.php)
Drugi plik znajduje się w folderze z plikami, na przykład w folderze download którego nazwę użyłem w pierwszym pliku. (http://www.example.com/download/downit.php)
Jak to działa i o co wogóle chodzi? Już tłumaczę. Na jakiejś podstronie serwisu która znajduje się w głównym folderze (to ważne gdzie!) dajemy link do pliku o nazwie muzyka.zip: http://www.example.com/download.php?downit=muzyka . Gdy kliknie się na ten link serwer przechodzi do strony http://www.example.com/download/downit.php?downit=muzyka - przenosi za pomocą GET id pliku (nazwę) do pliku downit.php, który wysyła info do przeglądarki że coś trzeba pobrać. Czemu tak to skomplikowałem? Nie wiedzieć czemu serwer na którym znajduje się moja strona gdy wpisywałem zamiast ('Content-Disposition: attachment; filename="'.$downit.'.zip"') w downit.php w folderze download, od razu ścieżkę w download.php w głównym folderze, czyli ('Content-Disposition: attachment; filename="download/'.$downit.'.zip"') zamiast pliku pobierała sie strona o tej nazwie z rozszerzeniem *.zip.html ![]() Poza tym ten skrypt mam usterkę chyba nie do naprawienia. Sprawdzałem go na 3 przeglądarkach (opera, firefox i IE). W IE gdy ściągałem wbudowanym menadżerem ściągało się bez problemów, gdy ściągałem wbudowanym w firefoxie ściągało się też bez problemów. Problemy się zaczęły gdy pobierałem dodatkiem do firefoxa - akceleratorem pobierania. Ściągało tak jak przy skrypcie który próbowałem na początku, ściągał się plik html, z operą było to samo. Mam nadzieję że chodź trochę pomogłem. Może ktoś mógłby coś tu zmienić, ciekaw jestem czy da się to naprawić lub uprościć. ![]() |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 10:26 |