>> DOUG LLOYD: Kwa hiyo katika yetu video juu ya PHP syntax,
sisi aliongea mengi kuhusu jinsi PHP inaweza kutumika katika mstari amri
kuendesha programu kwa namna ambayo sisi ni pretty ukoo na kutoka C.
Lakini kama mimi pia alieleza kwa kuwa video, PHP
awali ya maendeleo kwa kutekeleza programu ya mtandao, tovuti.
Na hivyo katika video hii tuko kwenda kuzungumza kuhusu jinsi sisi
kutumia PHP katika mazingira ya maendeleo ya mtandao.
>> Tunajua, tayari, kutoka video wetu juu HTML,
kwamba tovuti ni kujengwa nje ya seti ya tags
kwamba semantically kufafanua muundo wa ukurasa wa mtandao.
Lakini tovuti ambazo ni kujengwa kwa HTML safi
wanakabiliwa na sana, kiwango cha juu mbaya sana.
>> Na kuonyesha kiwango cha juu hii, hebu fikiria yafuatayo.
Hivyo sasa nataka kujenga mtandao kwamba, wakati wowote ziara user hilo,
inanipa sasa muda Cambridge, Misa.,
kuonyesha ni kwa dakika karibuni.
Kama mimi alikuwa kufanya haki hii sasa, Mimi anaweza kusema kitu kama hiki.
Wakati wa sasa katika Cambridge-- hivyo nina Tags, vitambulisho kichwa, vitambulisho cheo,
mwili tags-- sasa wakati katika Cambridge ni 14:08,
uchapishaji nje wakati kijeshi.
>> Nini kinatokea kama ni sasa 02:09, 14:09?
Vizuri hadi sasa, pamoja na HTML, nina kwenda katika na mabadiliko hayo kwa 14:09.
Na kisha dakika moja baadaye, Nina mabadiliko hayo tena.
Na kama unaweza kufikiria, hiyo ni pengine kazi mbaya milele.
Wewe ni webmaster kwa ukurasa wa mtandao, na kila dakika, masaa 24 kwa siku,
unahitaji update wakati wa sasa na manually kufungua time.html na kubadilisha
tu kwamba snippet ya maadili ya kusema wakati wa sasa katika saa na dakika.
Kwamba pengine si sana matumizi mazuri ya rasilimali zetu,
kibinadamu na kuhesabu.
>> Nje kwamba wote ni HTML ni tuli kabisa.
Njia pekee unaweza update maudhui, kama tumekuwa tu kuonekana,
ni manually kufungua wale chanzo mafaili, hariri yao, na kuwaokoa.
Na kisha wakati mtumiaji refreshes ukurasa,
au ziara ukurasa kwa kwanza muda, wao itabidi kupata maudhui karibuni.
Lakini tu kwa sababu tumekuwa manually mwisho hilo.
>> Kama sisi kuanza kuchanganya baadhi PHP huko, kificho yetu inaweza kupata mengi zaidi rahisi.
Na tunaweza kuwa na njia kwa kurasa zetu kuwa nguvu, au update wenyewe,
bila kuhitaji maskini wetu webmaster katika mfano uliopita
kuwa manually uppdatering mambo.
Wanaweza kufanya hivyo moja kwa moja.
Hatuna kuingilia kati.
Tunaweza kupata usingizi.
Ambayo pengine ni jambo zuri kama unafanya mengi ya programu ya mtandao.
>> Hivyo katika CS50 IDE, sisi kukimbia mtandao wa kompyuta inayoitwa Apache.
Ni hutumika sana, wazi chanzo mfumo mtandao wa kompyuta.
Mfumo huu ina uwezo wa kutafsiri
PHP, ambayo ni kwenda kuwa na manufaa kama unataka kufanya programu yoyote PHP.
>> Na katika CS50 IDE, tuna amri kufanya hii rahisi sana kufanya,
apache50 kuanza.
Na kisha kwamba kufyeka njia, kufyeka kwa, kufyeka
alisema, hiyo ni njia ya kawaida ya kweli ikionyesha nini umefanya maalum hapa
ni njia ya pekee directory kwamba
wanataka kuwa mizizi tovuti, au ukurasa mizizi,
au folder ambayo mtandao wa kompyuta yako itaanza kuchunguza mafaili na kumtumikia
yao juu kwa wateja ambao kuwaomba.
Basi hebu pop juu ya CS50 IDE, tu kuonyesha, kweli haraka, jinsi hii matendo.
>> Hivyo hapa katika CS50 IDE, mimi niko katika directory aitwaye Wiki sifuri tisa.
Na mimi kuwa two-- nina kunyongwa LS amri tu
juu ya kuonyesha kwamba nina Directories mbili katika hapa, PHP,
ambayo ni seti ya files kwamba mimi kutumika katika PHP syntax video, na kisha PHP- mtandao,
ambayo ni seti ya files kwamba mimi wangependa kutumia katika video hii.
>> Na napenda kuanza mfano mtandao wa kompyuta
na yaliyomo ya folder PHP- mtandao kama mafaili ni kuwa aliwahi up.
Hivyo je, Mimi naenda kufanya nini?
Mimi kwenda aina ya nafasi apache50 kuanza, nafasi PHP, dash mtandao.
Hiyo ni njia ya saraka kutoka ambapo mimi sasa niko.
Kisha mimi hit Enter.
Ni kwenda kufanya kidogo ya mambo hapa.
Na kisha kwenda kusema, Apache kuanza kwa mafanikio.
Tovuti yako ni sasa inapatikana at-- na kisha kuna URL kwa tovuti.
Hivyo je, Mimi naenda kufanya nini?
Mimi nina kwenda kwa haraka nakala hii.
Na mimi nina kwenda kufungua up-- na Mimi itabidi zoom nje kidogo here--
Mimi nina kwenda kufungua tabo mpya katika Chrome.
Na mimi nina kwenda kutembelea URL hiyo.
>> Mimi nina kwenda hit Enter.
Ni kwenda kupakia.
Na mimi itabidi zoom nje tena.
Na tunaweza kuona hapa ni yaliyomo ya PHP yangu mtandao directory.
>> Hivyo sasa ni nini kinatokea kimsingi hapa ni, mfano wangu wa CS50 IDE
ni kuwahudumia up files haya kwa mtu yeyote ambaye maombi yao.
Na katika kipindi cha video hii, tutaweza kutatua ya
tuangalie kundi la hizi mafaili mbalimbali katika mazingira.
>> Mtihani kwamba Apache yako server ni kazi,
ambayo kwa ujumla kwenda kuwa kesi katika CS50 IDE,
lakini kama wewe kufanya hivyo kwa ujumla zaidi, na kuanza ujenzi wa mtandao yako mwenyewe
watumishi, kuna kweli aina ya kawaida ya Analog na,
"hello dunia," yaani kwa kawaida kutumika kwa ajili ya maendeleo PHP mtandao.
Ambayo ni kuwa na faili yenye tu code-- hii
PHP delimiter kuweka na PHP maelezo, mabano, semicolon katika kati ya.
Ambayo kimsingi ni maalumu PHP kazi kwamba anasema
nini toleo la PHP wewe ni mbio.
>> Hivyo katika CS50 IDE, nina kwamba faili inapatikana tu
kuonyesha nini hii bila kuangalia kama.
Hivyo mimi nina kuangalia ripoti yangu na PHP mfano wangu.
Apache mfano wangu ni mbio yaliyomo ya PHP-Mtandao.
Na nina file hapa aitwaye info.php.
>> Mimi nina kwenda click yake, kuvuta nje.
Hii ni nini wewe kwenda kuona, pretty much.
Hii ni kuwaambia tu mimi kwamba Apache server yangu ni kazi.
Na hii ni, inaonekana, toleo la PHP kwamba mimi nina mbio.
Hii ni Analog yangu kwa "hello dunia."
>> Hivyo najua mambo ni kazi.
Hivyo sisi ni vizuri kwenda.
Tunaweza kuendelea kutoka hapa.
>> Basi hebu kupitia upya kwamba wakati mfano tulikuwa
kuzungumza juu kwa webmaster yetu maskini ambaye alikuwa na update ukurasa mara kwa mara.
Hii inaweza kuwa kurekebisha kwa ajili ya jinsi Napenda kutekeleza mambo
ili webmaster hakuwa una kuweka uppdatering wakati.
Ingekuwa tu aina ya kutokea moja kwa moja.
>> Chini chini, HTML, ni pretty sawa, isipokuwa moja.
Lakini hapa mimi nimepata baadhi PHP juu.
I have, inaonekana, aitwaye huu kazi date_default_timezone_set.
>> Na hatuwezi kuzungumza juu ya mambo yote kazi hizi katika CS50,
kwa sababu PHP ina pengine mamia ya maelfu.
Hiyo inaweza kuwa ni kidogo ya exaggeration, lakini wanaweza kuwa.
Ni got mengi ya kazi kujengwa katika.
Na hivyo hii ni kazi inaonekana seti muda wangu eneo kama Marekani / Mashariki,
ambayo ni wakati eneo kwamba mimi nina sasa katika kufanya video hii.
>> Kisha mimi kufanya wito kwa kazi kuitwa, tarehe.
Na, inaonekana, mimi nina kuhifadhi YAKE wa kitu kinachoitwa, wakati.
Hivyo nini kinaendelea hapa?
>> Naam, kimsingi nini kinachotokea ni, mimi nina kufanya wito
kwa baadhi server kwamba ni kwenda kuniambia nini wakati kwa sasa ni.
Na mimi nina kuwabadili na muundo ya masaa, dakika, sekunde.
Na sababu ni mji mkuu H ni hii ni kwenda kunipa saa 24 wakati, si 12
saa wakati, ambayo itakuwa ni ndogo h.
Na mimi nina kuhifadhi tu kwamba katika variable kuitwa, wakati.
Hivyo kwamba mstari wa pili wa PHP pale, mwito wa kazi,
tarehe, ni kupata tu baadhi kamba, ambayo ni
anaenda kunipa tarehe, na muda, na kundi la habari nyingine.
Na hoja ya kwanza huko, kwamba YAKE, ni kuchimba tu sehemu muhimu
kwamba mimi huduma ya juu kwa mfano huu, ambayo ni saa, dakika, na ya pili.
Hivyo hiyo ni yote kinaendelea.
Hivyo mimi kuhifadhi kwamba katika kutofautiana $ huo.
Na kisha chini chini sana huko, mimi
na kwamba shorthand kwa uchapishaji nje wakati wa sasa.
Hivyo mimi nina kwenda tu na magazeti nini wakati wa sasa ni.
>> Basi hebu tuangalie hii katika CS50 IDE na kuona ni jinsi sisi ni sasa
kuokoa kwamba webmaster matatizo mengi.
Haki wote, hivyo hapa mimi tena nyuma katika orodha mizizi
ya Apache mfano wangu.
Na nina file hapa aitwaye time.php.
Mimi tu kwenda click juu ya hilo.
Na mimi itabidi kitabu juu, kwa sababu sisi ni zoomed katika pretty mbali.
Wakati wa sasa ni 14:20:34.
Hivyo mimi nina kufanya hivyo masaa, dakika, na sekunde.
Na siwezi kupata mahitaji ukurasa na kupata muda mpya.
--41.
Mimi nina kwenda kupata mahitaji ukurasa na kupata muda mpya, 44, 46, 47.
>> Kwa hiyo, mimi niko wazi si kubadilisha chochote mimi mwenyewe.
Mimi hapa ukurasa kuogea.
Hivyo siwezi kuwa nyuma huko kuihariri.
Na mimi ahadi yenu, sijui na makundi yoyote
ambao ni editing faili kwa niaba yangu upande.
>> Mimi nina kutumia tu kwamba PHP kazi, muda, kuzalisha wakati kwa ajili yangu
moja kwa moja.
Ili hata kama mimi nina usingizi, na mtandao wa kompyuta yangu ni mbio,
user ambaye ziara kwamba ukurasa ni bado kwenda kupata hasa wakati wa sasa.
Hivyo hiyo ni nzuri sana.
Nimekuwa alifanya tovuti yangu nguvu zaidi na si sana kanuni PHP.
Ni mara tu mistari miwili ya kificho na kisha kidogo ya kauli magazeti.
Na tayari nina Tovuti mengi zaidi nguvu
kuliko mfano kwamba kwanza tuliona mwanzoni mwa video.
>> Hivyo, kukumbuka kutoka video kwenye PHP syntax kwamba wakati mkalimani PHP anaendesha
mpango wetu, huacha kila kitu si kwamba ndani ya PHP delimiters,
kutema nje.
Katika mfano huo, kile kitu kuwa ilikuwa kutema mate nje mara HTML.
Na hii ina maana siwezi sasa intersperse HTML na PHP pamoja.
Kwa sababu mkalimani mapenzi tu kupuuza HTML na halisi pato hilo.
Mambo mema, sawa?
>> Kwa sababu labda, mwisho wa siku,
Napenda tovuti yangu kwa kuwa yalijengwa ya HTML.
Hivyo kwamba browser yoyote ya mtandao wanaweza kutafsiri yake, au kuelewa HTML kwenye ukurasa
na atatoa ni kama kitu ambacho sisi unaweza kweli kuelewa kama binadamu.
Na naweza tu kutumia PHP kwa sehemu ya tovuti yangu
the zinahitaji mabadiliko, ambazo zinahitaji mimi kuwa na mambo ambayo update mara kwa mara.
Maelezo tuli wanaweza kukaa sawa.
>> OK, hivyo hiyo ni nzuri.
Lakini kwa nini mimi kufanya hili?
Kwa nini mimi kuchanganya HTML na PHP?
Mimi nilikuwa tu magazeti nje yote HTML, PHP magazeti kazi kwa kutumia.
Kwa nini mimi si kufanya hivyo?
Fikiria kuhusu hilo kwa ajili ya pili.
>> Kwa nini, wakati mimi naweza tu magazeti out-- mimi inaweza kuwa na mistari ya PHP kwamba kusema tu,
magazeti HTML tag, kichwa magazeti.
Kwa nini mimi si kufanya hivyo?
Kwa nini mimi kuchanganya PHP na HTML?
>> Naam, kama unafikiri kuhusu hilo kwa ajili ya pili.
PHP, mkalimani ina kutafsiri kile kinachoonekana.
Na hivyo ni kwenda kuwa kutekeleza mstari wa kanuni.
Magazeti nje HTML.
Magazeti nje tag kichwa wazi.
Magazeti nje jina wazi tag.
Ni kwenda kuwa na kutekeleza na kutafsiri
kwamba kila hatua moja ya njia.
Mbona si tu basi mkalimani tu Gloss juu
mambo hayo haelewi na kufanya hivyo moja kwa moja?
Ni kwenda kuokoa mimi muda mwingi kuchanganya HTML yangu na PHP yangu pamoja.
>> Na hivyo ndiyo sababu hatufanyi tu na wazi PHP delimiter
na kisha tu magazeti nje mzima maudhui ya ukurasa wetu kama moja kubwa PHP
wito kwa kazi, Magazeti, na kisha karibu PHP delimiter na sisi ni kosa.
Hivyo ndiyo sababu sisi kuchanganya yao juu pamoja.
>> Hadi sasa, hatujaona sana ya tofauti kutoka kwa ujumla PHP syntax.
Imekuwa ni pretty moja kwa moja.
Tumekuwa tayari kuona alama swali, sawa.
Tuliona michache ya wito kazi mpya, lakini hakuna kitu kweli dhana kinachoendelea.
Hebu labda kufanya mambo kidogo fancier.
Nini kama tunataka kupitisha habari kati ya mafaili mbalimbali PHP,
ili labda mtumiaji anaweza kuwasilisha taarifa kwangu.
Na kisha mimi naweza kufanya kitu nayo kwenye ukurasa mwingine.
>> Hivyo PHP ina msaada kwa kitu kinachoitwa Super Global
Vigezo, ambayo inaonekana pretty kutisha.
Wao ni kweli tu kubwa associative arrays
ambao wanasaidia kutekeleza hili utendaji wa kupita
habari kati ya PHP mafaili kwamba ni zilizopo kwenye mtandao wetu server.
>> Ya kwanza ya haya super globals inaitwa $ _GET.
Na pengine ni rahisi kuelewa.
Nini kinatokea kwa $ _GET?
Naam, kimsingi, user ni kwenda aina maelezo ya ziada
mwishoni mwa URLs yetu.
Na chochote aina, kuchukua ni mpangilio kwa namna ya pekee
kuitwa kamba swala, ambayo ni tu seti ya thamani jozi ufunguo kutengwa
na ampersands.
Wale thamani jozi ufunguo itakuwa kuhifadhiwa katika $ _GET safu associative.
Na kutoka video wetu juu PHP syntax, tunajua
jinsi ya kufanya kazi na associative arrays tayari.
Hivyo hapa ni mfano wa baadhi PHP, ambapo labda mimi nina
kuchimba wote wa thamani jozi ufunguo kwamba mtumiaji hutolewa katika URL.
Hivyo nina PHP yangu Open delimiter.
Nina foreach kitanzi.
Mimi nina iterating hela Super Global Array aitwaye $ _GET.
>> Na mimi nataka kuwa na uwezo wa kutaja kwa wote muhimu na thamani.
Na mimi nina tu uchapishaji yao nje, kila mmoja juu ya inaonekana
mwenyewe aya tag wake hapa.
Mimi uchapishaji nje baadhi HTML na interpolating maadili
ya muhimu na thamani katika taarifa hiyo.
>> Basi hebu tuangalie jinsi hii ingekuwa kweli kazi juu ya IDE yetu.
Na labda hii itasaidia kuonyesha kidogo
nini kupata ni kweli kufanya.
Hivyo mimi nina nyuma hapa katika mtandao wangu mizizi.
Na mimi itabidi kuvuta kidogo na kuonyesha
kwamba nina faili inayoitwa, get1.php.
>> Basi hebu click kwenye get1.php.
Na mimi si kuona maudhui yoyote.
Hiyo ni weird, sawa?
Naam, si kweli kweli.
Kwa sababu sikuwa ugavi chochote katika URL.
Mimi nina kwenda get1.php, lakini mimi hakuwa ugavi yoyote thamani jozi ufunguo
kama sehemu ya kamba yangu swala.
Basi hebu kuongeza kamba swala na kuona nini faili hili wanaweza kufanya.
>> Kwa kuanzia kamba swala wewe aina tu alama ya swali.
Basi labda mimi itabidi kusema jina = Doug & mwaka 2015 =.
Na kisha mimi hit Enter.
Sasa angalia nini kinatokea.
Mimi bado nina katika get1.php.
Lakini sasa nimekuwa zinazotolewa thamani jozi ufunguo, na mimi nina
uchapishaji yao nje juu yao wenyewe jina paragraph--, mwaka Doug-- 2015.
Hiyo ni sawa kabisa kificho sisi tu aliona kwenye slide wakati iliyopita.
>> Na kama nataka labda kuongeza mwingine ufunguo jozi thamani, & darasani = CS50.
Sasa nina thamani nyingine muhimu jozi hiyo kuchapishwa
wakati mimi kupitia upya URL tena.
Sasa labda hii si mpangilio sana pia.
Hivyo nina toleo mwingine wa get.php.
Ni get2.php.
>> Tofauti katika hii moja ni nina CSS faili,
na ni format mambo a kidogo vizuri zaidi kwa ajili yangu.
Ni labda si zaidi CSS mazuri katika dunia.
Lakini ni tu njia nyingine ya kufanya hivyo.
Hivyo mimi bado anaweza kupata kwa vigezo yangu kwa kutumia $ _GET.
Na katika kesi hii, mimi nina aina tu ya kufanya CSS kidogo zaidi dhana.
Na kama sisi pop juu ya IDE yangu kwa ajili ya pili,
Mimi nitakuonyesha katika wangu PHP mtandao directory hapa, get2.php.
Tutaweza kufungua it up, baadhi HTML hapa.
Inavyoonekana mimi nina kuunganisha kwa kuwa CSS faili nilikuwa kuzungumza juu.
Mimi kufungua tag meza.
Na kisha hapa ni foreach yangu kitanzi.
>> Hapa ni kwamba, kile ilionyesha juu ya slide kabla.
Tofauti tu ni mimi na ufunguo huu na thamani CSS
styling kwamba mimi nina kutumia hiyo.
Lakini hiyo yote mimi nina kufanya, ni mimi nina iterating hela $ _GET kupata yote
ya thamani jozi ufunguo.
>> Na mimi nina uchapishaji yao nje kama meza.
Na, inaonekana, mimi nina formatting funguo kwa namna moja, na <td class = "muhimu".
Hivyo inaonekana hivyo ni rahisi kuona baadhi tabaka la selector katika faili CSS yangu GET.CSS.
Na, inaonekana, mimi nina uchapishaji nje maadili yangu njia tofauti kabisa.
Ambayo ni kiasi pretty yale tuliona hapa, ambapo
maadili yetu vilichapishwa na historia ya bluu,
na funguo wetu vilichapishwa na historia ya njano.
Hivyo hiyo ni jinsi mimi nina kupata wale mitindo tofauti.
Kwa sababu mimi nina kutumia madaraja mbalimbali CSS.
Lakini hiyo ni pretty kiasi kwa GET.
Kama mimi nina kuchimba tu habari.
Na katika kesi hii, mimi nina tu uchapishaji kwa screen.
Mimi nina kupata ni nje ya URL, na hilo ndilo GET anafanya kwa ajili yetu.
>> Je, unaweza kuona inawezekana Tatizo hapa ingawa?
Kwa nini sisi labda si unataka kutumia $ _GET?
Nini kama, labda, nilikuwa kufanya swala hili?
--to get3.php, ambayo mimi hawana juu ya IDE yangu.
Ni tu faili la kubuni.
Lakini taarifa hapa kwamba inaonekana kupita nenosiri langu katika.
Na labda password yangu ni aibu.
Au labda Sitaki watu kujua nini nenosiri langu ni, haki.
>> Kama mimi nina kupita though-- kama mimi nina kutumia $ _GET mbinu, kile kinachotokea ni,
kwamba kinaendelea kuwa katika URL.
Hivyo baadhi ya mtumiaji malicious nguvu na uwezo wa kuona nini mimi kufanya.
Nipate kuvigawa habari nyeti.
Au labda ni hata kwa makusudi mtumiaji.
Labda ni tu rafiki yako ambaye amesimama juu ya bega lako.
Na sasa wanajua nenosiri kwa akaunti yako Facebook.
>> Na labda wangeweza si kufanya kitu chochote kwa hayo.
Lakini kama password yako yalikuwa kuwasilishwa kupitia $ _GET kwa Facebook,
sasa wanajua yako Facebook password.
Kwa sababu ni haki pale katika URL wakati umefanya kosa kuwasilisha taarifa.
>> Na hivyo labda si kwamba bora njia ya kupita habari nyeti.
Ni njia nzuri ya kupita maelezo kwamba sisi si hasa
huduma ya juu kama kuwa nyeti sana.
Kwa sababu GET ni pretty kufunga, jamaa na wengine globals super
tunakwenda kuzungumzia.
Lakini labda si chombo bora kwa habari nyeti.
>> Kwa maana hiyo sisi kutaka kutumia kitu kinachoitwa $ _POST,
ambayo ni mwingine kutofautiana Super Global.
Ni safu associative nyingine.
Hivyo ni kazi pretty much sawa kama GET.
Ila, badala ya kuchimba taarifa kutoka URL,
hana kitu kupitia HTTP headers.
Hivyo kukumbuka kutoka wetu video juu ya HTTP, sisi aliyesema
kuhusu jinsi browsers, watumishi, na wateja kuwasiliana.
Na maelezo ni kupita nyuma na kurudi katika HTTP headers.
>> Kwa $ _POST, kampuni ni kawaida kutumwa kwa njia ya wale vichwa vya HTTP.
Na tutaweza kawaida ona $ _POST katika mazingira ya kuwasilisha fomu HTML.
Bado unaweza kutumia aina HTML kuwasilisha mambo ya kupata.
Lakini wao ni kawaida kutumika katika mazingira ya POST.
>> Hivyo hapa ni mfano wa aina HTML.
Sasa tumekuwa hizi kuona mbele, lakini tuna hawajaona hii sehemu, hatua = "post.php".
Hivyo wakati sisi aliyesema kuhusu aina katika mazingira ya HTML, nilikuwa Kuwasilisha kifungo.
Na kama unakumbuka, Ningependa bonyeza Kuwasilisha na kisha ukurasa tu nishati,
hawajafanya jambo lolote.
>> Katika kesi hiyo, mimi nina kuwasilisha chochote mimi aina katika fomu hii,
na faili PHP aitwaye post.php.
Na, inaonekana, njia mimi kufanya kwamba katika fomu hii ni kwa kutumia njia POST.
Hivyo kila kipande cha habari kwamba mimi aina katika fomu hii
yatawasilishwa kupitia vichwa vya HTTP.
>> Itakuwa kupatikana katika post.php, kwa sababu hiyo ni hatua ya aina yangu.
Itakuwa kupatikana kwa kwenda $ _POST.
Na inaonekana, njia naweza kupata katika kila kipengele binafsi
na kwamba safu associative ni pamoja na sifa hii,
Jina sifa ya vitambulisho pembejeo yetu.
>> Hivyo inaonekana naweza kusema $ _POST mraba mabano jina kupata chochote mtumiaji
typed katika uwanja kwanza.
Na $ _POST neno la siri, ya pw badala yake, kupata saa chochote mtumiaji typed
katika uwanja wa pili.
>> Basi hebu tuangalie juu ya hili katika CS50 IDE.
Hivyo hapa sisi ni, na mimi itabidi kuvuta kwa pili.
Na tuna faili inayoitwa post.html.
Mimi bonyeza post.html.
Juu sana hapa nina mtandao rahisi sana fomu.
Ni aina sisi tu kuona slide pili iliyopita.
>> Siwezi aina, Doug, na naweza aina password yangu, ambayo sisi wote
kujua ni squadgoals.
Nami kugonga Wasilisha.
Na inaonekana, kwamba elekeza kwa post.php.
Na mimi nina inaonekana uchapishaji huo.
Hivyo mimi nina kupata kuondoa usalama zote kwamba POST anitiaye na uchapishaji tu nje
username na password.
>> Jina la mtumiaji ni Doug.
Mtumiaji password ni squadgoals.
Jinsi gani mimi kufanya hivyo?
Naam, pop juu ya IDE tena kwa mara ya pili.
Sisi kitabu chini ya kuchukua Kuangalia post.php, ambayo ilikuwa
hatua ambayo Nilikuwa kuwasilisha hapa.
Hiyo ilikuwa ni hatua ya HTML fomu yangu.
Na kwamba wote mimi nina kufanya.
Jina la mtumiaji ni, na mimi nina uchapishaji nje yaliyomo ya $ _POST "jina".
Na kisha mtumiaji password ni $ _POST "password".
Hivyo nilipewa taarifa ambazo kwa kuwasilisha fomu HTML.
Na siwezi sasa kutafuta kwa kutumia $ _POST kwa sababu njia mimi kutumika kwa kusambaza
data na fomu hiyo ilikuwa mbinu POST.
>> Sasa ni pengine si hivyo great-- mimi nina kwenda
kurudi kwa pili kwa kuweka wetu here--
pengine si kubwa sana kama mimi ni kuwasilisha taarifa kwa POST,
ambayo ni zenye salama zaidi.
Pengine ni si kubwa sana kama mimi nina kufanya hivyo na kisha
uchapishaji nje mtumiaji password.
Ni walidhani kuwa salama zaidi.
>> Sawa, lakini siyo salama kabisa.
Na hivyo katika hii kidogo snippet hapa nataka
kuteka tu mawazo yako kwa baadhi wasiwasi usalama wa data, tu kitu
kufikiri juu kama uko kazi au kwa kutumia mtandao.
Hii ni tu kitu ya kuzingatia.
>> Niliwaambieni kwamba kampuni ni kuwasilishwa kwa njia ya HTTP headers
wakati matumizi ya mbinu POST.
Ambayo ina maana wao siyo salama kabisa.
Wao ni vigumu kupata zaidi kutumia mbinu ya GET, ambapo
ni haki tu katika URL.
Lakini bado kuna njia ya kupata hiyo.
Na mimi nataka tu kuonyesha mambo haya ili wewe labda
kuanza kufikiri juu ya hili kama wewe ni kufanya kazi, au kutumia
Nje na kuwasilisha nywila, na labda kwa kutumia
nywila sawa katika mengi ya maeneo mbalimbali.
Kujua kwamba ni bado kweli pretty rahisi kupata nywila mtu wa nje.
>> Na hivyo hapa, mimi nina kwenda kwenda post2.html.
Na tofauti na post2.html na post2.php ni mzuri hila.
Tofauti ni tu kwamba mimi si magazeti nje
nenosiri wakati mimi kuwasilisha fomu.
>> Hivyo nina kwenda aina katika, Doug.
Na mimi nina kwenda aina katika, squadgoals, hata
ingawa tunajua kwamba password.
Kabla ya kuwasilisha kuunda ingawa, mimi nina kwenda
kufungua Developer Tools, tu kuonyesha nini kitatokea hapa.
Hivyo katika Chrome, Mimi tu kwenda kuikumba F12.
Na kwamba itakuja kufungua yangu Developer Tools kwenye upande wa kulia.
Mimi si kuwasilishwa fomu bado.
Sasa mimi nina kwenda kuikumba Kuwasilisha juu ya fomu yangu.
Na inaonekana, nilifanya wito kwa, au mimi alifanya ombi
kwa post2.php, ambayo hufanya akili.
Mimi nina kwenda bonyeza juu ya hilo.
>> Kisha juu hapa, mimi nina kwenda click juu ya Headers.
Kuna mengi ya mambo kinachoendelea hapa.
Lakini kama mimi kitabu chini ya sana chini, taarifa sahihi there-- kalenda yangu
imeizuia kwa second-- haki pale kwenye kona ya chini sana,
name-- Doug, pw-- squadgoals.
Hivyo hata kama mimi nina kutumia POST mbinu, ambayo ni salama zaidi,
tu kuwa na ufahamu kwamba wakati wa kufanya hivyo, bado uko kupeleka taarifa
kupitia HTTP.
Na bado anaweza kuwa kupatikana kwa adui.
Ni kitu tu tunakwenda kwa kuwa na kushughulika na kweli.
Labda kuna baadhi ya njia encrypt yetu nywila kabla sisi kuwatuma juu,
ambayo itakuwa bora, ambayo Mimi si kufanya hapa.
>> Lakini tu kuwa na ufahamu kwamba POST njia ina mapungufu pia.
Ni kuboresha zaidi GET katika suala la kuwa mara moja inayoonekana.
Lakini siyo kurekebisha kamili.
Hivyo hapa ni mfano wa haraka nyumbani zoezi
kwamba unaweza kutumia ili kupata baadhi mazoezi ya kufanya kazi na PHP.
Kujenga zifuatazo jozi ya kurasa za mtandao.
Kwanza lazima tu kuwa rahisi sana kuunda na shamba moja na Kuwasilisha
kifungo.
Hivyo sana sawa na kile sisi tu alivyofanya kwa post.html.
>> Na kisha ya pili faili unapaswa kujenga
ni faili, faili PHP, kwamba inatarajia pembejeo, kupitia POST,
na kulingana na kile mtumiaji typed, ambayo unaweza kudhani itakuwa integer.
Huna kufanya yoyote makosa ya kuangalia au kama.
Unaweza kudhani user itakuwa aina thamani integer,
au kitu kama kufasiriwa kwa PHP kama integer, katika fomu hiyo.
Wewe tu unataka kujenga n na kuzidisha n meza.
>> Hivyo kama user ananyenyekea 10, tunataka na meza 10 na 10 kuzidisha.
Kama mtumiaji elekeza 12, tunataka 12 na 12 kuzidisha meza.
Tu hivyo unaweza kuona nini sisi ni kuendesha gari katika hapa,
tutaweza kuchukua kuangalia faili hii katika IDE yangu.
>> Hivyo hapa katika IDE, nina mult_form.html.
Mimi itabidi click yake.
Yote nataka kufanya ni kuwasilisha thamani.
Aina katika 10, kugonga Wasilisha.
Na inaonekana, mult_table.php, ambayo tunaweza kuona juu huko katika URL,
Mimi kujenga 10 na 10 kuzidisha meza.
>> Kama mimi aina 15 na kugonga Kuwasilisha, sasa mimi na meza 15 na 15 kuzidisha.
Mimi, bila shaka, si kwenda kuonyesha wewe yaliyomo ya mult_table.php,
kwa sababu ambayo ingeweza kuchukua furaha nje ya hii nyumbani zoezi hilo.
Lakini ni njia kubwa ya kupata baadhi mazoezi ya kufanya kazi na PHP mizunguko
na POST, rahisi sana, hopefully mkazo bure mfano, tu
kufanya kidogo ya mazoezi.
Na mimi nimepata CSS kidogo kinachoendelea hapa kufanya meza yangu binafsi
seli aina tu ya pop mbali kidogo na kuangalia kidogo zaidi
kama meza kuzidisha, kinyume na tu maandishi tu
aina ya wameketi hapo.
Mwisho super kimataifa tutaweza majadiliano juu ya katika video hii ni kitu kinachoitwa
$ _SESSION.
Na labda hii ni kweli Mfano mzuri wa jambo
tunataka kufikiria kimataifa.
Ni safu mwingine.
Ni safu associative nyingine.
Lakini ni kupatikana kwa njia ya kila PHP faili kwamba ipo juu ya mfumo wetu.
>> Hatuna kuwasilisha Maelezo moja ukurasa kwa wakati
kama sisi kufanya na GET na kwa POST.
Ni siku zote huko.
Na hivyo hii ni kubwa kwa ukurasa ambapo umeingia, kwa mfano,
na unataka habari yako ya kuingia yanaendelea kutoka ukurasa kwa ukurasa kwa ukurasa.
>> Unaweza tu kuanza kikao na kisha kutumia $ _SESSION kuokoa mambo kama
mtumiaji jina, au mtumiaji ID habari, na kadhalika.
Na habari kwamba kubaki katika $ _SESSION Mpaka kuharibu kikao
kidogo baadaye.
>> Kuandika tovuti nguvu na PHP inawafanya mengi zaidi.
Maeneo yako kuwa sana nguvu, na huna
na kufanya sana zaidi kuliko yale wewe vinginevyo ingekuwa amefanya tu
kufanya hivyo kwa HTML.
Lakini inahitaji mazoezi, mazoezi mengi.
>> Tayari kujua jinsi ya kufanya kazi na C, na hivyo kuruka kwa PHP pia si gumu.
Je, ni labda kidogo kidogo Tricky ni kazi
na wazo hili jipya la GET na POST, na labda kuchanganya HTML yako na PHP yako
pamoja.
Lakini pia kuwa na ufahamu kwamba biashara ni there kikubwa cha habari.
Na nyaraka PHP ya inapatikana katika maeneo mengi, lakini labda zaidi
canonically katika php.net.
Na unaweza kupata huko, kura ya kazi mbalimbali,
na kutumia kesi, na mifano juu ya mifano, juu ya mifano.
Ambapo kama unataka kujaribu na takwimu jinsi ya kufanya kitu, ni tabia mbaya,
mtu pengine wamefanya hivyo kabla.
Na unaweza kuzitumia kama msukumo wa kutekeleza chochote
ni wewe ni kujaribu kutekeleza mno.
>> Mimi nina Doug Lloyd.
Hii ni CS50.