Autor Zpráva
CATerPILAR
Profil
Ahoj,
jak by se dalo udělat aby se po kliknutí nabídl ke stažení soubor s příponou HTML?
Nekdy jsem to četl, ale už nevím jak to bylo.

<a href="soubor.html">stáhnout</a>
koudi
Profil
Mělo by to jít přes PHP a hlavičky.
Casero
Profil
CATerPILAR
joi samozřejm že to dse..stačí to směrovat třeba na stahni.php a tam dat do hlavičky že jde o soubor který se má stáhnout
CATerPILAR
Profil
Myslel jsem spiš nějaký konkrétní příklad. Takhle teoreticky to vím taky.
gaminn
Profil *
Zadej do nějakého vyhledávače magickou formulku, třeba php stažení souboru.
Casero
Profil
CATerPILAR
<?php

$soubor = $_GET["soubor"].".pdf";

header("Content-Description: File Transfer");
header("Content-Type: application/force-download");
header("Content-Disposition: attachment; filename=\"$soubor\"");

readfile ($soubor);
?>

když tak si to uprav ...předávám to v adrese
peta
Profil *
Nestacilo by tam pripsat type="text/html" ?
pripadne <object type="text/html">
tiso
Profil
<OT> peta
O čom? Opäť pcháš nos do vecí ktorým nerozumieš?</OT>
djlj
Profil
Nebo by to taky šlo řešit pomocí htaccess. Soubor by byl ve zvláštní složce, u které by se nastavilo, že při koncovce html se má použít ta a ta hlavička...
Joker
Profil
Jen pro zajímavost: Ten MIME typ application/force-download (viděl jsem i application/x-force-download) má nějaký smysl, nebo se prostě uvede neexistující MIME typ, který prohlížeč nepozná a nabídne soubor ke stažení?
Dero
Profil
Jen pro zajímavost: Ten MIME typ application/force-download (viděl jsem i application/x-force-download) má nějaký smysl, nebo se prostě uvede neexistující MIME typ, který prohlížeč nepozná a nabídne soubor ke stažení?

Joker

Správně má být uveden "application/x-force-download", kde "x-" znamená "experimental". Takový MIME typ není zaregistrován a prefix "x-" říká, že slouží pouze k testovacím a/nebo lokálním účelům. Trik je opravdu pouze v tom, že prohlížeč MIME application/x-force-download nezná a tedy nabídne soubor ke stažení. Jakýkoliv jiný nesmysl povede ke stejnému výsledku.

Ke stejnému účelu však lze úspěšně použít také registrovaný application/octet-stream.
Toto téma je uzamčeno. Odpověď nelze zaslat.

0