Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php]lista plików, pobieranie małe przebudowanie skryptu
Forum PHP.pl > Forum > PHP
mario_biedronka
Witam,
jako że w php jestem nowy a stronę buduję tylko na poradnikach z sieci i ciężko mi się łapać w php (szef kazał ma być zrobione w php a ja go nie umiem.) i tutaj mam taki skrypt i potrzebuję aby pobierał metodą get tzn żeby pobierał przez plik php a nie href gdyż z pliku php mogę się dostać do pliku a przez href mam błąd 403 i dobrze chodzi mi głównie żeby połączyć jakoś dwa skrypty które wymienię poniżej na jeden funkcjonalny
trzeba jakoś napisać ten skrypt
  1. <?php
  2. $sciezka = "upload";
  3. $lista=array();
  4. $katalog = opendir($sciezka);
  5. while ($plik = readdir($katalog)) {
  6. if (($plik<>".")&&($plik<>"..")) if(!is_dir($sciezka.$plik))
  7. $lista[]=$plik;
  8. }
  9. closedir($katalog);
  10. sort($lista);
  11. for ($i=0;$i<count($lista);$i++) {
  12. echo "<br><a href=\"/$sciezka/$lista[$i]\">$lista[$i]</a>";
  13. }
  14. ?>

żeby nie łączyło się metodą href (html) tylko czymś takim jak w tym skrypcie
  1. <?php
  2. $file = 'monkey.gif';
  3.  
  4. if (file_exists($file)) {
  5. header('Content-Description: File Transfer');
  6. header('Content-Type: application/octet-stream');
  7. header('Content-Disposition: attachment; filename='.basename($file));
  8. header('Content-Transfer-Encoding: binary');
  9. header('Expires: 0');
  10. header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
  11. header('Pragma: public');
  12. header('Content-Length: ' . filesize($file));
  13. flush();
  14. readfile($file);
  15. }
  16. ?>

ogólnie ma pokazywać pliczki z folderu i po kliknięciu pobierać tym drugim skryptem w zasadzie to metodą z drugiego skryptu
przepraszam że tak rozwiąźle ale jestem nowy w tej dziedzinie i chciałem opisać jak najdokładniej mój problem
gcdreak

  1.  
  2. $sciezka = "upload";
  3. $lista=array();
  4. $katalog = opendir($sciezka);
  5. while ($plik = readdir($katalog)) {
  6. if (($plik<>".")&&($plik<>"..")) if(!is_dir($sciezka.$plik))
  7. $lista[]=$plik;
  8. }
  9. closedir($katalog);
  10. sort($lista);
  11. for ($i=0;$i<count($lista);$i++) {
  12. echo "<br><a href=\"/$sciezka/donwload.php?file=$lista[$i]">$lista[$i]</a>";
  13. }


  1. $file = $_GET['file'];
  2.  
  3. if (file_exists($file)) {
  4. header('Content-Description: File Transfer');
  5. header('Content-Type: application/octet-stream');
  6. header('Content-Disposition: attachment; filename='.basename($file));
  7. header('Content-Transfer-Encoding: binary');
  8. header('Expires: 0');
  9. header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
  10. header('Pragma: public');
  11. header('Content-Length: ' . filesize($file));
  12. readfile($file);
  13. }
mario_biedronka
coś dalej nie tak jest w tym kodzie wyskakuje mi jakiś syntax error związany ze znakiem < w 12linni tego pierwszego kodu co tutaj kolega podał przy wcześniejszym mi nie wyżucało errorów. napisz ktoś mi proste instrukcję co i ja dziękuję

to pomoże jakiś dobry user tego forum ?
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.