[Powered by Google Translate] [PHP Maendeleo ya Mtandao] [Tommy MacWilliam] [Hii ni CS50.] [CS50.TV] Katika video hii, tutaweza kujifunza kuhusu PHP kwa ajili ya maendeleo ya mtandao. PHP ni lugha scripting ambayo inaweza kutumika kutekeleza tovuti kwenye mtandao wa kompyuta. server mtandao kimsingi ni mashine kujitolea na kutoa maudhui ambazo zinaweza kupatikana kupitia mtandao. Wakati Nenda kwenye ukurasa wa mtandao kama Facebook.com / home.php code katika faili iitwayo home.php ambayo anaishi katika Picha mtandao wa kompyuta mahali fulani itakuwa imetekelezwa juu ya kwamba server. Kanuni hii kuna uwezekano kuzalisha baadhi ya pato ambayo kwa upande kutumwa kutoka server mtandao browser yako. Tutaweza kutumia CS50 appliance kama mtandao wa kompyuta. Mashine yako pengine si kuwa karibu kama nguvu kama mashine katika kituo cha data Facebook, lakini itabidi hakuna tatizo kutumia kwa ajili ya maendeleo ya mtandao. Wakati sisi navigate kwa URL kama http://localhost/hello.php sisi configure appliance kupitia maombi ya kuitwa server Apache HTTP kuangalia kwa faili inayoitwa hello.php ndani ya nyumba / jharvard / vhosts / localhosts / html by default. Kama faili kwamba ipo kisha Apache kutumia PHP mkalimani kutekeleza kanuni PHP katika hello.php. Kama faili kwamba haipo kisha Apache kutupa makosa si kupatikana au kosa 404, ambayo umefanya pengine kuonekana wakati kuvinjari mtandao. Hebu tuangalie hello.php. Tunaweza kuona hapa kwamba hello.php inazalisha line ishara ya pato. Wakati sisi mbio hello.php katika mstari amri kupitia php hello.php pato kwamba kuchapishwa kwa wastaafu. Sasa, wakati sisi kupata faili hii kupitia URL katika kivinjari matokeo yake watapelekwa mtandao browser, hivyo viongozi wa URL, http://localhost/hello.php, tunaweza kuona pato katika mtandao wetu browser. Hebu jaribu kuongeza printf mwingine hujambo dunia programu yetu. Okay, hebu kichwa nyuma kivinjari na kuona nini tuna. Kuvutia. Badala ya uchapishaji line mwingine juu ya mstari yake mwenyewe, kama wewe ingekuwa kuonekana katika terminal, inaonekana kama got smushed kwenye mstari huo kama printf nyingine, mistari hivyo labda mpya kufanya kazi katika PHP. Kabisa. Kumbuka kwamba HTML ni kawaida kutumika kujenga kurasa za mtandao ambayo yanaweza kuonyeshwa na browsers mtandao. Si tu ni kamba Habari kutoka php HTML si halali, lakini kukumbuka kwamba hatuwezi kutumia \ n tabia katika HTML kujenga line ya mapumziko. Badala ya tu outputting pato HTML string hebu halali. Kwa kutumia vitambulisho aya kila ya simu yetu printf kuonyeshwa kwenye line yake mwenyewe, hivyo sasa wakati sisi kutembelea URL akizungumzia valid.php http://localhost/valid.php tunaona pato kwamba sisi ni kuangalia kwa. Sasa, kama sisi kuona chanzo cha ukurasa hii tunaweza kuona kwamba sisi ni sasa kuangalia HTML halali, ambayo sisi iliyoundwa kutoka kwa PHP. Kuweka yote ya HTML yetu ndani ya wito printf ni bila shaka kwenda kupata kweli annoying. Kwa bahati tunaweza kwa urahisi kuchanganya HTML na PHP katika huo. php file. Kumbuka, yote ya PHP code yetu lazima iliyoambatanishwa ndani ya . Kitu chochote ambacho si iliyoambatanishwa ndani ya delimiters haya mapenzi tu kutumwa kama pato browser badala ya kunyongwa. Hiyo ina maana tunaweza kufanya kitu kama hiki. Tunaweza tu kuandika HTML ndani ya php yetu file. na kisha kuingiza PHP vitalu popote tunatarajia baadhi ya kanuni php wauawe. Hapa sisi kufafanua vigezo chache juu ya faili, na baadaye sisi magazeti yao nje ya ndani ya HTML yetu. Sasa kama sisi kutembelea URL huu, http://localhost/mixed.php tunaweza kuona PHP yetu tathmini ndani ya HTML yetu. Sasa hebu tuangalie ni jinsi gani tunaweza kupita data kati ya kurasa zetu mbalimbali PHP. Badala ya kusema tunaweza tu kusema . Hebu sasa tuangalie ni jinsi gani tunaweza kupita data kati ya kurasa zetu mbalimbali PHP. Njia moja tunaweza kufanya hivyo ni encode habari katika URL ya ukurasa. Wakati kuvinjari mtandao, unaweza kuwa na niliona kwamba baadhi ya URL vyenye? ikifuatiwa na kamba zenye ampersands na ishara sawa. Hii ni sehemu ya URL inajulikana kama kamba swala, na hii inaruhusu kwa ufanisi kupita hoja ya PHP yako script. kamba swala lina thamani jozi muhimu, kama vile meza hash. ishara sawa hutenganisha muhimu na thamani yake sambamba wakati ampersands tofauti jozi. URL kwamba inaonekana kama http://localhost/get.php?foo=bar&baz=qux ina 2 jozi thamani muhimu katika kamba swala. foo muhimu ramani kwa bar thamani, na bazi muhimu ramani kwa thamani qux. Tunaweza kwa urahisi kupata huduma hizi za thamani jozi muhimu kutumia variable maalum katika PHP, $ _GET. $ _GET Ni safu associative kwamba ni moja kwa moja wakazi na data kamba swala. Hiyo ina maana kuwa kutokana na hii URL $ _GET ["foo"] itakuwa sawa na kamba bar. Hebu tuangalie get.php kuona $ _GET katika action. Hapa sisi ni kutumia kazi kuitwa var_dump, ambayo wakipewa safu au kutofautiana nyingine magazeti ni kwa ajili yetu. Sasa kama sisi tu kupata http://localhost/get.php kisha tutaweza kuona safu tupu kwa sababu sisi si zinazotolewa kamba swala. Kama sisi kufanya kutoa kamba hoja kupitia http://localhost/get.php?foo=bar&baz=qux kisha tunaweza kuona kwamba $ _GET variable vyenye kamba swala muhimu ya thamani jozi. Lakini nini kama hatutaki kuweka data yetu ndani ya URL ya ukurasa? Kwa kiasi kikubwa cha data, hii inaweza kusababisha baadhi URLs pretty ugly kwamba ni kwenda kufanya shiny wetu tovuti kuangalia vilema. Tunaweza badala yake kuweka kamba swala ndani ya mwili ya maombi HTTP badala ya ombi ya URL. Basi tunaweza kutumia PHP ya $ _POST variable kupata thamani jozi muhimu. Njia moja ya kufanya hili ni kupitia fomu HTML. Hapa tuna rahisi HTML aina. Taarifa hapa kwamba njia sifa ya aina hii ni baada ya. Hii inaonyesha browser kuweka aina ya thamani jozi muhimu ndani ya mwili wa ombi badala ya URL. Kama tulikuwa na kutumia thamani kwa ajili ya kupata sifa hii kisha aina ya thamani jozi muhimu badala yake kwenda katika kamba swala, hivyo tunaweza kupata yao kupitia $ _GET tena. hatua sifa ya aina anaelezea kisakuzi ambapo kutuma data. Hapa wetu 2 pembejeo mambo na sifa jina. thamani ya sifa jina kutumika kama funguo ndani ya data yetu, na maadili ya pembejeo Nakala itakuwa maadili ya funguo hizo. Sasa hebu tuangalie post.php, file kwamba fomu hii ni kuwasilisha kwa. Tu kama sisi alifanya mbele, sisi ni tu kwa kuonyesha yaliyomo ya $ _POST kutofautiana. Hebu navigate kwa fomu kwa http://localhost/form.php. Sasa wakati sisi kuwasilisha fomu tunaweza kuona kwamba data kutoka form.php ni kupita kwa post.php bila appending kamba swala URL. Sasa tumeona njia 2 mbalimbali ya kupita data kati ya kurasa PHP, kupata na baada ya. Katika mifano yetu, sisi kutumika 2 aina mbalimbali za maombi HTTP. Kama unaweza kutarajia, kupata ombi ilitumika wakati sisi wakazi $ _GET Kutoka URL, na ombi baada ilikuwa kutumiwa wakati sisi wakazi $ _POST. Katika kubuni programu yako ya mtandao ni utawala bora wa thumb kutumia maombi kupata wakati programu yako tu kusoma data, na maombi baada ya wakati programu yako kuandika data. Kwa mfano, search query kusoma data kutoka programu ya yako, hivyo kupata ombi hufanya akili. Kwa upande mwingine, programu yako kuandika data kupitia kitu kama fomu ya usajili, hivyo ombi baada ingekuwa kufanya maana zaidi, na kwamba maelezo ya jumla ya baadhi ya mbinu tutaweza kutumia katika CS50 kuunda tovuti kwa kutumia PHP. Jina langu ni Tommy, na hii ni CS50. [CS50.TV]