Mara nyingi inakuwa muhimu kuhamisha data kutoka kwa kivinjari cha mteja kwenda kwenye faili ya seva na hati ya kusindika data hii. Wacha tuangalie jinsi ya kuandaa uhamishaji wa vigezo vya php kwenye hati.
Ni muhimu
Ujuzi wa kimsingi wa lugha za PHP na HTML
Maagizo
Hatua ya 1
Kusafirisha data kutoka kwa fomu za wavuti kwenye HTTP (Itifaki ya Uhamisho wa HyperText) njia mbili hutolewa - GET na POST. Zinatofautiana kwa njia ambayo hupitishwa kutoka kwa programu ya mteja (kivinjari) hadi kwa programu ya seva (hati inayoweza kutekelezwa ya php). Njia ya GET hutumia upau wa anwani kwa hili. Hiyo ni, majina na maadili ya vigeuzi vilivyopitishwa vinaambatanishwa moja kwa moja kwa anwani ya hati (au URL - Kiunga cha Rasilimali Sare) kupitia alama ya swali (?). Kwa mfano, URL inaweza kuonekana kama hii:
Hapa, hati ya utafutaji.php imepitishwa kwa jina la kutofautisha lenye thamani ya 30, Window mpya inayobadilika na thamani ya 1, na salama inayobadilika na thamani ya kuzimwa. Seva, ikiwa imepokea ombi kama hilo, na "?" hutenganisha anwani ya faili, na hugawanya kila kitu kingine kwa jozi ya majina na maadili yanayobadilika. Jozi zinazosababishwa zimejazwa katika safu ya $ _GET, ambayo hati ya php iliyoainishwa kwenye anwani itaweza kuzitoa. Kwa fomu yake rahisi, fomu ya html ya kutuma data hii kutoka kwa kivinjari hadi kwenye seva ukitumia njia ya GET inaweza kuonekana kama hii:
Na hati rahisi ya php ya kupokea data hii ni kama hii:
<php
$ num = $ _GET ['num'];
$ newwindow = $ _GET ['newwindow'];
$ salama = $ _GET ['salama'];
?>
Ubaya muhimu zaidi wa kupitisha anuwai kwa kutumia njia ya GET:
- idadi ndogo ya data, kwani urefu wa URL hauwezi kuzidi herufi 255;
- sio herufi zote za html-code zinaweza kuhamishwa na njia hii;
- data iliyoambukizwa inaonekana kwa mtumiaji, ambayo haikubaliki kila wakati kutoka kwa mtazamo wa usalama;
Hatua ya 2
Usumbufu na mapungufu haya yanaweza kuepukwa kwa kutumia njia nyingine - POST. Inatumia maeneo maalum ya pakiti za mtandao kuhamisha data - vichwa. Katika mambo mengine yote, tofauti kati ya njia hizi ni ndogo - katika njia ya hapo juu ya kutuma data, jina la njia tu litabadilika:
Na katika hati ya php, jina tu la safu ya data:
<php
$ num = $ _POST ['num'];
$ newwindow = $ _POST ['newwindow'];
$ salama = $ _POST ['salama'];
?>