Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Pobieranie pliku
Raven87
post
Post #1





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 23.09.2008
Skąd: lublin

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


na stronie index.php gdzie wyswietlają się pliki do pobrania w tabelce zrobilen do kazdego taki oto link

  1. <?php
  2. [url="download.php?id=$r%5Bid%5D"][img]dd3.gif[/img][/url]&#092;";
  3. ?>


gdzie $r = mysql_fetch_assoc($wynik))

id, scieżka (czyli $katalog/$plik_nazwa) i jakiś tam opis z formularza zapisuja mi sie w bazie mySQL
musze korzystać z id przy pobieraniu gdyż pliki (nie w bazie przechowywane tylko na servie) sa dodawane od usera z formularza. Wiec dodaje sie plik automatycznie dodaje sie dowy rekord z opisem i linkiem (sciezki nie wyswietlam)

linki wyświetlają mi jak widac jako obrazek, o adresie:

http://www.mojadomena.eu/download.php?id=1
http://www.mojadomena.eu/download.php?id=15
http://www.mojadomena.eu/download.php?id=42
wiec ok, dobrze mi czyta id kazdego pliku, dla kazdego inny i porpawny.
no i tutaj mam problem z plikiem download.php


  1. <?php
  2. $folder = &#092;"materialy/\";
  3. $plik =    
  4. $file = @fopen($folder.$plik, &#092;"r\");
  5. flock($file,2);
  6. $rozmiar = filesize($folder.$plik);
  7. $zawartosc = fread($file, filesize($folder.$plik));
  8. flock($file,3);
  9. fclose($file);
  10. header (&#092;"Content-Type application/octet-stream\");
  11. header (&#092;"Content-Lenght: $rozmiar;\");
  12. header (&#092;"Content-Disposition: attachment; filename=$plik\");
  13. echo $zawartosc;
  14. ?>

czyli skrypt do downloadu po klikniecu na linka, tylko nie mam pojęcia ( bo ten oto szablonik mialem juz gotowy) jak wykorzystac to przekazywane id. Innymi slowy jak zrobic by ten plik byl sciagany za pomoca download.php.


EDIT
wpadlem na pomysl bo zrobic cos takiego w tym skrypcie

  1. <?php
  2.  
  3.  $connection = @mysql_connect('xxxxx', 'xxxxxx', 'xxxxx')
  4.    or die('Brak polaczenia z serwerem MySQL');
  5.    $db = @mysql_select_db('xxxxxx', $connection)
  6.    or die('Nie moge polaczyc sie z baza danych');
  7.  
  8. $id = $_GET['id']; // czyli pobieranie id z linku z index.php
  9. $query = mysql_query("SELECT nazwa FROM test WHERE id='$id'");
  10. $result = mysql_query($query);
  11.  
  12.  
  13.  
  14. $folder = "materialy/";
  15. $plik = $result;
  16. $file = @fopen($folder.$plik, "r");
  17. flock($file,2);
  18. $rozmiar = filesize($folder.$plik);
  19. $zawartosc = fread($file, filesize($folder.$plik));
  20.  
  21. flock($file,3);
  22. fclose($file);
  23. header ("Content-Type application/octet-stream");
  24. header ("Content-Lenght: $rozmiar;");
  25. header ("Content-Disposition: attachment; filename=$plik");
  26. echo $zawartosc;
  27. ?>


wydaje sie to byc sensowne ale nie działa....

Ten post edytował Raven87 10.10.2008, 00:15:33
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: 15.09.2025 - 16:11