• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

wstawianie pliku do pobrania

Object Storage Arubacloud
0 głosów
310 wizyt
pytanie zadane 12 sierpnia 2021 w HTML i CSS przez poczatkujacy-prog Początkujący (410 p.)

Witam 

Mam problem Mianowice, gdy dam upload danego pliku to mi wchodzi na stronę moją download i NWN, jak zrobić, żeby pobrał się mój plik, którego wysłałem na folder upload.

muj kod upload.php

<?php 

  $httpHost = 'http://localhost/php';
$uploadDir = 'C:/xampp/htdocs/php/upload';
$ext = pathinfo($_FILES['file']['name'], PATHINFO_EXTENSION);
$filename = 'upload_'.uniqid().'.'.$ext;
$uploadedFilePath = $uploadDir.'/'.$filename;
$uploadedFileUrl = $httpHost.'/'.basename($uploadDir).'/'.$filename;
if(move_uploaded_file($_FILES['file']['tmp_name'], $uploadedFilePath)) {
	 $host  = $_SERVER['HTTP_HOST'];
$uri   = rtrim(dirname($_SERVER['PHP_SELF']), '/\\');
$extra = 'index7.php';
   echo 'Ścieżka do pliku: '.$uploadedFilePath;
   header("Location: http://$host$uri/$extra");
  
}
?>

mój kod index7.php (ten php jest odpowiedzalny za pobieranie)

</ul>
</nav>
</section>
</header>
<main>
<article>
<section>
<div class="plik">
           <header>
		   <h3>Download</h3>
		  
		 <a href="(Ścieżka do pliku)" download> download</a>
		  
		   </header>
		   </div>
</section>

</article>
</main>
</body>
</html>

 

1
komentarz 12 sierpnia 2021 przez wizarddos Nałogowiec (25,930 p.)

Lepiej abyś kod który dostałeś najpierw (uwaga słowo klucz) ZROZUMIAŁ a nie na ślepo kopiujesz. Bo tutaj trzeba choć trochę zaadaptować to co ktoś podesłał do swoich potrzeb a nie na ślepo kopiować

komentarz 12 sierpnia 2021 przez poczatkujacy-prog Początkujący (410 p.)
A gdzie znajdę informacje
komentarz 12 sierpnia 2021 przez wizarddos Nałogowiec (25,930 p.)
o jakie informacje ci chodzi?
komentarz 12 sierpnia 2021 przez poczatkujacy-prog Początkujący (410 p.)
Do mojego pytania
komentarz 12 sierpnia 2021 przez wizarddos Nałogowiec (25,930 p.)
Wyjaśnisz dokładniej? Bo dalej niezbyt rozumiem?
komentarz 12 sierpnia 2021 przez poczatkujacy-prog Początkujący (410 p.)
Że jak dam upload to mi wchodzi na stronę download tam gdzie mam pocisk do pobrania danego pliku
komentarz 12 sierpnia 2021 przez wizarddos Nałogowiec (25,930 p.)

no to tak

nr1.

zamiast

$uri   = rtrim(dirname($_SERVER['PHP_SELF']), '/\\');
$extra = 'index7.php';
   echo 'Ścieżka do pliku: '.$uploadedFilePath;
   header("Location: http://$host$uri/$extra");

daj po prostu

$_SESSION['filename'] = $filename;
header("Location: 7index.php");

 

nr2

W atrybucie href linku pobierającego wstaw właściwą scieżkę czyli <?php echo 'uploads/'. $_SESSION['filename'] ?> a nie  "(ścieżka do pliku)"

 

komentarz 12 sierpnia 2021 przez poczatkujacy-prog Początkujący (410 p.)

mam jakiś błąd

Warning: Undefined variable $_SESSION in C:\xampp\htdocs\php\index7.php on line 45

Warning: Trying to access array offset on value of type null in C:\xampp\htdocs\php\index7.php on line 45
uploads/ ?>

1
komentarz 12 sierpnia 2021 przez Comandeer Guru (601,110 p.)

@wizarddos, proszę na przyszłość wstawiać odpowiedź jako odpowiedź (regulamin, pkt. II.4).

1 odpowiedź

0 głosów
odpowiedź 12 sierpnia 2021 przez VBService Ekspert (253,300 p.)

Brakuje Tobie skryptu, który by "generował" link, coś w stylu np.:

...

<section>
  <div class="plik">
    <header>
      <h3>Download</h3>           
      <a href="get_file.php?id=aaa1" download> download 1</a> 
      <a href="get_file.php?id=aaa2" download> download 2</a>
      ...           
    </header>
  </div>
</section>

...

 

możesz także po prostu pokazać zawartość całego folderu upload jak zawiera tylko pliki do pobrania.

komentarz 12 sierpnia 2021 przez VBService Ekspert (253,300 p.)

tylko się domyślam, że zawiera wszystkie jakie upload-wałeś do tej pory.

komentarz 12 sierpnia 2021 przez poczatkujacy-prog Początkujący (410 p.)
A dało by się żeby tylko był ten plik który przesłałem
komentarz 12 sierpnia 2021 przez VBService Ekspert (253,300 p.)
edycja 12 sierpnia 2021 przez VBService

np. "filtrowanie" po dacie.

<section>
  <div class="plik">
    <header>
      <h3>Download</h3>
<?php           
      $katalog = './upload/';
      $data_dzisiaj = date('Y-m-d');
      foreach (glob("{$katalog}*.???") as $plik) {
          // np.: dzisiejsza data - pokaż wszystkie pliki, upload dzisiaj
          if ($data_dzisiaj == date('Y-m-d', filemtime($plik))) {
              echo '<a href="'.$plik.'" download>'.basename($plik).'</a>';
          }
      }
?>       
    </header>
  </div>
</section>

 

komentarz 13 sierpnia 2021 przez poczatkujacy-prog Początkujący (410 p.)
przywrócone 13 sierpnia 2021 przez poczatkujacy-prog
A dało by się żeby plik pokazywał się nie co dzień osobno ale co minutę?

 

Bo teraz jak w jeden dzień prześle więcej niż jeden plik to mi się pokazuje więcej a ja chciałbym tylko jeden na dany plik upload
komentarz 13 sierpnia 2021 przez poczatkujacy-prog Początkujący (410 p.)

@VBService, 

?

Podobne pytania

0 głosów
2 odpowiedzi 927 wizyt
pytanie zadane 20 lipca 2015 w PHP przez Adrian1999 Nałogowiec (34,570 p.)
0 głosów
4 odpowiedzi 706 wizyt
0 głosów
1 odpowiedź 99 wizyt
pytanie zadane 19 września 2018 w PHP przez Ignobiles Obywatel (1,800 p.)

92,568 zapytań

141,420 odpowiedzi

319,622 komentarzy

61,954 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...