Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Download przez header i google analitycs
Forum PHP.pl > Forum > PHP
m4c
Witam, udostepnilem do pobrania pliki, poprzez header:

  1. <?php
  2. $filename = "jakis_plik.pdf";
  3.  
  4. header("Pragma: public");
  5. header("Expires: 0"); // set expiration time
  6. header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
  7.  
  8. header("Content-Type: application/force-download");
  9. header("Content-type: application/pdf");
  10. header("Content-Type: application/octet-stream");
  11. header("Content-Type: application/download");
  12. header("Content-Disposition: attachment; filename=".basename($filename).";");
  13.  
  14. header("Content-Transfer-Encoding: binary");
  15. header("Content-Length: ".filesize($filename));
  16.  
  17. @readfile($filename);
  18. exit(0);
  19. ?>


Chcialbym w tym pliku, umiescic kod Google Analitysc. Probowalem tak:

<html>

{kod google}

<?
{kod headera}
?>

</html>

...i nic, widac krzaki zamiast pdfa.

Probowalem tez wstawic kod googla w echo - tez nic z tego.

Co robic??
sowiq
Źle kombinujesz. Jedynym wyjściem jest zrobienie stronki HTML z informacją, że za chwilę nastąpi przekierowanie do pliku oraz kodem GA. Nie możesz żądać, żeby przeglądarka odpaliła HTML, JS i pdf jednocześnie.
m4c
Tak myslalem, ale sie ludzilem... Moge prosic, o rozszerzenie tematu i w jaki sposob zbudowac plik z przekierowaniem do pliku bez headera i mozliwoscia umieszczenia kodu GA?
sowiq
Załóżmy, że kod, który podałeś jest w pliku download.php

W pliku pobierz.php robisz coś w stylu:

  1. <meta http-equiv="refresh" content="2;url=download.php">
  2. </head>
  3. Za chwilę nastąpi przekierowanie do pliku. Jeżeli nie nastąpiło w ciągu X sekund, <a href="download.php">kliknij tu</a>.
  4. {kod_GA}
  5. </body>
  6. </html>


Na stronie zamiast do pliku download.php linkujesz do pobierz.php.
m4c
Pomagas już poszedł! Dziękuję!
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.