Hvernig á að nota PHP til að þvinga skráarsendingu

Þegar þú hugsar um það, eru vefur flettitæki ótrúleg feats af flóknum forritun. Þau eru verkfæri sem eru hluti af daglegu lífi okkar - notuð fyrir allt frá því að athuga stöðu vina og fjölskyldu, að hafa samskipti við þá, að kaupa, horfa á myndskeið, sjá um fjárhagslegt líf og svo mikið meira. Eins og algengt er þegar vafrar eru í lífi okkar, þá er raunin sú, að flestir þakka ekki hve gagnlegt þau eru í raun.

Bak við tjöldin

Eitt sem vafrar gera á bak við tjöldin er að reyna að gera allar smelli sem maður gerir á meðan vafrað er í raun að gera eitthvað. Þetta þýðir að fleiri og fleiri skráargerðir geta verið opnaðar til að skoða beint í vafranum.

Flest af þeim tíma er þetta gott, því það getur verið mjög pirrandi að smella á tengil á skjal sem þú vilt lesa og þá þarf að bíða eftir því að hlaða niður og loksins opna á tölvunni þinni. Þessi gremju nær til næsta stig þegar þú bíður eftir þessari niðurstöðu, aðeins til að komast að því að þú hafir ekki rétt forrit til að opna skjalið. Þessa dagana gerist það sjaldan vegna þess að vafrar gera það, sannarlega, að sýna skjalið beint innlínur. Til dæmis sækja PDF skrár ekki sjálfgefið. Þess í stað sýna þau beint í vafranum svipað og hvernig vefsíða myndi birtast.

Hvað ef þú ert með skrá sem þú vilt að fólk hlaði niður í stað þess að skoða það beint í vafranum?

Ef það er HTML- skrá eða PDF , getur þú ekki bara sent tengil á það skjal vegna þess að (eins og við höfum bara fjallað) opnar vafrinn þau skjöl sjálfkrafa og birtir þær inline. Til þess að hægt sé að hlaða þessum skrám á tölvu einstaklingsins þarftu að gera nokkrar trickery með PHP.

PHP leyfir þér að breyta HTTP hausnum af skrám sem þú ert að skrifa.

Þetta ferli gerir það þannig að þú getur þvingað skrá til að hlaða niður sem venjulega vafrinn myndi hlaða í sama glugga. Þetta er fullkomið fyrir skrár eins og PDF skjöl, skjal skrá, myndir og myndskeið sem þú vilt að viðskiptavinir þínir hlaði niður frekar en að neyta á netinu beint úr vafranum.

Þú þarft PHP á vefþjóninum þar sem skrárnar þínar verða hýst, skrá sem á að hlaða niður og MIME-gerð viðkomandi skráar.

Hvernig á að gera þetta

  1. Hladdu upp skrána sem þú vilt fá tiltæk til niðurhals á vefþjóninn þinn. Til dæmis segðu að þú hafir PDF-skrá sem þú vilt að fólk hlaði niður þegar þeir smella á tengil. Þú myndir fyrst senda þessa skrá á hýsingarumhverfi vefsvæðis þíns.
    big_document.pdf
  2. Breyta nýjum PHP skrá í vefritaranum þínum - til að auðvelda notkun mælum við með því að nefna það sama nafn og niðurhala skrána, aðeins með viðbótinni .php. Til dæmis:
    big_document.php
  3. Opnaðu PHP blokkina í skjalinu þínu:
  4. Í næstu línu skaltu stilla HTTP hausinn:
    haus ("Content-disposition: attachment; filename = huge_document.pdf");
  5. Settu síðan MIME-gerð skráarinnar:
    haus ("Efnisgerð: umsókn / pdf");
  6. Benda á skrána sem þú vilt hlaða niður:
    readfile ("huge_document.pdf");
  7. Lokaðu síðan PHP blokkinni og vistaðu skrána:
    ?>
  1. PHP skráin þín ætti að líta svona út:
    haus ("Content-disposition: attachment; filename = huge_document.pdf");
    haus ("Efnisgerð: umsókn / pdf");
    readfile ("huge_document.pdf");
    ?>
  2. Tengdu við PHP skrána þína sem hlekk á hleðslu úr vefsíðu. Til dæmis:
    Hlaða niður stóru skjalinu mínu (PDF)

Það ætti ekki að vera neitt bil eða flutningur skilar hvar sem er í skránni (nema eftir hálf-ristill). Eyða línur munu valda PHP til að vanræksla MIME tegund texta / html og skráin mun ekki hlaða niður.