Як выкарыстоўваць PHP для фарсіравання загрузкі файлаў

Калі вы думаеце пра гэта, вэб - браўзэры дзіўныя подзвігі складаных праграм. Яны з'яўляюцца інструментамі, якія з'яўляюцца часткай нашага паўсядзённага жыцця - выкарыстоўваецца для ўсяго, ад праверкі на статусе сяброў і сям'і, каб мець зносіны з тымі людзьмі, каб рабіць пакупкі, каб глядзець відэа, каб клапаціцца аб нашай фінансавай жыцця, і так шмат больш. Як шырока распаўсюджана, як браўзэры ў нашым жыцці, рэальнасць такая, што большасць людзей не цэняць, наколькі карысныя яны на самой справе.

За кулісамі

Адзінае, што браўзэры за кулісамі паспрабаваць зрабіць усё клікі, якія чалавек робіць падчас сеансу прагляду на самай справе нешта зрабіць. Гэта азначае, што ўсё больш і больш тыпаў файлаў могуць быць адкрыты для прагляду непасрэдна ў вэб-браўзэрах.

Вялікую частку часу, гэта добра, бо гэта можа быць вельмі складана націснуць на спасылку на дакумент, які вы хочаце прачытаць і затым чакаць яго загрузкі і, нарэшце, адкрытыя на вашым кампутары. Гэта засмучэнне дасягае наступны ўзровень, калі вы чакаеце гэтай загрузкі, толькі каб выявіць, што вы не маеце правільную праграму, каб адкрыць дакумент. У гэтыя дні, што рэдка бывае, таму што браўзэры, сапраўды, адлюстраваць дакумент непасрэдна ў лінію. Напрыклад, PDF-файлы не загружаюцца па змаўчанні. Замест гэтага яны адлюстроўваюць непасрэдна ў вэб-браўзэры падобна таму, як вэб-старонка будзе адлюстроўвацца.

Што рабіць, калі ў вас ёсць файл, які вы хочаце, каб людзі загрузкі замест прагляду непасрэдна ў вэб-браўзэры?

Калі гэта HTML - файл або PDF , вы не можаце проста размясціць спасылку на гэты дакумент , таму што (як мы толькі пакрытыя) вэб - браўзэр адкрывае гэтыя дакументы аўтаматычна і адлюстроўвае іх у лінію. Для таго, каб гэтыя файлы загрузіць на кампутар чалавека, замест гэтага вы павінны зрабіць некаторыя фокусы з дапамогай PHP.

PHP дазваляе змяняць HTTP - галаўныя файлы , якія вы пішаце.

Гэты працэс робіць гэта так, што вы можаце прымусіць файл для загрузкі, звычайна браўзэр будзе загружаць у адным акне. Гэта ідэальна падыходзіць для файлаў, такіх як PDF-файлы, файлы дакументаў, малюнкаў і відэа, якія вы хочаце, каб вашыя кліенты загрузкі, а не спажываць у Інтэрнэце прама з браўзэра.

Вам спатрэбіцца PHP на вэб - сэрвэры , дзе вашыя файлы будуць арганізавана, файл будзе загружаны, і тып MIME файла ў пытанні.

Як гэта зрабіць

  1. Загрузіць файл, які вы хочаце зрабіць даступным для загрузкі на вэб-сервер. Напрыклад, у вас ёсць PDF файл, які вы хочаце, каб людзі загрузкі пры націску на спасылку. Вы б спачатку ўкласці гэты файл у сераду хостынгу вашага сайта.
    huge_document.pdf
  2. Рэдагаваць новы PHP-файл у вашым вэб-рэдактары - для прастаты выкарыстання, мы рэкамендуем называць яго такім жа імем, што загружаны файл, толькі з пашырэннем .php. Напрыклад:
    huge_document.php
  3. Адкрыйце PHP блок у дакуменце:
  4. На наступным радку задайце загаловак HTTP:
    загаловак ( "Content-дыспазіцыя: ўкладанне; імя файла = huge_document.pdf");
  5. Затым ўсталюйце тып MIME файла:
    загаловак ( "Content-тып: / PDF");
  6. Пакажыце файл, які вы хочаце спампаваць:
    ReadFile ( "huge_document.pdf");
  7. Затым зачыніце PHP блок і захавайце файл:
    ?>
  1. Ваш файл PHP павінен выглядаць наступным чынам:
    загаловак ( "Content-дыспазіцыя: ўкладанне; імя файла = huge_document.pdf");
    загаловак ( "Content-тып: / PDF");
    ReadFile ( "huge_document.pdf");
    ?>
  2. Спасылка на файл PHP ў якасці спасылкі для загрузкі з вэб-старонкі. Напрыклад:
    Спампаваць мой велізарны дакумент (PDF)

Там не павінна быць ніякіх прабелаў або карэтка вяртаецца ў любым месцы файла (акрамя як пасля коскі). Пустыя радкі прымусіць PHP па змаўчанні для MIME тып тэксту / html і файл не будзе загружаны.