Si të përdorni PHP për të detyruar një shkarko skedari

Kur mendoni për këtë, shfletuesit e internetit janë veprime të mahnitshme të programimit kompleks. Ato janë mjete që janë pjesë e jetës sonë të përditshme - përdoren për çdo gjë, nga kontrollimi i statusit të miqve dhe familjes, komunikimi me këta njerëz, blerja, shikimi i videove, kujdesi për jetën tonë financiare dhe aq shumë më shumë. Si mbizotëruese si shfletuesit janë në jetën tonë, realiteti është se shumica e njerëzve nuk e vlerësojnë se sa të dobishme janë ata.

Mbrapa skenave

Një gjë që shfletuesit bëjnë prapa skenave është të përpiqet të bëjë të gjitha klikimet që një person bën gjatë një sesioni të shfletimit në fakt të bëjë diçka. Kjo do të thotë që gjithnjë e më shumë lloje të skedarëve mund të hapen për shikimin e drejtpërdrejtë në shfletuesit e uebit.

Pjesa më e madhe e kohës, kjo është një gjë e mirë, pasi mund të jetë shumë zhgënjyese për të klikuar në një lidhje me një dokument që dëshironi të lexoni dhe pastaj duhet të presë që të shkarkohet dhe më në fund të hapet në kompjuterin tuaj. Kjo zhgënjim arrin nivelin tjetër kur prisni për këtë shkarkim, vetëm për të zbuluar se nuk keni programin e duhur për të hapur dokumentin. Këto ditë, që ndodh rrallë sepse shfletuesit, në të vërtetë, e shfaqin dokumentin direkt në linjë. Për shembull, skedarët PDF nuk shkarkohen sipas parazgjedhjes. Në vend të kësaj, ata shfaqin drejtpërdrejt në shfletuesin e internetit të ngjashëm me atë se si do të shfaqet një faqe interneti.

Çfarë ndodh nëse keni një skedar që dëshironi të shkarkoni njerëzit në vend që ta shikojnë direkt në shfletuesin e uebit?

Nëse është një skedar HTML ose një PDF , nuk mund të vendosni vetëm një lidhje me atë dokument sepse (siç e kemi mbuluar vetëm) një shfletues web i hap këto dokumente automatikisht dhe i shfaq ato në linjë. Për t'i bërë këto skedarë të shkarkohen në kompjuterin e një personi, ju duhet të bëni disa mashtrime duke përdorur PHP.

PHP ju lejon të ndryshoni headers HTTP të skedarëve që po shkruani.

Ky proces e bën atë në mënyrë që të mund të detyrosh një skedar që të shkarkohet që normalisht shfletuesi do të ngarkonte në të njëjtën dritare. Kjo është e përkryer për skedarët si PDF-të, skedarët e dokumenteve, imazhet dhe videot që dëshironi të shkarkoni klientët tuaj në vend që të konsumojnë në internet direkt nga shfletuesi.

Ju do të duhet PHP në web server ku do të strehohen skedarët tuaj, një skedar që duhet të shkarkohet dhe llojin MIME të skedarit në fjalë.

Si ta Bëni Këtë

  1. Ngarko skedarin që dëshironi të bëni në dispozicion për shkarkim në web serverin tuaj. Për shembull, thuhet se ke një skedar PDF që dëshiron që njerëzit të shkarkojnë kur klikojnë një lidhje. Ju së pari do të ngarkoni atë skedar në mjedisin hosting të faqes suaj.
    huge_document.pdf
  2. Ndryshoni një skedar të ri PHP në redaktorin tuaj të uebit - për lehtësinë e përdorimit, ne rekomandojmë emërtimin e tij me të njëjtin emër si skedari i shkarkuar, vetëm me .php. Për shembull:
    huge_document.php
  3. Hapni bllokun PHP në dokumentin tuaj:
  4. Në vijën tjetër, vendosni header HTTP:
    header ("Përmbajtja e përmbajtjes: shtojcë; filename = large_document.pdf");
  5. Pastaj vendosni llojin MIME të skedarit:
    header ("Content-type: application / pdf");
  6. Tregojeni skedarin që dëshironi të shkarkoni:
    ReadFile ( "huge_document.pdf");
  7. Pastaj mbyllni bllokun PHP dhe ruani skedarin:
    ?>
  1. Dosja juaj PHP duhet të duket kështu:
    header ("Përmbajtja e përmbajtjes: shtojcë; filename = large_document.pdf");
    header ("Content-type: application / pdf");
    ReadFile ( "huge_document.pdf");
    ?>
  2. Lidhu me skedarin tuaj PHP si një lidhje shkarkimi nga një faqe interneti. Për shembull:
    Shkarkoni dokumentin tim të madh (PDF)

Nuk duhet të ketë hapësira apo kthesa të kudo në dosje (përveç pas një gjysmë zorrash). Linjat e zbrazëta do të bëjnë që PHP të parazgjedhur tek teksti / html i llojit MIME dhe skedari yt nuk do të shkarkohet.