Jinsi ya kutumia PHP Kuimarisha faili ya kupakua

Unapofikiri juu yake, vivinjari vya wavuti ni vitendo vya ajabu vya programu ngumu. Wao ni zana ambazo ni sehemu ya maisha yetu ya kila siku - kutumika kwa kila kitu kwa kuangalia hali ya marafiki na familia, kuwasiliana na watu hao, kufanya manunuzi, kutazama video, kutunza maisha yetu ya kifedha, na mengi zaidi. Kwa kawaida kama vivinjari vinapatikana katika maisha yetu, ukweli ni kwamba watu wengi hawajui jinsi wanavyofaa sana.

Nyuma ya Sanaa

Kitu kimoja ambacho vivinjari hufanya nyuma ya matukio ni kujaribu kufanya vifungo vyote ambavyo mtu hufanya wakati wa kikao cha kuvinjari hufanya kitu fulani. Hii inamaanisha kwamba aina nyingi za faili zinaweza kufunguliwa ili kutazama moja kwa moja kwenye vivinjari vya wavuti.

Mara nyingi, hii ni jambo jema, kwa kuwa inaweza kuwa kizito sana kubonyeza kiungo kwenye hati unayotaka kusoma na kisha kusubiri ili kupakua na hatimaye ufungue kwenye kompyuta yako. Uchanganyiko huo unafikia kiwango cha pili wakati unasubiri shusha hii, tu kugundua kuwa huna mpango sahihi wa kufungua hati. Siku hizi, ambayo mara chache hutokea kwa sababu browsers kufanya, kwa kweli, kuonyesha waraka moja kwa moja. Kwa mfano, faili za PDF hazipakuzi kwa default. Badala yake, huonyesha moja kwa moja kwenye kivinjari cha wavuti sawa na jinsi ukurasa wa wavuti utaonyesha.

Je, ikiwa una faili unataka watu kupakua badala ya kuiangalia moja kwa moja kwenye kivinjari cha wavuti?

Ikiwa ni faili ya HTML au PDF , huwezi tu kufungua kiungo kwa hati hiyo kwa sababu (kama tulivyoifunika) kivinjari cha wavuti kinafungua hati hizo kwa moja kwa moja na huzionyesha kwa inline. Kufanya faili hizi kupakue kwenye kompyuta ya mtu, wewe badala yake unahitaji kufanya udanganyifu fulani kwa kutumia PHP.

PHP inakuwezesha kubadilisha vichwa vya HTTP vya faili unazoandika.

Utaratibu huu hufanya hivyo ili uweze kulazimisha faili inayopakuliwa ambayo kawaida kivinjari ingeweza kupakia kwenye dirisha sawa. Hii ni kamili kwa faili kama PDFs, faili za hati, picha, na video ambazo unataka wateja wako kupakua badala ya kutumia mtandaoni moja kwa moja kutoka kwa kivinjari.

Utahitaji PHP kwenye seva ya wavuti ambapo faili zako zitahifadhiwa, faili itakayopakuliwa, na aina ya faili ya MIME katika swali.

Jinsi ya Kufanya Hii

  1. Pakia faili unayotaka kufanya inapatikana kwa kupakua kwenye seva yako ya wavuti. Kwa mfano, sema una faili ya PDF ambayo unataka watu kupakua wakati wanabofya kiungo. Ungependa kwanza kupakia faili hiyo kwenye mazingira yako ya mwenyeji wa tovuti.
    kubwa_document.pdf
  2. Badilisha faili mpya ya PHP kwenye mhariri wako wa wavuti - kwa urahisi wa matumizi, tunapendekeza kuwaita jina lile kama faili yako iliyopakuliwa, tu na .php ya upanuzi. Kwa mfano:
    kubwa_document.php
  3. Fungua blogu ya PHP katika hati yako:
  4. Kwenye mstari uliofuata, weka kichwa cha HTTP:
    kichwa ("Content-disposition: attachment; jina la faili = kubwa_document.pdf");
  5. Kisha kuweka faili ya MIME ya faili:
    kichwa ("Aina ya maudhui: programu / pdf");
  6. Weka kwa faili unayopakua:
    readfile ("kubwa_document.pdf");
  7. Kisha funga kizuizi cha PHP na uhifadhi faili:
    ?>
  1. Faili yako ya PHP inapaswa kuangalia kama hii:
    kichwa ("Content-disposition: attachment; jina la faili = kubwa_document.pdf");
    kichwa ("Aina ya maudhui: programu / pdf");
    readfile ("kubwa_document.pdf");
    ?>
  2. Unganisha faili yako ya PHP kama kiungo cha kupakua kutoka kwenye ukurasa wa wavuti. Kwa mfano:
    Pakua hati yangu kubwa (PDF)

Hatupaswi kuwepo nafasi au kurudi kwa gari kila mahali kwenye faili (isipokuwa baada ya nusu colon). Mstari usio wazi itawafanya PHP kuwa default kwa aina ya MIME maandishi / html na faili yako haitakupakua.