Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Download w PHP, Download w PHP
simon111
post
Post #1





Grupa: Zarejestrowani
Postów: 60
Pomógł: 0
Dołączył: 11.10.2006

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


Witam

Udało mi się spłodzić skrypt, który wrzuca pliki do katalogu na serwerze. Niestety nie mam pomysłu jaki napisać plik, który by te pliki wyświetlał i można byłoby je po kliknięciu ściągnąć na HDD. Bardzo proszę o pomoc w tej sprawie, bo nic mi już nie przychodzi do głowy. Z góry dziękuję za wszelkie sugestie.

Pozdrawiam Simon.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 12)
maniekl2
post
Post #2





Grupa: Zarejestrowani
Postów: 162
Pomógł: 29
Dołączył: 6.04.2008

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


no żeby pobierać musisz po prostu stworzyć podstronę z linkiem do danego pliku przykładowo www.twojastrona.pl/pliki/download.zip

możesz zrobić skrypt w tym stylu
  1. <?php
  2. echo "<a href=http://twojastrona.pl/pliki/".$_GET['plik']."> Download</a>";
  3. ?>


i przesyłać nazwę pliku zmienna GET
druga opcja to baza danych

Ten post edytował maniekl2 30.10.2008, 21:36:14
Go to the top of the page
+Quote Post
simon111
post
Post #3





Grupa: Zarejestrowani
Postów: 60
Pomógł: 0
Dołączył: 11.10.2006

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


Bazę danych chciałem pominąć i zrobić to tylko na plikach. A chodzi mi konkretnie o to, żeby skrypcik PHP przeglądał dany folder i na stronce wyświetlał automatycznie wszystkie pliki gotowe do pobrania z tego właśnie folderu...
Jakiś pomysł na to? (IMG:http://forum.php.pl/style_emoticons/default/sadsmiley02.gif)
Go to the top of the page
+Quote Post
maniekl2
post
Post #4





Grupa: Zarejestrowani
Postów: 162
Pomógł: 29
Dołączył: 6.04.2008

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


http://pl.php.net/manual/pl/ref.dir.php
Go to the top of the page
+Quote Post
YaQzi
post
Post #5





Grupa: Zarejestrowani
Postów: 94
Pomógł: 31
Dołączył: 12.10.2008
Skąd: WAT

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


Cytat(maniekl2 @ 30.10.2008, 22:19:47 ) *


Albo to, albo metoda "na lenia", czyli dajesz link do katalogu z plikami i jeśli nie ma w nim pliku index powinna się wyświetlić lista plików. Klikasz i pobierasz. ;P
Go to the top of the page
+Quote Post
simon111
post
Post #6





Grupa: Zarejestrowani
Postów: 60
Pomógł: 0
Dołączył: 11.10.2006

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


Ok, poszedłem za waszą radą i skołowałem coś takiego:

  1. <?php
  2. $directory="folder";
  3. $dir=opendir($directory);
  4. $file_list="<a href='folder/$file_name'>";
  5. while($file_name=readdir($dir))
  6.    {
  7.    if(($file_name!=".")&&($file_name!=".."))
  8.        {
  9.        $file_list.="<LI>$file_name";
  10.        }
  11.    }
  12. $file_list.="</a>";
  13. closedir($dir);
  14. Pliki w $directory:
  15. $file_list";
  16. ?>


Ale teraz wyświetla mi tylko link do pliku, a ja nie chce tam przechodzić tylko pobrać. Czy powinienem dodać jakiś atrybut, czy może dodać jakiegoś header'a. (IMG:http://forum.php.pl/style_emoticons/default/dry.gif)

Ten post edytował simon111 31.10.2008, 08:30:00
Go to the top of the page
+Quote Post
maniekl2
post
Post #7





Grupa: Zarejestrowani
Postów: 162
Pomógł: 29
Dołączył: 6.04.2008

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


Jak klikniesz w ten link to powinno pojawić się okienko zapisz lub otwórz za pomocą. Chyba że masz tam pliki *.php lub *.html itp. Jakie masz tam pliki ?

Ten post edytował maniekl2 31.10.2008, 09:08:51
Go to the top of the page
+Quote Post
simon111
post
Post #8





Grupa: Zarejestrowani
Postów: 60
Pomógł: 0
Dołączył: 11.10.2006

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


Tam są zwykłe tekstowe pliczki *.txt, w przyszłości dorzucę może *.doc, ewentualnie *.pdf...
Go to the top of the page
+Quote Post
maniekl2
post
Post #9





Grupa: Zarejestrowani
Postów: 162
Pomógł: 29
Dołączył: 6.04.2008

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


pliki *.txt się otwierają w przeglądarce, zaś pliki *.doc i *.pdf trzeba już pobrać. Więc jak chcesz mieć mniej problemów to wrzucaj na serwer te właśnie pliki.
Go to the top of the page
+Quote Post
golaod
post
Post #10





Grupa: Zarejestrowani
Postów: 419
Pomógł: 42
Dołączył: 12.08.2008
Skąd: Wrocław

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


A może tak zamiast linków bezpośrednio do pliku napisać skrypt wysyłający do przeglądarki plik (np. dzięki parametrom z get) ? Dzięki temu nawet txt się nie otworzy w przeglądarce (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
simon111
post
Post #11





Grupa: Zarejestrowani
Postów: 60
Pomógł: 0
Dołączył: 11.10.2006

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


Wrzuciłem sobie właśnie doc'a, ale efekt ten sam, tzn. wyświetla mi stronę "Index of..." gdzie mam wyświetlone pliki w katalogu wraz z katalogiem głównym na samej górze. Jak dopiero kliknę na pliczek to wyskakuje okienko z możliwością pobrania.
Nie chciałbym, żeby przerzucało mnie do katalogu (tylko od razu robiło to pobieranie) ponieważ wówczas user może wędrować po całej strukturze folderów na stronie.

A propos wypowiedzi golaod: To w jaki sposób należałoby użyć tego get'a, bo jak dotąd to spotkałem się z nim tylko przy przesyłaniu formularzy?
Go to the top of the page
+Quote Post
maniekl2
post
Post #12





Grupa: Zarejestrowani
Postów: 162
Pomógł: 29
Dołączył: 6.04.2008

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


ten twój skrypt jest zły spróbuj tak i plik doc :
  1. <?php
  2. $directory="folder";
  3. $dir=opendir($directory);
  4.  
  5.  
  6. while($file_name=readdir($dir))
  7.   {
  8.   if(($file_name!=".")&&($file_name!=".."))
  9.       {
  10. $file_list .="<li><a href=folder/".$file_name."'>".$file_name."</a></li>";
  11.      
  12.       }
  13.   }
  14.  
  15. closedir($dir);
  16. Pliki w $directory:
  17. $file_list";
  18. ?>
Go to the top of the page
+Quote Post
simon111
post
Post #13





Grupa: Zarejestrowani
Postów: 60
Pomógł: 0
Dołączył: 11.10.2006

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


Brawo maniekl2.
Działa wyśmienicie (pominąłeś tylko jeden apostrof w 11 linii - ale to szczegół).
Naprawde serdecznie dziekuję za pomoc, życzę pomyślnych wiatrów, jeszcze raz dzieki, pozdrawiam, nara.
Go to the top of the page
+Quote Post

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: 23.08.2025 - 12:46