SPIKA 1: zote, haki kuwakaribisha nyuma. Hii ni CS50. Na hii ni mwanzo wa wiki tisa. Na hii ni mwanzo wa mapumziko ya muda wako katika CS50, ambayo sisi mpito sasa, hatimaye, kwa mtandao nyanja ya shaka, ambapo utasikia kupata kwamba mengi ya misingi kwamba tumekuwa nje kwa wiki bado kuja nyuma ya kutembelea, au haunt, nasi. Lakini sasa, utapata kwamba ni utaratibu wa ukubwa rahisi kukamilisha kazi fulani na kutatua matatizo fulani - hivyo hivyo kiasi kwamba hata kama wewe mawazo fulani tatizo seti walikuwa na furaha katika zao njia mwenyewe, nadhani kwamba utapata kwamba p kuweka 7, ukr kuweka 8, na kisha, hatimaye, mradi wa mwisho watakuwa kuufurahisha wote zaidi kwa sababu itabidi kupata kwamba tunaanza kuchukua kwa nafasi sasa mambo kama kumbukumbu, usimamizi na kuyatumia, na nini kinaendelea juu ya chini ya Hood. Na tena, mada, wote katika muhula imekuwa hii layering na layering. Na sasa sisi ni aina ya juu hapa, wamesimama juu ya mabega ya wiki iliyopita. Sasa, kukumbuka mara ya mwisho kwamba sisi aliyesema kuhusu jinsi ya internet kazi. Na hii ilikuwa labda kurahisisha, lakini kumbuka kwamba kila kompyuta katika dunia ina IP kushughulikia, ingawa hiyo ni kidogo ya kurahisisha bado. Na anuani hizo ni kutumika kwa kipekee kubaini mashine ili wakati kutuma habari, au pakiti, hivyo kusema, wanaweza kuwa na asili ya anwani na anwani ya marudio. Na wale anwani ya IP huo unaweza kutumika wote kwa ajili ya mema na pia kwa ajili ya uovu, kufuatilia yenu, kwa mfano. Kwa kweli, kila mmoja wenu kwa mbali kufungua sasa, au simu yako katika mfukoni, anwani ya IP kwenye mtandao wa Harvard. Na si wote kwamba vigumu correlate kwamba kwa nani na wapi ni siku hizi. Lakini zaidi juu ya kwamba labda katika siku zijazo. Sasa nilifikiri ningependa kuleta nyuma baadhi ya kumbukumbu ya [? kuimarisha]? na kukupa mwingine cha picha ya video kutoka show wewe ili kupata ukoo. Kama tunaweza dim taa kwa sekunde chache tu. Numb3rs show. SPIKA 2: Ni ya 32-bit IPP4 anwani. SPIKA 3: IPP, kama katika mtandao? SPIKA 2: Binafsi mtandao. Na mtandao Amita ya binafsi. Yeye ni ajabu. SPIKA 3: Haya, Charlie. SPIKA 2: Ni. IP kioo anwani. Yeye kuruhusu sisi kuangalia nini yeye anafanya katika muda halisi. SPIKA 1: OK, hivyo wachache na mambo kibaya na picha hii. Hivyo moja, na hii ni moja ya kukubalika, hii ni kweli si halali ya IP. halali ya IP ina kuwa idadi w.x.y.z ya fomu, ambapo kila moja ya wale barua ni 0-255. Lakini hiyo ni nzuri kwa sababu tu kama sinema ambapo wao bandia namba za simu, wao bandia anwani ya IP. Wewe si kweli hit seva halisi. Lakini kumbuka, hii ni browser. Na browsers si kuanza outputting kompyuta kanuni kama hii. Na kama sisi kuangalia undani kidogo, taarifa kwamba lugha ya kwamba wao ni kuona juu ya screen ni lugha inayoitwa Lengo C, ambayo ni lugha katika ambayo programu iPhone yameandikwa, hasa yale yanayohusiana na crayons, kama unaweza kuona kutoka kanuni chanzo hapa. OK, Nilidhani hii ilikuwa funny. Hivyo huu wa snipu ina kabisa kitu cha kufanya na chochote hii sehemu fulani ilikuwa juu. Hivyo utani ni aina ya juu ya folks kuchukua kwa ajili ya hii nafasi. Lakini hii si ngumu kwamba wote kupata haya maelezo ya kiufundi ya haki. Na napenda moyo. Na kweli, 50 ili vizuri sana nyara mengi ya maonyesho ya TV na sinema au wewe kwa sababu utapata kwamba ni tu haiwezekani nini re kufanya kwenye screen. Lakini kwa kweli, hii ni kanuni ya kuwa wewe wanaweza kuona katika maombi iPhone au Mac OS maombi. Ni kitu wakati wote kufanya na usalama. Hivyo kushika jicho nje kwa zaidi vile furaha mambo kama hayo. Lakini leo tunaanza kwa kupiga mbizi katika kweli undani wa mbalimbali mzima wa lugha. kweli, mmoja wa kuu takeaways ya sehemu hii ya Bila shaka si kujifunza jinsi ya mpango katika PHP, si kujifunza SQL per se, si kujifunza JavaScript per se, lakini badala kufundisha mwenyewe jinsi ya kufundisha mwenyewe mpya lugha kwa sababu, kwa hakika, sisi kuanza kuchukua sasa mafunzo ya magurudumu ya mbali ili baada ya kozi ya mwisho, wewe wala kutarajia 20 ukurasa vipimo kukuambia jinsi kutekeleza baadhi ya mpango. Una kutosha viungo katika yako akili, na zana za kutosha katika chombo yako kit, na ambayo kwa kuanza kujenga ufumbuzi wa matatizo ya maslahi ya wewe kwa ajili ya baadhi ya kundi ya wanafunzi, kwa baadhi ya mradi wa utafiti, au kweli kitu wa maslahi na wewe. Hivyo kuelekea mwisho kwamba, kukumbuka kwamba hii ilikuwa picha sisi akauchomoa wakati wa mwisho. Na hii ni mbili kompyuta, mteja na watawatenga, kuzungumza na mtu mwingine. Na itifaki, lugha, hivyo kusema, kwamba hizi kompyuta mbili kutokea kwa kusema kuwa inaitwa HTTP. Na kwamba tu itifaki kutumiwa na kompyuta kuhamisha taarifa juu ya duniani kote mtandao. mtandao, bila shaka, ni moja tu ya huduma kwamba anaendesha juu ya kinachojulikana internet. Nini huduma nyingine zinazopatikana juu ya internet siku hizi? Baadhi ya itifaki nyingine au - nini hiyo? Watazamaji: FTP. SPIKA 1: FTP. Hivyo Picha Transfer Itifaki ni mwingine. Zaidi ya wewe pengine si kutumika. Lakini wengi pengine kutumika mambo kama Gchat, au papo ujumbe kwa ujumla zaidi, hakika email. Na wale, pia, ni huduma ambayo kukimbia kwenye juu ya internet kwa sababu, katika mwisho wa siku, internet yenyewe kweli tu kupata data kutoka uhakika na hatua B. Na anatumia simu ya chembe yenyewe, mmoja wao au mbili wao wengi kwa ujumla aitwaye TCP / IP, ambayo ni kusema kwamba moja ya kompyuta katika biashara kwa kweli anaweza kufanya mambo mbalimbali, barua pepe, na mtandao, na kadhalika. Google haina mengi ya hii. Hivyo jinsi ni wale huduma ya kipekee kutambuliwa, gani sisi kusema, kwenye kompyuta kwamba ili kweli kuwa kufanya nyingi mambo? idadi ya bandari. Na haya ni baadhi tu ya holela ya binadamu makongamano kama 80 ni mtandao, 443 ni mtandao encrypted, 25 ni email. Na kuna mashada ya wengine. Na idadi ya wale ni tu ni pamoja na katika wale pakiti za habari, wale virtual bahasha, kwamba kweli zilizomo ombi au majibu. Hivyo wakati wewe kupata nyuma majibu kutoka mtandao, kwa kawaida, si kuona yoyote idadi wowote katika suala la hali ya kanuni ya majibu. Wewe si kweli kuona ndani ya utendaji kazi wa pakiti kwamba kuja nyuma. Lakini 200 haina hakika maana sawa. Na kwamba maana yote ni sawa. Unaweza kuwa na kuonekana rundo la hayo. Ambayo pengine ni ya kawaida ve kuonekana kwenye mtandao? 404. Ni njia tu faili halikupatikana. Ina maana mtu Star up. Alivyofanya na mistyping URL, au mtu mwingine alifanya kwa kutoa batili URL, au wao ilifutwa faili na URL bado ni kutumiwa na watu. Hivyo idadi yoyote ya sababu inaweza kueleza nini faili si kupatikana. Na utaona, katika wiki ijayo, hizi nyingine kosa codes, na utasikia kuchukua faida ya baadhi yao. mbaya zaidi ni 500. Kama wewe kupata kosa 500 katika kanuni wewe wameweza imeandikwa, kufikiri ya kwamba kama aina ya Analog ya makosa seg katika ulimwengu wa programu ya mtandao. Siyo kabisa kama mbaya. Lakini ni tu ina maana kwamba, mahali fulani, wewe Star up. Ili kuangalia mbele kwa wale. Lakini hebu angalia kama tunaweza kuona haya katika mazingira. Hebu kwenda browser hapa na kufanya yafuatayo. Hivyo hii ni Chrome, ambayo hutokea kwa kuwa imewekwa katika appliance. Lakini wengi kila browser siku hizi ina baadhi ya utendaji sawa. Mimi nina kwenda hadi orodha Chrome, na kwenda Tools, na mimi nina kwenda Developer na vifaa. Na utaona kwamba hii jopo kidogo kuufungua katika chini ya dirisha. Njia ya mkato ya mwingine, kwa kuwa waaminifu, kwamba mimi matumizi ya kawaida mwenyewe ni Haki bonyeza au Document bonyeza mahali popote kwenye mtandao ukurasa na tu kwenda Kukagua Element. Na kwamba si tu kufungua hii kwa ajili yenu. Itakuwa wazi pia, hasa, Sehemu ya vipengele mkono wa kushoto upande. Hivyo sisi ni bila shaka kuona Google. Wao iliyopita alama zao leo. Lakini juu ya kama mimi kitabu chini hapa juu, taarifa kuwa chini ya vipengele, unaweza kuona kile kinachoitwa HTML, HyperText Markup Lugha, na hii ni lugha ya kwamba hii na mtandao kurasa zote, kweli, yaliyoandikwa ndani Lakini ni kweli formatted kwa ajili ya sisi hivyo zaidi readably kuliko kawaida ni. Kwa kweli, kama mimi zoom nje, na mimi badala Haki tu bonyeza au kudhibiti Bonyeza bonyeza ukurasa, na kisha kwenda View Ukurasa Chanzo, hii ni halisi nini Google teremshiwa browser yangu. Hivyo baadhi ya mtu au watu aliandika Google.com kutumia kanuni hii chanzo. Wengi wa hii si HTML. Ni kweli lugha inayoitwa JavaScript, ambayo tutaweza kuja juu ya Jumatano. Lakini nini Chrome, na nini kila browser unaweza kufanya kwa ajili yetu, ni aina ya kuona nyuma ya distractions ya mambo syntax, na reinsert nyeupe nafasi kwa ajili yetu, na hata kuonyesha syntax, au colorize mambo kwa ajili yetu. Hivyo utapata kwamba hawa wanaoitwa developer zana kujengwa katika browsers kufanya maisha yako hivyo, hivyo rahisi zaidi kwa sababu unaweza kuchunguza, kupitia orodha hii interface, hasa yale ya msingi chanzo code ni kwa ukurasa wowote kwenye mtandao. Na kwa kweli, hii ni moja ya njia bora ya kujifunza namna ya kufanya kitu kipya, angalau kama ukurasa si hivyo tata kama overwhelm, ni kuanza poking kote ni HTML, kuangalia saa kinachojulikana yake CSS, ambayo tutaweza kuja kwa kidogo kama vile, ili kupata kuelewa jinsi ya programu kwamba kutekelezwa baadhi hasa hulka ya ukurasa. Lakini zaidi ya kitaalam ya kuvutia haki sasa ni kwenda kuwa hii. Kama mimi kwenda tab Network, hebu sasa wazi hii. Mimi nina kwenda bonyeza kidogo kuvuka alama hapa, na kisha kwenda kwenye tovuti nyingine. Na Mimi tu kwenda aina katika Facebook.com. Hakuna HTTP, hakuna HTTPS, hakuna WWW. Hebu kweli kuona nini kinatokea hapa. Kuingia. Sasa taarifa rundo zima ya mambo tu alionekana katika jopo hili chini, katika Mbali na ukurasa wa mtandao kuonekana katika juu. Mimi nina kwenda na kitabu nyuma hadi katika Mtandao tab hapa, na mimi nina kwenda bonyeza safu ya kwanza. Kile chombo hiki ni kwenda kutufunulia ni kila moja ya maombi HTTP kwamba kwa haraka tu akaenda nyuma na nje kati ya browser yangu na Facebook server. Na hivyo kila mmoja wa safu wale inawakilisha moja vile ombi au majibu, moja au zaidi ya wale bahasha virtual. Au zaidi kawaida, ni kama mtu kama mtu, mteja katika mgahawa, kuomba kitu tena, na tena, na tena. Na waiter anaendelea kuleta nyuma moja kwa wakati. Basi sasa, kama mimi kuvuta hii, taarifa na hii itakuwa ya aina ya kitu kwamba wewe ni kuwakaribisha kwa moyo na kucheza na juu yako mwenyewe, kwa sababu sisi si kwenda njia ya kila kitu katika kina kubwa. Lakini taarifa kuna chache ndogo tabo hapa - Headers, Preview, Response, Biskuti, na majira. Mimi tu kwenda kuangalia headers kwa sasa kwa sababu hizi ni kidogo viungo ndani ya bahasha kwamba kusaidia data kupata na kutoka maeneo. Hivyo kwanza, basi mimi bonyeza hii, View Chanzo karibu na Ombi headers. Kuna ombi kwamba yangu browser, Chrome, katika kesi hii, alimtuma ndani ya kwamba bahasha virtual. Itabidi kukumbuka wiki iliyopita mimi manually typed wakati kujifanya kuwa browser. Basi ni aliwakumbusha server kwamba ni kuangalia kwa jeshi aliwaita Facebook.com. Na kisha kuna kidogo zaidi arcane habari kwamba tutaweza kukitikisa mikono yetu kwa sasa. Lakini kama mimi kuanza kitabu chini sasa katika dirisha hili, basi mimi kupata majibu headers. Hii ilikuwa ni nini katika virtual bahasha kwamba akarudi kutoka Facebook.com. Na kama mimi bofya View Chanzo tu kuona Nakala ghafi ya hayo, taarifa mambo machache. Moja, Facebook pia anaongea huo itifaki, toleo 1.1 yake. Hivyo kwamba ni nzuri. Lakini hali ya kanuni ya 301, wakiongozwa kudumu. Vizuri, ambapo heck hakuwa Facebook kwenda? Nini hii kujaribu kufikisha kwetu? Naam, taarifa chini hapa kuna mwingine header kuitwa Location. Hivyo ni kwa nini Facebook akiniambia kwamba wao wakiongozwa kudumu kwa URL kwamba karibu na Eneo? Nimesahau www. Ili kwamba ilikuwa uchaguzi wangu. Kwa kweli, wengi wetu mara chache, pengine, aina www.whatever.com siku hizi. Lakini zinageuka msimamizi wa mfumo, kama ya Facebook, unaweza configure server yao katika namna kwamba aidha Facebook.com kazi, au www.Facebook.com kazi, au, kwa kweli, yoyote kiambishi vile mbele ya zao jina la uwanja. Hivyo wameweza kufanyika kwamba kwa ajili yetu. Na wao ni imetuma sisi, pengine kwa baadhi ya kiufundi, sababu baadhi ya masoko. Wao wanataka tu canonicalize juu ya www.Facebook.com. Lakini si kwamba kabisa hiyo. Kama mimi kitabu hapa chini, hebu kuona nini kinatokea. Hii ni kuwaambia mimi sisi wakiongozwa kudumu ya http://www.Facebook.com. Basi hebu angalia ombi pili kwamba browser yangu inapeleka. Kwa bahati mbaya, inaonekana kama Facebook ina wakiongozwa tena kwa sababu ya pili ombi, kwa kuchagua kwamba URL badala yake, anasema kwamba, pia, wakiongozwa kudumu. Na napenda kitabu chini hapa kwa headers majibu. Ambapo ina Facebook gone sasa? Hivyo HTTPS. Hivyo sasa Facebook imeanza, hasa katika mwanga wa sasa matukio katika miezi ya karibuni, hasa na pia katika kipindi cha miaka michache kumlazimisha yote ya watumiaji wao, katika mema njia, kwa kutumia https, ambayo ni zaidi salama, ingawa si kabisa salama. Na hivyo sasa ukurasa wangu, browser yangu ni kwenda kuomba hii URL tatu. Na sasa, hatimaye, sisi kupata vinginevyo siri 200 OK. Basi nini katika dunia au yote ya hizi safu nyingine chini hapa. Mimi literally typed jambo moja, na yangu browser inaonekana kuwa aliomba kama 20 baadhi ya mambo ya isiyo ya kawaida. Hiyo ni nini? Watazamaji: Scripts? SPIKA 1: Scripts, hivyo nyingine files imeandikwa katika lugha inayoitwa JavaScript, ambayo, tena, tutaweza kuona kidogo ya Jumatano. Nini kingine? Style karatasi. Hivyo kitu katika lugha inayoitwa CSS, ambayo tutaweza kuona katika kidogo. Gifs, na jpegs, na PNGs, na picha, na movie files - kila ukurasa wa mtandao imekuwa ni zaidi uwezekano katika fomu ya faili. Na hivyo kile sisi ni kuona upande wa kushoto mkono upande kuna wote wa files kwamba alikuwa Chrome kupakua, recursively, kama wewe, ili kutunga ukamilifu wa ukurasa. Hivyo yale tuliona wakati iliyopita na Google, kama mimi bonyeza Elements tab, hii, uhakika, ni HTML, lugha ambayo composes ukurasa huu. Lakini kuna mashada ya mambo mengine. Kuna alama. Kuna wale bluu-ish icons zaidi ya hapo. Na kuna mambo mengine bado juu ya ukurasa kuwa wenyewe ili kuwa tofauti files. Basi nini kizuri kuhusu browser ni kwamba inaonekana katika lugha tunakwenda kuanza kuandika, au wewe wameweza tayari ilianza kuandika katika P seti 7, takwimu nje ambapo wale files kuishi, na huenda na grabs yao pia. Na siwezi kusisitiza kutosha, hata ingawa baadhi ya hii ili kuangalia kidogo arcane au balaa katika mtazamo wa kwanza, kujifunza jinsi ya mpango maombi kwa ajili ya mtandao, ni mchango mkubwa sana kwa kuelewa jinsi zana kidogo kazi. Hizi ni aina ya kama GDB kama zana, lakini rahisi sana, hatimaye, kutumia - na kwa kweli anatoa macho katika kile tumekuwa kuchukua kwa nafasi kwa kabisa muda sasa. Basi nini tunaweza kufanya kwa sasa habari hii? Naam, hebu kweli kuangalia dhana za msingi HTML. Na tutaweza kuahirisha, kama sisi tayari kuwa, kwa sehemu ya wiki hii, kwa tatizo kuweka 7 vipimo, na baadhi ya zaidi maelezo ya lugha hizi. Lakini hebu angalia kama hatuwezi rangi picha ya nini unapaswa kuelewa ujumla hapa. Hivyo HTML, HyperText ghafi lugha, si lugha ya programu. Je, hiyo kweli maana? Hivyo HTML inaonekana kama hii. Na baadhi yenu tayari kujua hii. Baadhi yenu wamekuwa wakifanya hii kwa muda fulani. Lakini hebu angalia kama hatuwezi kujaza katika baadhi ya nafasi zilizoachwa wazi pia. Hivyo taarifa michache ya mambo hapa. Moja, ni maandishi tu. Hivyo ni kama kanuni ya chanzo katika C, au baadhi ya lugha nyingine. Taarifa kwamba inaonekana kuna kuwa mfano hapa. Kuna anatengeneza, lakini kitaalam anatengeneza ni binadamu tu mkataba. browsers hajali kama kuna mpya mistari na tabo kama tunaona pale. Lakini taarifa kwamba kuna symmetries hapa. Kuna kile Mimi nitakuita, juu ya faili hii, tag wazi, au kuanza tag, iitwayo HTML. Na kisha, chini chini, kikamilifu lined juu, kiasi kama sisi kufanya na braces curly, tunaona mabano wazi, mbele kufyeka, HTML, karibu bracket. Hivyo kwamba ni karibu sambamba tag, au mwisho tag, kwa jambo hilo. Pamoja, kila kitu ndani ya kinachojulikana wazi tag na tag karibu kutunga kile Tutamwita kipengele. Na tutaweza kuona, katika muda tu, ni kweli kama nodi katika miti. Kwa sababu kama unadhani kuhusu sasa anatengeneza hiyo ni kumaanisha hapa, wewe aina ya kuwa, kama, grandparent nodi iitwayo HTML. Jinsi watoto wengi utasema, msingi juu ya picha hii, kipengele HTML ina? Hivyo pengine mbili. Moja ni kipengele kichwa, inaonekana. Na moja ni kipengele mwili. Na kwa nini watoto wawili? Naam, mimi nina aina tu ya inferring kwamba kama Nina wazi kichwa tag na kisha karibu kichwa tag, kwamba ni kipengele. Na kisha, kama kuna mwingine mwili wazi tag na karibu tag mwili, hiyo ni kama kipengele kingine. Hivyo kwa mantiki kwamba kama mimi aina ya mzunguko picha upande wake, ni kama kuwa na tag HTML, na kisha kichwa tag, na kisha tag mwili, na kisha baadhi ya maandishi, hello dunia, yakining'inia mbali ya tag mwili yenyewe. Hivyo tunaweza kuchora picha kwamba ili kuangalia kama hii. maumbo ni holela. Lakini taarifa kwamba nimepata kutumika aina ya duaradufu juu ili kuwakilisha hati yenyewe. Zinageuka kuna kuwa mambo mengine ndani ya ukurasa wa mtandao kwamba nimekuwa si inayotolewa hapa. Hivyo tunakwenda hata hutegemea HTML nodi mbali ya nodi kinachojulikana hati. Na kisha tuna kichwa na mwili na cheo, ilani, ambayo ni Furushi zaidi. Mimi si bother kuweka ziada line mapumziko ndani ya tag jina. Ni tu waliona kama ni mara kupata kidogo sana verbose. Hivyo mimi kushoto ni katika mstari mmoja pale, pamoja na wazi cheo, hello dunia, karibu cheo. Na kisha tuna baadhi ya maandishi dangling mbali ya hapa. Hivyo picha hii kuja nyuma yetu wakati sisi kupiga mbizi katika JavaScript. Na ufahamu kwamba wakati wewe kuandika HTML kama hii, nini ni browser kufanya? Naam, hatuwezi kuwa na wasiwasi kuhusu ni jinsi gani kufanya hivyo, au kwa nini algorithm, lakini mwisho wa siku, wakati browser inapata HTML kama kwamba, kutoka Facebook au Google, ni parses ni, hivyo kusema, ni husoma, na kitu kama fread, juu ya chini, kushoto na kulia, na kama ni anatambua, oh, tag wazi, na kisha kufunga tag, ni kuanza malloc, hivyo kusema, nodi katika mti. Na wakati atakutana, kama tumekuwa alisema hapa na anatengeneza, mtoto nodi, ni mallocs nodi kwa kuwa na masharti ya kwamba kwa mti. Hivyo miundo mti, binary miti, ternary miti, na miti kubwa, kwamba sisi akapiga saa wiki moja au mbili zilizopita, ilani kwamba kanuni hiyo ni kuja nyuma yetu. Na anaye kutekelezwa, Chrome chochote timu gani kwamba, labda alikuwa kutekeleza baadhi ya aina ya muundo wa mti chini ya Hood. Na kwamba yenyewe ni pengine katika Lugha kama C, au C + +, au chini ngazi ya lugha ambayo tutaweza sasa kutumia atop mtandao. Hivyo kwa sasa, labda, hii itakuwa kufanya zaidi ya akili. Halisi tattoo kutoka kwa baadhi guy ambaye nguvu majuto ni hatimaye, aina ya. OK, haki ya wote, hivyo mengi ya ucheshi mtandao. Siyo kweli kwenda juu ya hivyo vizuri leo. Hivyo tutaweza kuendelea. Wote haki. Hivyo hebu tuangalie sasa katika mifano michache. rahisi iwezekanavyo kitu wanaweza kuwa hii. Mimi nina kwenda mbele na kufungua katika gedit faili inayoitwa hello.php. Na ndani ya hapa, mimi naenda kwa haraka tu kufanya hivyo, printf, kunukuu unquote, "hello dunia." Hivyo taarifa, na mimi itabidi kufanya wangu backslash n, Nimekuwa bothered kutangaza kuu. Zinageuka, katika php, na mengi ya lugha, huna haja kuu kazi per se. Unaweza tu kuanza kuandika programu yako. Sasa, wakati mimi ila faili hii, mimi nina taarifa kwenda na kufanya yafuatayo. Mimi si kwenda kutumia kufanya, na mimi si kwenda kutumia Clang sababu PHP, tofauti C, si lugha ulioandaliwa. Ni kile kinachoitwa kufasiriwa lugha, ambayo ina maana kwamba wewe kukimbia kama pembejeo kupitia mpango mwingine iitwayo mkalimani. Na mpango kwamba husoma, juu hadi chini, kushoto na kulia, na anafanya chochote wewe kuwaambia yake ya kufanya. Hivyo katika kesi hii hapa nina mstari mmoja kwamba anasema printf. Hivyo wakati mimi kukimbia hii kanuni ya chanzo, hello.php, ingawa mpango kwamba ikitokea, conveniently, kuitwa PHP, kwamba PHP mpango ni kwenda kusoma faili hili, juu hadi chini, kushoto na kulia, na ni kwenda kufanya kile Mimi kuwaambia ni kufanya - utekelezaji kanuni, na kama kwamba haitambui kitu, tu kutema nje. Hivyo nina kwenda mbele na kukimbia PHP ya hello.php. Kuingia. Na si kwamba mimi kabisa nini lengo. Naam, kwa nini ni kwamba? Naam, PHP ni lugha hiyo ni kweli iliyoundwa na kuwa na haki iliyounganishwa na mtandao. Wakati wa kufanya kurasa za mtandao na lugha hii PHP, kama tutaweza kuona hivi karibuni, tutaweza wanataka kufanya kitu kama magazeti nje mistari kama hii. Hivyo nina kwenda kufanya hili. Wazi bracket, alama ya swali, PHP, na sasa mimi nina kwenda tu Indent tu kuweka mambo mazuri. Na sasa mimi naenda kufanya swali alama ya mabano wa karibu. Hivyo kuna kidogo ya asymmetry hapa. Huwezi kufanya hili. Na si kufanya kufyeka, hivyo PHP ni tofauti kidogo. Lakini sasa, kama mimi rerun mpango huu, PHP hello.php, sasa mimi kweli kupata Dunia Hello. Na tutaweza kuona nini hii ni muhimu. Moja, ni inaruhusu mimi bayana, super wazi, hii ni kanuni, nitafanya hii. Na kwamba ni kweli nini hawa vitambulisho maalum kuashiria hapa. Lakini pia ina maana kwamba kama mimi tu kufanya kitu kama mimi na lengo zaidi ya hapa, kwamba ina maana kwamba, literally, kwamba tu kuchapishwa bila ya haja ya kweli kuwaita printf, au magazeti, au kazi yoyote kama hiyo. Hivyo tutaweza kuja nyuma na kwamba katika muda tu. Kwanza, hebu kufanya hili. Ndani ya appliance, tuna saraka ya kuitwa Vhosts, kwa virtual majeshi, kufyeka jeshi mitaa, kufyeka umma. Hivyo ni verbose kidogo, lakini hadithi ya muda mrefu mfupi, appliance ni iliyoundwa si tu kusaidia C. Ni pia iliyoundwa kwa msaada wa PHP. Lakini ni pia iliyoundwa na kuwa mtandao server, na server database. Na ni iliyoundwa, na kwa kweli kimeundwa, kuwa kukumbusha yoyote kibiashara web hosting kampuni ambayo unaweza kulipa $ 5 kwa mwezi kwa ajili ya, $ 100 kwa mwezi kwa ajili ya. Chochote huduma ni, ni kimeundwa kwa kuwa ni sawa na ulimwengu halisi uzalishaji server. Na nini maana ni kwamba mbio juu ya appliance ni mtandao wa kompyuta programu. Inajitokeza kuitwa Apache. Ni tu bure, na ya chanzo huria, na maarufu sana. Na sisi kimeundwa Apache kujua kwamba kama mimi kutembelea URL fulani, na Chrome browser au ndani ya appliance, kuangalia katika saraka hii kwa files kwamba user ni kuomba. Kwa maneno mengine, basi mimi kwenda mbele na kufanya hii. Ndani ya saraka yangu ya umma, mimi naenda kwa kwenda mbele na kuunda faili kuitwa index.html. Kwamba anatoa mimi tab hapa. Na mimi nina kwenda kwa haraka sana na kwenda mbele na bang nje mpango huu hapa. Doctype HTML, ambayo kwa sasa, tu kudhani una aina. Ni tu tag arcane, si kwamba kweli HTML tag, kwamba unasema kwamba inakuja HTML baadhi. Mimi nina kwenda mbele na recreate yale tuliona wakati iliyopita. Hapa ni mkuu wa ukurasa. Ndani ya kichwa mara - hivyo jina. Hivyo tutaweza kusema hello, dunia. Na kisha chini hapa ilikuwa tag mwili. Hebu karibu tag mwili. Na kisha katika hapa mimi itabidi pia kusema, tu kwa ajili ya ufafanuzi, hello dunia. Hivyo hii ni, arguably, rahisi inawezekana mtandao ukurasa wanaweza kufanya hiyo ni halali. Ni syntactically halali. Kila kitu ambacho kufunguliwa kufungwa. Kila kitu ni nicely katika styled na indented. Basi hebu angalia sasa jinsi mimi wanaweza kupata faili hii. Naam, napenda kwenda kwa Chrome hapa. Na napenda kwenda http://localhost/index.html. Basi nini jeshi la mtaa? Naam, zaidi ya kompyuta yoyote katika dunia, Linux, Mac OS, Windows, ina jina la utani linaitwa jeshi. Hivyo kama wewe milele unataka kuzungumza kwa kompyuta yako mwenyewe - angalau, oddly reflexively - hatajali ndani ya jeshi. Bila kujali kompyuta yako halisi ni kuitwa, kama ni ya Daudi MacBook Hewa, au kitu zaidi verbose kama hiyo. Hivyo URL hii ni inaonekana kwenda kutumia HTTP kuzungumza na mwenyeji wa mitaa, kompyuta moja, appliance, na ni kwenda kuomba, tu kuchukua nadhani, nini faili? Index.html. Hivyo appliance imekuwa kimeundwa katika mapema ili kujua kuwa kama mimi nina kuuliza kwa kitu kama index.html, kuangalia kwa katika folder inaitwa Vhosts, katika folder inaitwa localhost, katika folder humo inaitwa umma. Hiyo ambapo wote wa umma wangu mafaili ni kwenda kuwa. Hivyo mimi nina sasa kwenda hit kuingia. Na damn, kuna haramu kwamba ujumbe, inayojulikana kama 403, numeric kanuni kwa ajili yake. Hivyo nini makosa hapa? Naam, ni haitoshi tu kuweka faili ndani ya folda yangu. Mimi haja kwa kweli kufanya yafuatayo. Basi mimi kwenda katika saraka yangu Vhosts, katika localhost, ndani ya umma, na basi mimi kufanya ls dash l. Na kuna wachache na mambo mengine katika hapa kwa madhumuni ya leo. Lakini taarifa upande wa kushoto, karibu kwa index.html, sisi tu kuona RW moja. Na katika siku za nyuma, nini ina RW alisimama kwa? Tu kusoma wala kuandika. ukweli kwamba anasema rw upande wa kushoto maana mimi, mmiliki wa faili hili, unaweza kusoma au kuandika. Lakini mimi haja ya basi watu wote katika dunia kusoma hii, ingawa si kuandika. Hivyo nina kwenda na mabadiliko ya mfumo wa faili, chmod, kila r pamoja na kutoa kila mtu kusoma ruhusa ya faili inayoitwa index.html. Na kama mimi sasa retype ls dash l, ilani kwamba, zaidi ya hapa, baadhi ya zaidi A ya kuwa popped up. Na kwa sasa, spec huenda kwa undani zaidi. Kwa ajili ya P seti 7, kwamba tu ina maana kila mtu sasa unaweza kusoma faili hili. Kama mimi kurejea browser yangu sasa na Reload, voilà. Hujambo dunia. Na naweza hata kufungua yangu zana Chrome na kuona, na kama tu na Google Facebook kwamba kuna HTML yangu, formatted kidogo tofauti na colorized. Kama mimi kwenda tab mtandao na Reload ukurasa, taarifa kwamba kuna kupata kuomba kwamba Chrome ni kutuma kwa appliance. Kuna 200 kwa ajili ya kwamba Hasa faili. Hivyo katika muda mfupi, hii ni jinsi gani hawa wote vipande mbalimbali ni kuja pamoja. Ni hivyo tu hutokea kwamba mtandao wa kompyuta sisi ni kutumia haki ya sasa si ya kijijini, kama Facebook. Ni halisi kwenye kompyuta moja, ambayo ni sawa kabisa. Basi nini zaidi tunaweza kufanya katika ukurasa wa mtandao? Naam, tu, hebu mpepea kupitia michache ya mambo haya. Lakini napenda kwenda mbele na kufungua upya Gedit na index.html. Na napenda kwenda mbele na kusema hujambo CS50, kuokoa faili hii, kwenda nyuma ya browser, kweli aghali mabadiliko. Lakini nini kama tunataka kweli zilizounganishwa na kitu sasa? Hivyo zinageuka kwamba tunaweza kuwa na viungo katika HTML kwamba ni tu vitambulisho wenyewe. Inajitokeza kuitwa nanga tag. href sawa https://www.cs50.net, www.cs50.net karibu quote, karibu bracket. Na sasa hebu angalia nini mwingine akija ijayo. Nilipofungua tag. Mimi sasa haja ya kuwapa maneno kama CS50. Hebu karibu tag. Na taarifa ya mambo machache. Hata ingawa kuna jambo hili fumbo hapa, mimi si mara kwa mara ni wakati karibu tag. Wewe karibu tu tag na jina lake peke yake. Na hii ni nini inayojulikana kama sifa na thamani. Sifa tu kurekebisha tabia wa baadhi tag ndani ya ukurasa. Hivyo hii ni kubainisha kwamba mfumuko kumbukumbu, njia dhana ya kusema URL kwa nanga hii, kwa ajili ya hii kiungo, lazima CS50.net. Na maandishi kwamba tunataka kuonyesha user ni kwamba URL mbichi, lakini badala CS50 neno. Hivyo kama sasa mimi Reload, napenda kuvuta kwa uwazi, basi mimi upya ukurasa, taarifa kwamba tuna hii shule ya zamani bluu alitilia kiungo. Na kama mimi hover juu yake, na ni kwenda kuwa mgumu kuona, katika chini kushoto mkono kona ya screen, taarifa ambayo inasema URL ambayo Mimi nina kwenda. Na kama mimi unabonyeza huko, voila, sasa mimi nina kufanya kurasa za mtandao. Na tumekuwa wakiongozwa wenyewe kwa ukurasa wa nyumbani. Lakini taarifa ya nini uwezo hii inatoa yetu. Usalama ni mengi sana katika Vogue siku hizi. Nini kama mimi badala yake kusema kitu kama hili, na mimi badala yake kwenda, kusema, hebu kuona, fakeCS50.net. Reload ukurasa huu. OK, hivyo taarifa hiyo bado inaonekana kama mimi nina kwenda CS50, isipokuwa jicho wajanja utakuwa taarifa mimi nina kwenda CS50 bandia. Mimi guessing uwanja hii si kuchukuliwa. OK, hivyo si inapatikana. Hivyo kwamba ni vizuri. Hakuna mtu kweli ana kwamba uwanja. Lakini hebu kuwa kidogo zaidi malicious kwa sababu hiyo ni aina ya kijinga. Nini kama sisi mabadiliko ya hii PayPal. Na nini kama sisi wito huu, kama, www.paypal.badguy.com, chochote uwanja ni. Kwamba pengine lipo. Hivyo sasa napenda upya ukurasa. Na hapa tuna aina ya hadaa mashambulizi, P-H-I-S-H-I-N-G, ambayo ni neno silly kutolewa kwa ajili ya mashambulizi ya kwamba anajaribu habari samaki, au, vizuri zaidi bado, fedha, kati ya watu na tricking yao katika kutoa taarifa kwamba wapate si vinginevyo kufanya. Hii inaonekana kabisa legit, haki? Mimi ni lazima kuwa na uhusiano hapa Paypal.com. Katika haki, kama mimi sexed it up na baadhi ya graphics, tunaweza kufanya ni kuangalia zaidi kama PayPal. Haki? Kwa sababu mimi naweza, kama kando, Mimi naweza kwenda Paypal.com. Na tumekuwa tu kuona jinsi naweza kuona yote ya HTML yao. Mimi nilikuwa tu nakala yake na recreate aesthetics ya Paypal badala ya kwenda umri wa shule hapa. Lakini taarifa, bila shaka, na ni kidogo wadogo bado, tu katika chini mkono wa kushoto kona, katika kama hatua 10 font, unaona nini URL uko kweli kwenda kuongozwa. Na hivyo kama ve milele wamezipata spam akisema kwenda mbele, na wewe ni akaunti imekuwa kuathirika. Tafadhali bonyeza kiungo hiki na hebu kujua password yako ili tuweze kuhakikisha uko wewe, si milele kufanya hivyo. Mambo haya lazima kwenda bila kusema. Lakini ni ajabu amusing, na kutisha, jinsi kila mwaka huu inaonekana kutokea kwa baadhi ya mashirika yasiyo ya sifuri idadi ya watu. Na kwamba ni uzuri ya hadaa mashambulizi. Unaweza kutuma nje barua pepe milioni. Na hata kama 0.01% ya watu kweli bonyeza Paypal na kukupa yako password, kwamba bado idadi mashirika yasiyo ya sifuri ya watu ambao wameweza kutoa tu pesa zao. Na kutuma barua pepe, bila shaka, ni kabisa rahisi na, kimsingi, bure siku hizi. Hivyo muda mrefu hadithi fupi, ajabu nzuri wazo, haki? Miaka iliyopita, hii ilikuwa mwanzo mtandao, kuwezesha mtandao wa viungo kati ya rasilimali. Lakini hivyo haraka, inaweza kuwa kutumika kwa ajili ya mgonjwa. Na barua pepe, inatosha kusema, hizi siku, kuwa HTML iliyoingia ndani. Vizuri, basi mimi tu jambo moja nyingine. Na tutaweza kuahirisha kwa kiasi kikubwa na sehemu katika tatizo kuweka saba kwa kuruhusu kuchunguza maelezo. Lakini napenda kwenda mbele na kufanya mambo kadhaa hapa. Mimi nina kwenda katika na kutangaza kile kinachoitwa div, au mgawanyiko, ya ukurasa. Hebu karibu kwamba tag div. Na mimi nina kwenda kusema hadi hapa juu ya ukurasa. Na kisha chini ya hii, mimi nina kwenda kufanya kitu kama div mwingine, karibu hii tag, na kufanya chini ya ukurasa. Na hebu kuokoa yake. Hivyo sasa hebu kwenda nyuma ya faili yangu. Sana aghali. Lakini nini mgawanyiko ni kutumika kwa ajili ya, chini ya Hood, ni kweli nzuri ya kimuundo kipengele. Haina aesthetics yoyote hadi sasa kama tunaweza kuona, chochote zaidi, inaonekana, kuweka mambo kwenye mistari mpya. Lakini sikia, kama kando, tu kupiga Kuingia haina ukate katika HTML kama ni haina katika C. Unaweza kufikiri kwamba hiyo ni kwenda kuweka nice big pengo kati ya juu na chini ya ukurasa. Lakini ni kupuuzwa. Nafasi nyeupe kimsingi ni kupuuzwa katika mtandao kurasa nyingine kuliko ya kwanza sana nafasi bar tabia, au kurudi carriage, kwamba wewe hit kwenye keyboard. Kama unataka zaidi line mapumziko, wewe kuwa na bayana ni wewe mwenyewe. Hivyo nina kwenda kufanya mambo kadhaa hapa kuonyesha nini kinaendelea. Mimi nina kwenda kuongeza sifa kwamba lipo Na tena, njia ya kujifunza nini sifa zipo, nini vitambulisho zipo, kweli, ni online rejea. HTML ni aina ya lugha - ni si lugha ya programu. Ni lugha ghafi - kwamba baada ya nzuri ya nusu saa, labda, saa na , itabidi kufahamu kwa hakika, wengi uwezekano, wazo msingi. Na kisha tafuta Google mbali ni kila vitambulisho inawezekana kwamba unaweza kuwa na nia in Na kwa spec, kwamba ni kabisa kuwakaribisha na moyo hapa. Hivyo sasa napenda kwenda mbele na kufanya kitu kama hiki. Background-rangi. Na sasa, mimi naenda kufanya kitu kama nyekundu, semicolon. Na unaweza kufanya hivyo katika chache njia tofauti. Mimi nina aina tu ya kuandika ni kama super wazi iwezekanavyo. Lakini zinageuka kuwa thamani hii hapa ni kile kinachoitwa CSS, kuachia Sinema Shuka, ambayo ni mwingine Lugha kabisa. CSS ana kitu cha kufanya na kufungua vitambulisho na vitambulisho karibu. Ina nini na mali. Na mali ni muhimu tu thamani jozi, ambayo ina maana ya baadhi ya neno, koloni, na kisha baadhi ya neno mmoja. Na kama una ndio nyingi, au tu moja hapa, unaweza mwisho ni pamoja na semicolon, tu kwa uwazi. Lakini hiyo, pia, itakuwa kazi hapa. Sasa nini hii kwenda kufanya? Pengine unaweza nadhani. Hebu kwenda mbele na Reload ukurasa huu. Na sasa ni kweli kuja pamoja. Hivyo juu ya ukurasa wangu ni nyekundu. Lakini nini muhimu hapa ni kwamba, mimi zilizotajwa mapema, div kwamba anatoa mgawanyo wa ukurasa. Na kwamba ni kweli nini anafanya. Kimsingi mgawanyiko ndani ya ukurasa Mstatili kwamba unaweza kisha kuendesha. Na hii dhana ya mistatili ni aina ya kulazimisha katika kwamba, kama unafikiri ya yoyote zaidi tovuti, kuna pengine baadhi ya muundo na hiyo. Zaidi ya wewe kuwa pengine kuonekana mara chache Mzee wa Facebook ikiwa umeingia katika muda wote. Lakini juu ya nyumba ukurasa wa Facebook, kuna baadhi ya aina ya div pamoja juu. Na inaweza kuwa kama rahisi kama div moja, lakini kuna mstatili mkoa huko. wengine wa ukurasa ni kama div kubwa, kama kiasi kubwa mstatili kanda. Hivyo muda mrefu hadithi fupi, tu kwa kuwa na hizi kidogo ujenzi wa vitalu, uwezo wa mambo mfano kama mistatili, kama upana au mwembamba, unaweza pia kufanya uwezekano wa nguzo, utapata kuweka kurasa, kwa kweli, hata hivyo ungependa. Sisi ni kweli tu scratching uso hapa. Hakika, kama mimi kufanya nyingine moja moja, napenda kwenda mbele na kufanya style, background-rangi, tutaweza kufanya kitu kama rangi ya bluu, quotes karibu. Hebu Reload hii. Hivyo sasa ni kupata hata uglier. Lakini sasa siwezi aina ya kuonyesha mbali P yangu kuweka ujuzi tano, sawa? Nyekundu. Inanikumbusha RGB, Red Kijani Blue triples. Naam, ni zamu nje katika programu ya mtandao, au mtandao wa kubuni, ambayo ni hii, tumekuwa bado iliyowekwa kitu per se, unaweza kweli na kanuni hexadesimoli. Hivyo kitu kitu, kitu kitu, kitu kitu. Hivyo unaweza kuwa na sita hexadesimoli wahusika, au tatu, katika baadhi ya kesi, na kila moja ya alama wale swali ina kuwa maadili hexadesimoli, sifuri kupitia f. Kama mimi nataka kuwa na mengi ya nyekundu, na hakuna kijani, na hakuna bluu, nini kinyume cha sifuri wakati wa kutumia hex? Ni f. Hivyo naweza kufanya ff, sifuri sifuri, sifuri sifuri, kuokoa hii, na sasa kuja chini hapa. Na mimi si kweli kuona mabadiliko. Hivyo quote unquote "nyekundu" ni inaonekana sawa kwa ajili ya nyekundu wote, hakuna kijani, hakuna rangi ya bluu. Wakati huo huo, hebu makusudi kubadili moja hii kuwa ni kitu random, kama ABCDF. Hebu angalia nini kuwa ni. Ni bluu kweli nzuri, kweli, mtoto bluu. Haki wote, hivyo hizi ni baadhi tu ya sasa kiasi fulani random michanganyiko ya wahusika. Hivyo sisi si kupata yakidhoofishwa katika hapa. Lakini tena, hii anaongea na usahihi kuwa unaweza kuanza kuomba - hata kama wewe ni kuzidiwa sana na aesthetics. Kwa kweli, kama kweli unataka kuwa hisia, napenda kwenda mbele na mabadiliko ya ukubwa wa herufi, kwa mfano. Na taarifa ya semicolon, ambayo ni muhimu huko. Fonti, tunaweza kuwa na ujinga tu hapa, 96 uhakika. Ila hiyo. Wow, kwamba ni kubwa fonti. Haki wote, hivyo ni rahisi sana. Na kweli, wewe ni kimsingi kuona sana kwanza mtandao ukurasa mimi alifanya miaka iliyopita, wakati mimi kwanza kujifunza mambo haya. Ni rahisi sana kufanya sana hideous mambo haraka. Na kama wewe ni ukoo na Wayback Mashine ya juu ya archive.org, wewe unaweza kupata wangu wote hideous undergrad kurasa za mtandao. Mmoja alikuwa KERMIT Frog mbele. Nilikwenda kwa awamu ambapo nilifikiri ilikuwa ni baridi kuchukua historia ya pazia nyekundu, wakati mimi kujifunza jinsi ya unaweza tile images tena, na tena, na tena, kujaza ukurasa na kubwa tacky nyekundu pazia. Na kisha, juu ya hii, ilikuwa icon kwamba alikuwa na bonyeza kuingia nyumbani kwangu ukurasa kwa sababu hiyo ilikuwa sana katika Vogue. Na kisha mpango yangu ya kwanza mimi milele aliandika hakuwa katika PHP, lakini kwa lugha kuitwa Pearl, aliandika kitabu mgeni, ambayo ni jambo la kweli baridi kwamba mengi ya watu wanatarajia kuwa juu ya ukurasa wa nyumbani. Baada ya kupata na ukurasa, wanataka saini katika, na kusema wewe ni nani, na kwa nini uko pale. Hii ni miaka ya 1990 style mtandao kubuni. Lakini siku hizi, hakika, tumekuwa kuja mengi mbali zaidi. Na utaona, katika sehemu ya, na hata katika tatizo kuweka saba, na leveraging maktaba siku hizi, hivyo ni rahisi kufanya prettier mambo haraka. Kweli hapa, tuko tu scratching uso wa nini unaweza kufanya stylistically. Na kwa kweli, tayari, napenda kusisitiza kwamba hii ni tayari kupata mbaya, si tu aesthetically, lakini katika suala ya mtindo wa kificho yangu, au kubuni ya maadili yangu. Mimi sasa comingled HTML, ambayo ni rangi ya kijani vitambulisho wazi pale, pamoja na CSS mali, ambayo kabisa legit. Hii ni kweli ambapo lugha alikuwa na asili yake. Lakini kwa maslahi ya kubuni safi, kiasi kama sisi ilianza factoring mambo nje kutoka C files ndani. files h, basi mimi kweli mazoezi ya aina hiyo ya kanuni na kuanza kufanya hii badala yake. Napenda kuweka tag style up hapa, ambayo pia lipo katika HTML, na napenda bayana zifuatazo. Hebu kufuta hii. Background Michezo ni kwenda kuwa nyekundu. Mimi naenda kufuta kabisa. Mimi nina kwenda kujikwamua style sifa, na mimi nina kwenda kwa kipekee kutambua hii div na neno - kiholela, lakini sababu halali, kunukuu unquote "juu." Na id ni maalum sifa ya kipekee amefafanua fulani HTML kipengele kama kuwa na kwamba id. Kama mimi sasa wanataka stylized yake, juu hapa nchini mkuu wa ukurasa wangu, ndani ya style tag, taarifa kwamba Naweza kufanya juu hash. Na kisha naweza kuweka michache ya curly braces, kukumbusha ya C, na kisha basi mimi kuweka katika stylization kwamba. Na napenda kwenda mbele hapa na wanatarajia ambapo mimi nina kwenda kwa hili. Napenda pia kujenga moja kwa div chini. Hebu kunyakua kanuni hii hideous kutoka chini hapa, kuiweka katika hapa, na mimi itakuwa zaidi kidogo anal sasa na stylized ni na tu kuweka mambo yao wenyewe line, na kuishia kwa semicolons. Hebu kujikwamua tag style. Lakini nina kufanyika bado. Mimi haja ya kufanya jambo moja nyingine. Yeah, id sawa quote unquote, "chini," au chochote id nataka kutoa kwamba kipengele. Sasa, basi mimi kwenda nyuma zaidi ya hapa. Na hii ni za mauaji. Siwezi kushughulika na kumweka 96. Hebu kufanya 24 uhakika. Au unaweza kuwa sahihi zaidi. Unaweza kweli kutumia piseli, udhibiti, hivyo kwamba kwa kweli kupata finer nafaka kudhibiti juu ya ukurasa wako. Kama kando, kwamba si lazima jambo bora kama watumiaji, kwa ajili ya upatikanaji sababu, wanataka kuwa na uwezo wa kuongeza ukubwa. Hivyo kutambua kwamba kuna njia ya kufanya mambo ambayo si lazima ngumu ya kanuni ya kila kitu. Haki wote, hivyo ni kubwa zaidi, 24 uhakika, kuliko chochote default ni. Lakini sasa ni safi kidogo. Na napenda kuchukua hatua hii moja zaidi. Tu kama wazo la header files, taarifa tuko hatua moja karibu na kwamba. Nina nje zitawekwa, lakini bado kushoto, ndani ya ukurasa wangu, wale sheria CSS. Kwa nini huenda nataka kuchukua hatua hii moja zaidi, kuondoa kabisa, na kuiweka katika faili tofauti? Hivyo siwezi kutumia tena yake, sawa? Hii ni aina tu ya Intuition hivi sasa. Kabla, mimi alidai kwamba ilikuwa tu kupata mbaya kuwa mtindo sifa ndani ya divs wenyewe. Lakini aina tu ya kufikiri kwamba kupitia. Kama ukurasa wako anapata tena na tena, kama wewe ni kuweka hapa, na hapa, na hapa, na hapa, yote haya tofauti rangi, na ukubwa wa herufi, na wengine vile sifa, ukurasa wako ni kwa haraka sana kwenda kuwa magumu kwa ajili yenu. Kama mtu anakuja juu yako na anasema, oh, unajua nini? Ningependa kwa kweli kama kubadilisha ukubwa font na mbili pointi ziada, wanaweza kuwa na kwenda na kupata na kuchukua nafasi ya idadi kubwa ya mstari wa kanuni. Ni zaidi ya kulazimisha kuvifanya wote aesthetics vile hapa. Lakini kama wewe Ningependa kutumia tena wale aesthetics katika kurasa nyingi za mtandao, kila zaidi ya kulazimisha, kwa ajili ya mfano, kuunda faili kuitwa na yaliyomo hizo. Na napenda kufanya hili. Ila hii faili. Nasema styles.css, holela, lakini kawaida. Mimi itabidi kuweka katika nyumba Yohana Harvard Directory sasa kwa unyenyekevu. Na nini siwezi kufanya katika mtandao ukurasa wangu ni kupata kuondoa ya tag style kabisa, na kiasi fulani unintuitively, kutumia kiungo tag, ambayo haina kukupa kiungo katika hyperlink, hisia clickable, lakini ambapo mimi kusema kiungo, href sawa styles.css. Na uhusiano kwamba hii kipengele imekuwa na ukurasa wa mtandao ni kumtumikia kama style yake ya karatasi. Hivyo ni jinsi gani mimi kujua hili? Moja, wewe tu kusoma mwongozo, au wewe Google kote, na wewe kuangalia rasilimali mbalimbali. I mean, kwamba kweli ni jinsi gani ya kuchukua mbinu kama hii, na, kwa kuzingatia na hili wazo la kufundisha mwenyewe mpya lugha, tena, utapata kwamba kuna tu idadi finite ya mambo kwa lugha yoyote kwamba, mara moja kupata yao, utapata kwamba anapata kwa kasi na kasi ya kuandika. Hakika, kujifunza programu mpya lugha ni hivyo kwa kasi zaidi kuliko mpya amesema lugha kwa sababu mambo haya ni ndogo sana na mengi zaidi just defined. Lakini nimepata yalionyesha kidogo ya makosa hapa. Mbona nilieleza hii mbele kufyeka hapa? Kwa sababu mimi na kuifunga tag. Mimi lazima karibu tag. Na utasikia kupata rasilimali wasiohesabika online kwamba hawana lazima vitambulisho karibu. Na realistically, siyo madhubuti muhimu kwa ajili ya kiufundi na kuna sababu ya ukweli, browsers ni tu haki wavumilivu wa makosa katika mtandao kurasa, kwa bora au mbaya, lakini zaidi ya mbaya. Hivyo hii hapa ni njia tu safi ya akisema kitu kijinga kama hii, ambapo kama unataka kufungua tag kiungo lakini karibu, kuna kweli hakuna dhana ya maudhui kwa tag kiungo. Ni njia tu kupakia hii kuwasilisha na kuiweka hapa. Ni kama ni pamoja na mkali katika C. Unaweza kufungua na kufunga tag wote kwa mara moja ndani tag huo. Na kuna wengine mifano ya hili. Hii si njia ya kufanya hili, lakini tag br, kwa ajili ya mapumziko ya mstari, kama mimi kweli alitaka kufanikisha kile nilikuwa kujaribu kabla kwa kupiga Enter, kama Mimi kupanga kusema line mapumziko, mstari wa mapumziko, line mapumziko, kuvunja line, na kisha Reload ukurasa huu, sasa wewe utakuwa taarifa kwamba chini ya ukurasa ni, kweli kweli, mbali zaidi chini katika chini ya ukurasa. Lakini hata ambayo yanaweza kufanyika zaidi cleanly na CSS, na kwa kishindo, na kwa aesthetic wengine vile mbinu. Hivyo kwa sasa, takeaways ni hii. Katika HTML, tuna hizi mambo kuitwa vitambulisho. Katika CSS, tuna mambo haya kuitwa mali. Tunaweza comingle lugha hizi mbili, aidha kwa kutumia sifa style, au tag mtindo, au bora bado, factoring ni nje kabisa, kama sisi kufanya katika tatizo kuweka 7. Maswali, basi, kuhusu dhana ya misingi hapa? Watazamaji: Nina swali. SPIKA 1: Oh, pole. Watazamaji: Kwa nini si ni rangi - SPIKA 1: Oh, katika tabo nyingine? Hii hapa? Watazamaji: Hapana, ni kama - SPIKA 1: Oh, hiyo ni kwa sababu Mimi mara kuwa sloppy. Mimi kuweka faili katika mahali sahihi. Hivyo kama mimi kweli kuiweka hapa, na mimi chmod hivyo, wote + r kwa styles.css, na sasa upya ukurasa, sasa sisi kupata stylization nyuma. Na kwa sababu ukubwa font ni tofauti, hatuoni kabisa kama vile nyeupe nafasi. Sisi badala kuona nini default ni badala yake. Nzuri swali. Ndiyo? Watazamaji: Kwa nini ni kiungo tag ndani ya kichwa? SPIKA 1: Kwa nini ni viungo tag ndani ya kichwa - short jibu, kwa sababu tu. Hiyo ni nini iliamuliwa. Hiyo ambapo vitambulisho kiungo kwenda wakati una nini wito nje style karatasi. Maswali mengine? Haki zote, vizuri hebu kufanya hili. Tuna furaha sana mbele yetu leo. Hiyo tu scratching uso wa CSS. Hebu kufanya hili. Hebu kuchukua dakika tano kuvunja hapa kwa sababu, kwa email yangu, hebu kutundika katika huko mpaka 2:30-ish leo. Lakini kama wewe kufanya na kuondoka, hiyo faini. Lakini tutaweza kusonga mbele baada ya mapumziko ya dakika tano. Na tutaweza kujifunza kitu kidogo kuhusu PHP, MySQL, na zaidi. Haki ya wote, hivyo hebu jaribu, sasa, kufunga chache ya mawazo haya pamoja na kufanya, kusema, tafuta yetu wenyewe injini. Mimi niliona, badala ajabu, zifuatazo. Wakati wewe ni katika Google.com, wewe ni kawaida katika URL kama huu hapa na kitu chochote baada ya dot com. Lakini kama mimi kutafuta kitu kijinga kama paka, na hit Enter, tutaweza kupata - si kijinga, lakini unajua. OK, hivyo taarifa, juu ya ukurasa, sasa, URL ina, bila shaka, iliyopita. Na hii si kitu mpya kwa yeyote kati yetu. Bonyeza viungo na mambo kinatokea kwenye mtandao. Lakini nini kuvutia hapa ni yafuatayo. Kuna mengi yote ya clutter, lakini basi mimi kutupa mbali mambo kwamba mimi si kabisa kuelewa au hana kweli kuangalia husika. Hebu kujikwamua hii. Hebu kujikwamua hii. Na napenda tu kujikwamua ya yote haya. Na sasa taarifa kwamba paka ni katika URL, ikifuatiwa na q, basi sawa ishara mbele yake. Hivyo zinageuka hii ni jinsi gani Njia hiyo kazi linapokuja kwa pembejeo na mazao. Tumekuwa kwa muda mrefu kuongelea nyeusi masanduku, haki? Hivyo kama hii ni kazi kutekelezwa hapa kama sanduku nyeusi, inachukua pembejeo na inazalisha pato, vizuri, ina maana ambayo wewe kutoa mchango kwa tovuti ni kwa njia ya, mara nyingi, ya URL wake. Wewe tu kuweka alama ya swali na kisha muhimu sawa na thamani. Na kisha labda Ampersand, na kisha ufunguo mwingine sawa na thamani, basi labda Ampersand mwingine, muhimu ni sawa na thamani. Kwamba ni jinsi gani kupita katika funguo na maadili, jozi ya pembejeo. Hivyo kama mimi hit Enter sasa, nini kuvutia kuhusu Google ni kwamba wote kwamba clutter mimi ilifutwa haionekani kuwa madhubuti muhimu. Mimi wote wanahitaji kutuma Google ni swali q alama sawa na paka kupata nyuma paka baadhi. Naam, maana ya kwamba, basi, ni kama mimi kuvuta up gedit, nimeanza kufanya search injini yangu mwenyewe hapa katika faili iitwayo seach0.html. Na napenda kwenda mbele na kufuta moja zaidi line kwamba wewe walikuwa hawatakiwi kuona. Na sasa, napenda kwenda katika browser yangu mwenyewe, hivyo si kwa Google, na kwenda http://localhost. Na kwamba kinaendelea kupata njia. Hivyo sisi ni kwenda na kusema kwaheri kwa kwamba kwa sasa, hoja hii zaidi ya hapa, oh, sasa sisi ni kwenda na kusema kwaheri kwa faili hilo. Wakati wowote una faili inayoitwa index.html au index.php katika directory, ikiwa ni mtandao wa kompyuta kimeundwa kwa njia hii, nini utasikia kuona, na msingi, ni maudhui ya kwamba faili badala ya orodha ya directory, kama nilitaka hapa. Zaidi juu ya hili katika spec. Hamkuyaona kwamba. Hivyo hii ni kile Mimi kweli alitaka. Lakini wakati iliyopita, kulikuwa na faili kwenye folda hii inaitwa index.html na index.php. Na hivyo mtandao wa kompyuta mara kunionyeshea files wale. Badala yake, nataka saraka hii kuorodhesha hapa. Hivyo mimi nina kwenda katika CSS na kwenda search0. Na mimi kudai kwamba hii ni kwenda kuwa mwanzo wa ushindani yangu mwenyewe kutafuta injini. Na kwa kufanya hivyo, mimi nina kwenda katika hapa, katika CSS, na kufungua na gedit, tafuta 0. Lakini kwa bahati mbaya, kuna si kiasi kinachoendelea hapa. Wote mimi ilikuwa kutumia tag viongozi, ambayo hutokea kuitwa h1, ambayo kimsingi ina maana kubwa na ujasiri, na hiyo ni yake. Lakini njia ambayo tunaweza kutoa pembejeo ni kupitia haya mambo kuitwa fomu. Hivyo basi mimi kwenda mbele na kufungua na kufunga, preemptively, tag fomu huko. Na napenda kwenda mbele na kufanya kitu kama hiki. Pembejeo, aina sawa na maandishi. Na kisha hebu karibu tag ndani ya mabano wenyewe. Sina haja ya kuanza shamba Nakala na kuacha uwanja maandishi. Ni tu kwenda kwa kuwa huko au la. Na kisha chini ya kwamba, hebu kufanya pembejeo aina sawa kuwasilisha. Ila hii. Na sasa hebu tu kufanya sanity haraka kuangalia. Hebu Reload. OK, hivyo si mbaya. Ni si mtindo wa Google, lakini ni pretty karibu. Kuna shamba maandishi. Siwezi aina baadhi ya mambo katika, hit Enter, lakini hakuna kinachotokea bado. Na kwamba kwa sababu mimi si maalum utekelezaji kwa ajili ya fomu hii, hivyo kusema. Hivyo kama mimi kwenda nyuma ya kipengele fomu, ni zamu nje, na ninajua hii tu kutokana na kuwa na kusoma nyaraka, kwamba tag fomu inachukua sifa kuitwa hatua ambayo ni URL ya tovuti ambayo wewe unataka kutuma fomu. Mimi si kweli nadhani sisi na muda wa kutekeleza nzima nyuma mwisho kwa kutafuta injini leo. Hivyo sisi ni kwenda tu kusema, eh, nenda google.com tafuta /. Na sasa basi mimi karibu quotes yangu. Na napenda zaidi bayana kwamba Njia ya kutumia ni kwenda kuitwa kupata. Muda mrefu hadithi fupi, kuna njia mbili, saa uchache, kwamba unaweza kuwasilisha taarifa kutoka browser kwa seva. Moja ni kupata, na, kwa madhumuni ya leo, kwamba tu ina maana katika URL. Unaweza kuona hasa alama swali, sawa na ishara, na kwamba ampersands tuliona mapema. Au kuna njia mbadala ya kuitwa post. Kwa sasa, baada ya kujua kwamba ni mara nyingi hutumika wakati unataka upload files, kama picha na kadhalika, au wakati unataka kuwasilisha kadi habari, au nywila, kitu kwamba hana kweli mantiki, conceptually, au usalama wa hekima, na kuishia katika URL ya browser yako, ambapo kutekwa wazazi, au roommates, au mtu yeyote kwa kupata kwa kompyuta yako ili kuona. Basi hebu ila hapa. Na mimi haja ya kufanya jambo moja nyingine. Haina inatosha tu kusema nipe shamba maandishi. Mimi na kutoa kwamba shamba ya thamani ya jina. Hivyo basi mimi kukopa uchaguzi ya Google ya majina, q, na bayana kwamba pili wanampa Mimi si kweli huduma kuhusu jina ya kifungo Submit. Kila najali ni kuwasilisha nini mtumiaji aina in Na sasa hii ni aina ya mbaya. Ni tu anasema kuwasilisha. Ni zamu nje, na najua hii kutoka nyaraka, naweza kusema kweli thamani sawa quote unquote "cs50 SEACH, "karibu kunukuu. Basi hebu Reload tena. Hivyo mimi kuendelea kupiga amri-R, au Kudhibiti-R kwenye keyboard yangu Reload. Sasa tuna zaidi ya kuvutia kutafuta injini. Haina kabisa kuangalia kama Google bado, ingawa. Basi hebu kwenda mbele katika hapa na kufanya kidogo line mapumziko. OK, hivyo sasa tuna Google. Sisi kwa kweli kufanya kuwa karibu Google. Hivyo sasa nini kitatokea? Mimi naenda aina katika kitu kama Cats. Na browser ni kwenda Hazrat kwamba fomu kwamba mimi defined. Na ni kwenda kupeleka mtumiaji URL hiyo. Hivyo wakati huu, kwa sababu baadhi ya wadadisi, I got habari zaidi kuhusu hifadhi ya kuliko kuhusu paka halisi. Lakini hiyo ni nzuri kwa sababu taarifa sisi bado kuishia hapa, q sawa na paka. Hivyo muda mrefu hadithi fupi, inaonekana haki yasiyo na maana ya kupata maoni kutoka kwa mtumiaji. Na kuwa wa haki, kuna mashada ya aina nyingine ya mashamba ya fomu. Kuna hundi masanduku, na kidogo pande kipekee redio vifungo, na kushuka chini menyu, na zaidi. Lakini wale wote ni kama kiasi urahisi kutekelezwa kama Nakala hii shamba mara. Na hatimaye, sisi tu na kufanya mtu uhakika ni kusikiliza kwa upande mwingine mwisho wa mstari ili kupata kwamba habari kusindika, kwa namna fulani, na kutupatia nyuma paka wetu. Hebu tuangalie kidogo kushiriki zaidi mfano. Basi mimi kwenda katika saraka Vhost yangu, katika mitaa ya jeshi, umma, na ambapo mimi kuweka chanzo leo kanuni. Yote hii itakuwa juu ya kozi tovuti kwa ajili ya wewe Tinker na. Na kama mimi kwenda katika froshims, napenda kufungua hadi faili hili sasa, froshim0.php. Moja hii ni verbose zaidi kidogo, hivyo sisi si kuandika hii kuanzia mwanzo. Lakini tu taarifa chache sasa kiasi fulani ukoo sifa. Moja, fomu tag, tofauti action. Ni si kamili ya URL. Sasa, ni dhahiri na faili inayoitwa register0.php kwa sababu, katika wakati huu, Mimi nina kwenda kufundisha angaa kidogo kitu kuhusu PHP, programu lugha, kwa sababu PHP inaweza kutumika kutekeleza yale Google kutekelezwa kama mwisho nyuma ya injini zao za kutafuta. Google, katika hali halisi, pengine anatumia baadhi ya chatu, baadhi ya C + +, na mashada ya lugha nyingine. Lakini sisi inaweza shaka kutekeleza tafuta matokeo ya kutumia PHP kama sisi alitaka. Lakini kwa sasa, tutaweza kuitunza rahisi. Na hii ni kweli ni kukumbusha ya moja wa tovuti nyingine sana kwanza mimi alifanya miaka iliyopita. Nyuma katika siku zangu, ninyi kusajiliwa kwa intramural michezo kama Freshman na kujaza kipande cha karatasi, kutembea hela yard, na kuacha ni katika mailbox ya Proctor katika Wigglesworth, na kwamba alikuwa ni jinsi gani kusajiliwa. Na hivyo mradi wangu muda mfupi baada ya CS50, ilikuwa kuweka kwamba, ambayo hufanya kamili maana, kwenye mtandao, ambayo ilikuwa si kama katika Vogue kisha kama ilivyo sasa. Lakini wote tulikuwa na kufanya ni kujenga, kimsingi, HTML fomu. Na fomu kwamba inaonekana takribani kama hii. Mimi nilikuwa na pembejeo kwa ajili ya Freshman ya jina. Mimi nilikuwa na sanduku mwingine hundi ya iwapo au au walitaka kuwa nahodha, nini jinsia zao ilikuwa, na nini Dorm yao ilikuwa. Na kisha mimi ngumu coded katika mambo kama Apley Mahakama, na Canaday, Grays, na kadhalika. Hivyo tena, mpya ya vitambulisho. Hawajaona hizi kabla, mpya sifa, lakini haki kupatikana. Mara baada ya kuona mfano, unaweza aina ya kukopa kwamba wazo na kufanya tone chini menu kwa ajili ya kitu zaidi. Lakini nini muhimu ni kwamba kila moja ya mambo haya yana majina. Na chini ya fomu hii, kuna submit kifungo ambaye studio, au thamani, ni rejista. Basi hebu kwenda kwa ukurasa huu. Napenda kurudi nyuma katika directory orodha. Hebu kwenda katika froshims, na kwenda froshim0.php. Hivyo ni hideous, kuwa haki. Ili niweze dhahiri stylize hii pamoja na baadhi ya CSS, mimi naweza kufanya baadhi ya graphics, labda kuongeza rangi fulani, na kufanya hii prettier. Lakini functionally, ningependa kusema kwamba hii ni kweli pretty kamili. Bahati mbaya, wakati mimi kujaza hii nje, Daudi, Kapteni, Mwanaume, tutaweza kuchagua, hebu sema Matthews, Daftari, yote ambayo hufanyika ni hii. Lakini taarifa michache ya takeaways. Moja, nini faili akarudi wale matokeo, inaonekana? Hivyo ni kweli, register0.php. Hivyo ukweli kwamba tuliona kwamba hatua thamani wakati iliyopita kwa register0, hii corroborates kwamba sisi hakika kumalizika hadi saa faili husika. Sasa hii ni mbaya maandishi. Lakini taarifa kwamba Nakala hii ni kuja kutoka jeshi mitaa, ambayo ni kutoka appliance. Fikiria appliance sasa kama tu mtandao wa kompyuta ambayo inaweza kuwa katika Sayansi Center. Inaweza kuwa kwenye mtandao halisi. Hivyo ni hadharani kupatikana. Hivyo ni wazi, kuna baadhi ya njia ya kupita kuunda pembejeo shamba kwa seva hivyo kwamba wanaweza kufanya kitu pamoja nao. Kwa bahati mbaya, register0 ni pretty kijinga. All yake ni magazeti nje ya safu kwamba inaonekana kama hii. Na si safu katika maana ya kwamba sisi kujua. Zinageuka kuwa PHP, na mengi ya lugha, na si tu numerically indexed arrays ambao kwanza index ni sifuri, basi mmoja, kisha mbili, kisha dot, dot, dot, n bala 1. Hii ni nini wito associative safu. safu associative ni moja ambayo unaweza kuhifadhi jozi thamani muhimu ambapo muhimu ni lazima si idadi. Ni inaweza ukweli kuwa kamba, neno. Na hivyo hii inaweza kutekelezwa, chini ya Hood, ni zamu nje, kutumia mfumo wa data inajulikana kama? Walidhani kitu makubwa mara kuhusu kutokea - hash meza. Hivyo meza hash, kukumbuka, wale wa wewe ambaye alifanya hivyo kwa ajili ya P seti 6, au hata kukumbuka yake, angalau hata kama alivyofanya kujaribu, meza hash, katika matumizi yetu, ilikuwa kutumiwa tu kuhifadhi maneno. Lakini kwa kweli, wewe walikuwa kuhifadhi funguo na maadili. Kama wewe kutekelezwa meza hash kwa ajili ya P kuweka 6 kamusi, funguo walikuwa maneno yenyewe, na maadili walikuwa ufanisi kweli au uongo. Ndiyo, hapa, au inamuunga, hakuna, si hapa. Naam, tunaweza kujumlisha kwamba wazo. Na tunaweza kutumia data sawa sana muundo wa kuhifadhi si kamba yenyewe peke yake katika meza yako hash, lakini tuseme kwamba katika kila moja ya hash yako meza ya nodi. Na unaweza hata kufanya hivyo katika kujaribu badala ya kuwa na bool. Unaweza kuwa na kitu kingine. Nini kama si muhimu ilikuwa Maxwell, kwa ajili ya mfano, lakini quote unquote "jina," au quote unquote "nahodha." Na ndani ya yako C data muundo, unaweza kuweka thamani, si tu Boolean, lakini thamani ya kama quote unquote "Daudi," au "M", au "Matthews," na kadhalika. Hivyo wale huo data miundo sisi kutumika inaonekana zipo katika lugha nyingine. Na ningependa kusema wao ni kweli sana, rahisi sana kupata hapa. Hebu kwa kweli kuangalia sasa katika baadhi ya syntax vile. Mimi nina kwenda katika saraka PHP. Na mimi nina kwenda kufungua bora toleo la hujambo-0 kutoka kabla. Taarifa kwamba wote mimi ilikuwa kuongeza baadhi ya comments. Hivyo tunaweza kujikwamua ovyo kwamba. Na mpango huu gani kweli Prints hujambo sababu nimekuwa maalum kati ya vitambulisho kwamba nataka nitafanya kwamba kanuni. Sasa, tutaweza kuona katika wakati kwa nini hii ni muhimu. Lakini hebu kufungua nyingine moja mfano hapa. Hebu kwenda mbele na kufungua kusema, gedit ya hali moja. Hii ni njia ya nyuma katika muda sasa. Lakini wiki iliyopita, nadhani, katika wiki moja au wiki mbili, tulikuwa mfano kuitwa conditions1.c. Na niliamua reimplement katika PHP, tu kwa aina ya kusisitiza kwamba PHP, syntactically, ni karibu sawa kwa C. Hii si leap kubwa kutoka wiki iliyopita na hii. Taarifa juu ya mpango huu, ambayo inaanza, kama kabla, pamoja na baadhi ya maoni, ambayo mimi itabidi kujikwamua kama ya ovyo. Taarifa kwamba mimi niko katika PHP mode katika faili hii. Hivyo kanuni hii, tutaweza kuona, kupata kunyongwa. Taarifa kwamba kuna readline, ambayo pengine ni Analog katika PHP ya GetString. Taarifa ni tofauti kidogo. Wewe kweli bayana wa haraka kwa kazi kuitwa kusoma mstari, na kwamba nini mtumiaji anaona. Hivyo hawana printf manually. Lakini si kwamba mpango kubwa. Mimi nina kwenda kuhifadhi, ndani ya $ n, kurudi thamani ya hii, hivyo chochote mtumiaji aina katika ni int yao. Na hapa mwingine udadisi. Zinageuka, katika PHP, yoyote kutofautiana tu ina kuwa prefixed na ishara ya dola. Ni kidogo annoying. Lakini taarifa ya nini mimi si kufanyika katika PHP. Kinachokosekana kutoka mkono wa kushoto upande wa sawa na ishara? Bila kutaja aina. Hivyo hii ni tofauti na C. Kwa bora au mbaya, PHP ni loosely typed lugha. Ni gani kuwa na idadi. Ni gani kuwa masharti. Ni gani booleans. Na ni gani kuwa na wachache nyingine data aina. Lakini wewe, programu, kwa kawaida hawana huduma ya juu yao. suala la mafanikio ya hii ni kwamba inafanya ni rahisi kidogo kwa mpango. Unaweza kufikiri kidogo kidogo. Upande mwingine ni pia kuufungua wewe hadi uwezo mende kama ajali kutibu idadi kama kamba, kamba kama idadi, uwezekano, lakini hata basi, PHP, na mengi ya lugha, ni pretty kuhimili. Wao kutumia kile kinachoitwa thabiti akitoa. Na kama wewe kujaribu kutumia n katika mazingira ya hali ya numeric, itakuwa kubadilisha nini hapa ni kwenda kuwa kamba, kwa sababu kama mtumiaji aina kitu katika, na kupata matokeo, kama na readline, au kupata kamba, hiyo ni kwenda na kurudi kamba. Lakini sikia, mistari michache baadaye, mimi kuangalia kama n ni kubwa kuliko sufuri. Hivyo PHP ni kwenda kutupwa inamuunga yangu "Kamba" 123, au chochote mtumiaji aina katika, katika int. Hivyo katika muda mfupi, mambo ya kazi tu mengi zaidi intuitively. Hivyo sisi sasa kuanza kupumzika wachache mambo ambayo tumekuwa kufanyika huko nyuma. mengi ya mambo haya ni huo, ingawa. Bado ni sawa sawa. Kama PHP kando pia ina sawa sawa sawa, lakini zaidi juu ya kwamba, pengine, katika siku zijazo. Hiyo ilikuwa ni. Typo lakini wawili sawa na ishara maana sawa Jambo kama kabla, kwa kulinganisha. printf maana kitu sawa kama kabla. Backslash n maana sawa Jambo kama kabla. Hivyo ni jinsi gani mimi kuendesha mpango huu? Naam, kama kabla, kama mimi kufanya PHP, conditions1.php, na aina ya idadi kama 123. Hiyo ni idadi chanya. Kama mimi aina katika 0, mimi pick 0. Na kama mimi aina katika 123 hasi, mimi kupata nyuma ya simu hasi, ambayo ni ya pekee kusema, syntactically, PHP ni super, super sawa. Hivyo ni kwa nini hii sasa muhimu katika mazingira ya mtandao? Naam, hebu kwenda nyuma froshims hii mfano, ambayo inaonekana, tena, kama hii hapa. Na hebu kweli kuvuta up ukurasa wa mtandao tena, ambayo inaonekana kama hii. Nini tunaweza kufanya na data hiyo in? Naam, napenda kufungua karibu zaidi toleo la hii. Na utaona kwamba tatizo seti vipimo matembezi yenu kupitia machache ya haya. Badala ya kuanza na sifuri, hebu tuangalie froshims3, ambayo haina kidogo zaidi. Taarifa ya kwanza, kwa kweli, hebu kufungua up nini 0 mara, hivyo unaweza kuona nini kujiandikisha 0 ilikuwa. Taarifa ya nini kujiandikisha 0 alivyofanya. Moja, nina maoni kwa juu. Kufuta hizo na lengo tu juu ya hii. Zaidi ya yaliyomo ya register0.php ni, ni wazi, ni lugha gani? Tu mbichi PHP. Hivyo taarifa, faili hii haina kuanza na, kwa wakati huu, bracket wazi, swali, PHP. PHP gani kuruhusu intermingle PHP kificho na HTML. Lakini mimi tumefanya kwamba hapa ndani ya ukurasa wa zaidi ya hapa. Sasa, tena, utaweza tu kujua hii kutoka alimtazama mwongozo. print_r, ni zamu nje, ni print_recursive. _recursive Na hii ni Handy matumizi ya kazi kwamba tu Prints nje, recursively, chochote mkono ni. Kama wewe mkono ni safu, kutakuwa na magazeti safu. Kama wewe mkono ni ya simu, kutakuwa na magazeti ya simu. Mkono ni kamba, hivyo itabidi magazeti kamba. Kama wewe mkono ni meza hash, ni itakuwa magazeti nje ya meza hash. Huna kuandika kila ya kwamba kanuni mwenyewe. Sasa taarifa kwamba mimi nina kuingia PHP mode zaidi ya hapa. Mimi exiting PHP mode zaidi ya hapa. Hivyo wakati server mtandao wasomaji faili hii juu hadi chini, kushoto na kulia, kwa sababu ni mwisho katika jina la faili kuitwa. php, chochote si ndani ya vitambulisho PHP ni kwenda tu kuwa na mate nje, kama HTML ghafi. Hakuna mpango mkubwa. Lakini kwa haraka kama matangazo ya mtandao wa kompyuta hii, ni kwenda kusema, mimi lazima si mate nje, literally, print_r ya goli. Mimi lazima kutekeleza yafuatayo mstari wa kanuni. Hivyo swali la mwisho, basi, ya faili hili ni vizuri, nini heck ni hii? Kuchukua nadhani. Je, ni $ _POST, pengine? Watazamaji: [inaudible] SPIKA 1: Yeah, data posted. Kumbuka, hebu nyuma katika kitabu muda kwa muda tu. froshim0, tena, inaonekana kama hii. wengi super ya hii ni HTML. Tena, baadhi ya vitambulisho una si kuonekana bado, au na ambayo wewe tayari ni ukoo. Lakini jambo kuvutia ilikuwa hii. Msitari huu mmoja ni nini kweli Viungo kwa faili wetu register0.php. Mimi kuwasilisha kupitia baada mbinu. Na hiyo ina maana kwamba vigezo aina user katika si kwenda kuishia wapi. Wao siyo kwenda show up katika URL. Wao bado kwenda kutumwa kutoka mteja, kutoka browser, kwa server, lakini tu kupitia baadhi ya wengine utaratibu kwamba tutaweza kuondoa mikono yetu saa ya leo, lakini siyo katika URL. Lakini taarifa uhusiano wa sasa na baada, ambayo, kwa mkataba, ni Herufi za chini hapa. Lakini kama mimi kufungua register0.php, Mimi inaonekana uchapishaji hii. Hivyo hii ni aina ya weird kumtaja mkataba. Lakini nini ni nzuri katika PHP ni kwamba wakati kutumia PHP katika mazingira ya mtandao, si wakati amri line kama mimi wakati iliyopita, wakati wewe ni kweli kutumia katika mtandao ukurasa, katika saraka Vhost kama sisi, moja kwa moja itakuwa PHP kujaza hii kitu, ambayo ni safu associative, hivyo kusema, meza hash, na kila kitu mtumiaji typed in Kwa kifupi _POST, $ katika mechi zote ni kimataifa variable kwamba PHP tu magically inajenga kwa ajili yenu wakati kutumia PHP katika mazingira mtandao. Na unaweka ndani yake yote ya majina ya vigezo katika fomu kuwa iliwasilishwa kwa faili hii na wote wa maadili ambayo mtumiaji typed in Hivyo ni mikono na wewe nini mtumiaji typed katika fomu hiyo. Hivyo kabla, tulipata kweli wajinga pato wa tu kuona hili kwa sababu wote mimi ilikuwa recursively magazeti hii safu. muhimu ni jina, thamani ni Daudi. muhimu ni Kapteni. thamani ni juu. Na mshale mara mbili na angle bracket huko, hii ni holela. Hii si kanuni. Hii ni njia tu PHP ya kuonyesha nini thamani ya muhimu ni baadhi. Lakini sasa napenda kupendekeza kwamba katika froshIMs3, ni karibu kufanana isipokuwa elekeza na faili hii. Na tena, tunakwenda tu aina ya mtazamo saa hii, tu kuona baadhi ya syntax, lakini taarifa ya kile faili hili gani. Kuchukua nadhani tu ya msingi ya mistari ya kanuni, ambayo pengine hawana kuangalia kama Kigiriki, kwa kiasi fulani, ni inaonekana kufanya. Faili hii ni namna fulani kuhusiana kwa barua, barua pepe. Hivyo ni nini mpango huu kufanya? Katika toleo hili, kama ningekuwa kweli kujaza fomu hii - na napenda kwenda froshIMs3, si froshIMs0 - fomu inaonekana sawa. Daudi, nahodha, kiume, Dorm, Matthews. Lakini kama mimi kuwasilisha hii, faili hili ni kwenda kwenda register3.php. Na mimi kudai, kwa kuangalia ni chanzo code, ni kwenda namna fulani kuhusisha email. Hebu kwenda mbele na kufungua hii juu katika dirisha kubwa, hivyo sisi unaweza kuona zaidi cleanly. Tuko katika jeshi Vhosts, mitaa, umma, froshims. Mimi naenda kufungua tofauti mpango, hivyo tu sisi unaweza kuona zaidi kwa mara moja. Hivyo sasa hapa, taarifa mambo machache. Saa ya juu ya faili ni wazi bracket, swali alama, PHP. Kisha kuna rundo la maoni, ambayo tunaweza kupuuza, ni uninteresting kwa sasa. Sasa kuna hii. Zinageuka PHP ina mengi ya maadili ya kuitwa kuhitaji. Ni sawa sana katika roho ya C pamoja, ni pamoja na hash, ambayo kimsingi grabs maudhui ya baadhi nyingine faili na tu plops yao hapa, hivyo unaweza kutumia yao. Katika kesi hiyo, appliance ina, kabla ya imewekwa, maktaba, huru na wazi chanzo maktaba kuitwa PHP mailer kwamba mtu yeyote anaweza download kutoka internet. Sisi tu alifanya hivyo kwa ajili yenu. Na hii ina maana mimi sasa wana email utendaji katika ovyo wangu. Sasa, taarifa mambo machache. Mimi nina kwenda kuhalalisha fomu ya kuwasilisha. Zamu nje PHP, moja, ina Moderators pointi kwa operator si, kama C. Lakini PHP pia ina kazi kuitwa tupu. Tupu tu anarudi kweli kama thamani ya kitu wewe mkono ni katika mabano ni tupu, kama mtumiaji hakuwa aina kitu in Hivyo hii ni kusema, na taarifa syntax, sana kukumbusha ya C, kama jina muhimu, hivyo shamba jina katika fomu, ambayo ilikuwa in kupitia post, na mtumiaji, si kwa tupu, na wao jinsia si tupu katika fomu kama vizuri, na Dorm yao si tupu - lakini taarifa Sijali kuhusu Kapteni, basi ni sisi kwenda kufanya? Mimi nina kwenda kutekeleza line hii ya maadili. Na unaweza kufikiria aina hii ya kama malloc, lakini ni kidogo fancier zaidi ya hiyo. Lakini kwa sasa hii inanipa maalum Struct ya aina PHP mailer. Lakini kupuuza neno msingi jipya kwa leo. Sasa mimi nina kwenda kuwaita kazi kuitwa IsSMTP, ambayo anasema, kutumia SMTP. Hii ni bandari ya 25, kama video wiki iliyopita, wakati jambo alikuwa kutupa barua pepe ndani ya firewall. Bandari 25 ni SMTP. SMTP ina maana kutumia seva ya barua. Ambayo moja, tunaweza kutumia Harvard SMTP.fas.harvard.edu. Tunaweza kuweka kutoka anwani kuwa Yohana Harvard. Kama mimi kitabu chini zaidi, siwezi kuweka anuani ya mpokeaji, tu kiholela, kuwa Yohana Harvard ni kama vile. Hivyo yeye kwenda kuwa emailing mwenyewe. Sasa naweza kuweka somo kuwa usajili. Na siwezi kuweka mwili wa barua pepe kama ifuatavyo. Line hii inaonekana kidogo zaidi fumbo, lakini hiyo ni kwa sababu tu kuna mengi wa habari katika hilo. Moja, kuna operator dot. Mtu lazima kujua tayari kile operator dot gani. Ni concatenation. Hivyo kama unataka kuchukua kamba katika PHP, na append yake, au prepend yake, mwingine kamba katika PHP, kumshukuru Mungu wewe hawana kutumia strcopy na malloc, Na yote hayo tena. Kama unataka concatenate masharti mawili, anayenijali kumbukumbu. Hebu PHP kwamba takwimu kwa ajili yenu. Nini PHP kufanya na operator dot hapa ni kufanya tu adhabu kubwa nje ya mstari huu, mstari huu, mstari huu, hii line. Na sasa ilani, ni kwenda kuwa plugging katika maadili. Hivyo barua pepe kwamba John Harvard kinaendelea kupokea ni halisi kwenda kusema jina, koloni, kitu, badala yake, basi sisi kamba na kuifunga concatenate juu ya chochote mtumiaji typed katika, basi mstari mpya. Basi, juu ya mstari wa pili wa Yohana Harvard barua pepe, ni kwenda kusema Nahodha, Juu au Hakuna kitu. Ni kwenda kusema jinsia, kiume au wa kike. Dorm ni kwenda kuwa Matthews katika kesi yangu. Na kisha taarifa semicolon ukoo mwishoni sana. Na kisha, chini hapa, ilani, kwa kiasi fulani cryptic bado, lakini tena, kufuatia mfano kwamba itakuwa zaidi ya ukoo baada ya P kuweka 7, kama kutuma barua anarudi uongo, kisha kwenda mbele na kufa. Hivyo PHP ina kazi kuitwa kufa, ambayo, literally, tu unaua tovuti na tu Prints nje chochote kumweleza yake - yake ni kufa maneno, hivyo kusema. Na kwamba, katika kesi hiyo, itakuwa magazeti nje nini info kosa ni kwa chochote kilichotokea kwenda vibaya. Hivyo muda mrefu hadithi fupi hapa, nini sisi ni mfano ambapo wakati mtumiaji elekeza fomu, froshim0, froshims3.php, unaendelea na register3.php. Lakini register3.php kisha kuendelea kutekeleza yote ya mistari haya. Hivyo kuna wachache kuchukua aways hapa. Moja, ni inaonekana haki rahisi, programmatically, kwa kutuma barua pepe, ambayo ni nzuri. Wakati watumiaji kujiandikisha kwa ajili ya tovuti yako, katika kesi hii, wakati wao kujiandikisha kwa ajili yako michezo, unaweza email Freshman Proctor, au Yohana Harvard, katika kesi hii. Lakini pia ina maana unaweza kufanya nini? Kutuma barua pepe kutoka kwa mtu yeyote kwa mtu yeyote. Na hii ni kweli sana. Hii si kama kufanyika kwa urahisi kama wewe ni kutumika kwa kutumia Gmail. Lakini kama wameweza milele kutumika Eudora au Mtazamo, unaweza pretty much kuwaambia mail server kwamba wewe ni mtu yeyote unataka. Na hii ni pale ambapo mimi haja ya kuweka kwenye kwamba kofia na kusema, si kufanya hili. Lakini hii ni ushahidi wa jinsi tu rahisi ni kufanya mashambulizi ya hadaa, na kutuma barua pepe bila majina, na spam, kwa ujumla zaidi. Na ni kweli majipu chini ukweli kwamba wote unahitaji ni baadhi ya programu upatikanaji. Kama kando, yangu wakutane wa karibu na bodi ad, Freshman yangu mwenyewe mwaka, mara wakati mimi kugundua hii baridi hila kwamba, wow, unaweza kutuma barua pepe kutoka kwa mtu yeyote. Na hivyo sisi walikuwa kuwa na baadhi ya kijinga hoja, literally, katika Matthews, miongoni mwa Proctor kundi yangu. Mimi wala hata kukumbuka nini suala hilo. Lakini nilitaka kujaribu kuweka mwisho wa mjadala huu wa kijinga. Hivyo niliamua mimi tu kutuma barua pepe kwa Proctor kundi yangu, na kujifanya kuwa guy nyingine, na ambao maoni mimi khitalifiana, na kuwa naye acquiesce kwa chochote maoni yangu ilikuwa katika mjadala huu hasa. Na hivyo mimi kughushi email hii kwa kutumia mbinu sawa katika roho hii. Lakini ilikuwa ni rahisi kweli kwa wakati. Hit kutuma. Yeye hakuwa radhi, wala wanaotaka wamekuwa bodi ad. Na mimi mara kwa haraka sana hawakupata ndani ya sekunde kwa sababu, kama unajua, mimi saini barua pepe yangu katika njia fulani. Na ingawa mimi kufanya hivyo manually, katika kubwa sehemu, miaka 15 baadaye kwa sababu nilikuwa wana matatizo na kwamba. Sina saini kwenye email yangu sasa. Lakini mwaka 1995, mimi tu alikuwa sig, saini katika barua pepe yangu. Hivyo kulikuwa na kumbuka hii akisema, Ndugu Proctor kundi, mimi acquiesce maoni yangu na kukubaliana na Daudi, saini na hivyo hivyo, mstari wa mwezi, mpya mstari, DJM. Hivyo si kufanya hivyo au, kwa ujumla, kuchukua Faida ya mbinu hii. Lakini wakati wa kufanya tovuti, kama kwa ajili ya mradi wako wa mwisho, wakati wa kufanya tovuti kwa ajili ya kitu ujasiriamali, hii ni jinsi gani, pragmatically, unaweza kujiinua huduma nyingine za kwenye mtandao kama barua na kisha kweli kutuma mambo kwa kutumia kanuni. Hivyo ni jinsi gani tunaweza kuboresha juu ya hili? Naam, kwanza hebu kuchukua ziara ya haraka ya baadhi ya mambo ambayo utaona, na kisha kuchukua kuangalia mifano michache. Hivyo moja, kuwahakikishia, kwa sababu sisi ni akiruka PHP. Na najua, wakati fulani, itabidi kwa kweli hii kuanza kuandika kama wewe si tayari. Kutambua kwamba, moja, kuu ni aina ya nje ya dirisha na PHP. Kama unataka kuandika kanuni kwamba anapata kunyongwa, wewe tu kuanza kuandika katika faili inayoitwa. php ya muda mrefu kama una mabano wazi swali PHP tag. Lakini taarifa hizi ni masharti katika php. Taarifa, hii ni exact slide tulikuwa katika wiki moja wakati tulikuwa hali katika Masharti C. katika PHP ni kimuundo na syntactically sawa. Tu mabadiliko ya kweli ni kama nimepata vigezo husika, una wale dola ishara. Wakati huo huo, Boolean maneno kuangalia kama hii kwa ajili ya au-ing au na-ing pamoja. Swichi kuangalia sawa. Nini ni nzuri katika PHP, ambapo katika C, swichi kuwa kesi ya primitives kama ints au chars, katika PHP kesi yako kauli kweli anaweza juu ya masharti yote, ambayo ni kweli aina ya nzuri. Huwaokoeni baadhi ya wakati. Hawakuweza kufanya hivyo katika C. Hapa ni kitanzi kwa katika PHP. Ni kufanana. Wanaweza kuwa na baadhi ya ishara ya dola kwa vigezo. Huna kutaja kwamba kitu ni int. Wewe tu kutangaza na ishara ya dola na jina la kutofautiana. Lakini kwa kitanzi ni sawa. kitanzi wakati ni sawa. kufanya wakati kitanzi ni sawa. Hii ni tofauti kidogo. Hivyo kwa PHP, na safu, unaweza statically kutangaza safu, kama katika C, lakini wewe kutumia mabano mraba. Katika C, ungependa kutumia braces curly, kama wewe hata alijua kwamba. Lakini hii ni kweli ni ya kawaida sana katika PHP kutangaza safu, katika kesi hii, ya idadi, na kuwaita kutofautiana namba. Vigezo wenyewe kuangalia kama hii. Hapa ni kamba, kunukuu unquote "hello dunia ". Unaweza kuwa na n backslash. Mimi tu hawana katika kesi hii. Sasa hii ni kujenga kuvutia. C hana hii. Lakini hii ni super kusaidia. Na utaona hii katika P seti 7 spec - kwa ajili ya kujenga kila aina. Kama unataka kusisitiza juu ya yote ya vipengele safu, huna kukabiliana na $ i na $ n, na + +, na wote. Unaweza literally kusema, katika PHP, hii - kwa kila idadi kama ya simu, hivyo Mimi nina kuchukua kwamba $ idadi ni safu ya idadi. Na wakati mimi kusema kwa idadi ya kila aina kama posta, hii ni kwenda moja kwa moja, kama kitanzi yangu executes, update, juu ya kila iteration, thamani ndani ya dola idadi ishara - tena, na tena, na tena kutembea kwa ajili yangu juu ya safu hiyo. Hivyo tu tuokoa kanuni. Hakuna semicolons, hakuna + + 's, hakuna i ni, hakuna cha n, ni nzuri tu. Lakini pia ina PHP hii. Na hii ni super nguvu. Na wewe utakuwa kutumia mikono hii, juu, katika P kuweka 7. Na safu associative pia alitangaza pamoja na mabano mraba. Lakini taarifa syntax sasa. Ni sawa na yale tuliona na print_r wakati iliyopita. Ngapi funguo, kama kuangalia kidogo sanity, haina safu hii wanaonekana kuwa na. Hivyo ina mbili. Na mimi simu hii safu. Lakini kama inasaidia, unaweza kufikiri ya hii meza kama hash, au kama safu associative. Lakini ni tu tofauti aina ya safu. Na tena, lugha mbalimbali kuwa na haya. Tutaweza kuona kitu sawa katika JavaScript pia. Kuna funguo mbili. Moja ni quote unquote, "ishara," mmoja ni quote unquote "bei." Na wale funguo kila mmoja kuwa na thamani. Katika kesi hii thamani ishara ni FB, kwa ajili ya Thamani Facebook, na bei ni 49, 26, ambayo ilikuwa biashara ya Facebook bei kama ya asubuhi hii. Kwa hiyo kile ni muhimu kuhusu safu associative. Mimi naweza kuwa alikuwa numerically indexed safu na tu rahisi mraba mabano. Na mimi naweza kuwa na dola ishara quote sawa tu hii. Hebu kweli kufanya hivyo. Nadhani badala tu alitangaza hii safu kama hiyo. Hiyo ni kikamilifu halali, syntactically. Haina kupoteza habari yoyote, per se. Mimi bado kuona kwamba ni ishara fb, na kwamba bei ni 49, 26. Hivyo kwa nini ni associative arrays kulazimisha? Watazamaji: Huwezi kukumbuka ambapo wewe kuweka mambo ya ajabu. SPIKA 1: Hasa, huna kukumbuka wapi kuweka mambo ya ajabu. Huna kwa kiholela kukumbuka kuwa alama hisa katika mabano ni sifuri, na bei ya hisa katika mabano ni moja, ambayo ni hatari hasa kama wewe kubadili mambo, hatimaye. Ni kiasi nicer kujiunga kile Tutamwita metadata na data yako halisi. Ningependa kusema kwamba kile sisi kweli huduma kuhusu hapa ni fb na 49, 26. ishara na bei ni metadata kwamba inaeleza data sisi kweli huduma ya juu. Lakini hii ni kiasi tu rahisi kupata. Sasa, kama kando nini bei ya sisi kulipa? Tumekuwa kufanya hii katika CS50 kwa wiki. Hulka hii ni lazima kuja kwa gharama fulani. Kumbukumbu. Hivyo wewe si tu hifadhi ya 32-bit integer, kwa mfano. Wewe ni hifadhi ya alama / 0, pengine. Hivyo wewe ni kutumia kumbukumbu zaidi. Na nini utendaji wa kuangalia kitu juu katika associative safu, pengine? Ni pengine polepole. Upatikanaji random ni nzuri, hasa wakati unaweza kufanya search mapacha. Lakini kama wewe ni kweli sasa kuangalia si kwa idadi, lakini kwa masharti, hii kweli ni kutekelezwa chini ya kofia, pengine kama meza hash, ambapo kutumia ama meza hash na chaining tofauti. Au unaweza kutumia kujaribu kwa kweli kuhifadhi maadili. Hivyo labda unaweza kufanya wakati mara kwa mara, lakini bado una kuangalia S-Y-M-B-O-L, uwezekano, badala ya 32 tu bits na kuangalia kitu juu. Hivyo tena, wale mawazo sawa kuja nyuma na kurudia katika hali hii. Lakini tena, PHP sasa ina baadhi super globals kwamba, ni zamu nje, ni associative arrays. Tumemwona mtu mmoja wakati iliyopita, $ _POST. Na kwamba kimataifa super ana funguo na maadili. Hasa, funguo line up na nini? Wapi funguo katika _POST $ kuja kutoka? Tu kwa kurejea? Watazamaji: Jina. SPIKA 1: Jina, wapi? Watazamaji: [inaudible] SPIKA 1: Jina ni sifa. Vizuri ambapo, ambapo walivyofanya awali kuja kutoka? fomu. Hivyo kama ana ukurasa HTML tag fomu, ndani ya ambayo ni baadhi ya pembejeo, kama kuangalia masanduku, masanduku ya maandishi, kushuka chini menyu, ambayo kila mmoja ana jina, wale majina kuishia kama funguo katika _POST $, na, kusema ukweli, kwa jambo hilo, $ _GET. Kama njia ni wa kupata, sawa wazo. Ni tu katika tofauti super kimataifa. Na maadili, bila shaka, kuja kutoka chochote mtumiaji typed katika saa yake au wake browser. Lakini kuna wengine wachache. Kuna kuki, ambayo tutaweza kuja nyuma na hatimaye. Lakini hayo ni mambo kwamba unajua mtandao anatumia kwa baadhi ya mema au mabaya. Lakini tutaweza kuja nyuma na kwamba. Server na kikao, na wale wawili kuwa baadhi ya matumizi maalum. Lakini hebu tuangalie hii. Hebu kwenda mbele na kufungua mfano Hivyo kuitwa mvc0.php MVC anasimama kwa zifuatazo. Na sisi kuanzisha hii mapema zaidi ni kawaida, kwa kweli, kupata wewe kubuni Tatizo kuweka 7, na pia miradi ya mwisho, katika aina ya sekta ya kiwango njia, na njia safi. Ni vizuri kubuni. Hivyo wewe ni juu ya kuona, na utasikia uzoefu, katika P seti 7, dhana, aina ya mawazo ya programu, kwamba inaonekana kitu kidogo kama hii. M kwa ajili ya Model, C kwa Mdhibiti, V kwa View. Muda mrefu hadithi fupi, MVC ni aina tu ya mbinu, njia ya kufanya Nje, hasa, ambapo wewe kuweka yote ya maneno yako, kijinga - mantiki ya biashara - wote wa mali yako miliki katika kile kinachoitwa mtawala, faili kama index.php, au tutaweza kuona, quote.php, au buy.php. Katika mazingira ya Matatizo ya seti 7, yako mifano ya kawaida yana data yako, kitu chochote kuhusiana na database, kama tutaweza hatimaye kuona, na maoni yako vyenye aesthetics ya yako tovuti, HTML, CSS. Hivyo sisi tayari aliona hii katika C kidogo kidogo kwa kutumia. files h. Sisi kwa kweli alipoona hayo wakati iliyopita na CSS, na factoring stylization CSS mambo ya nje ya HTML yetu. Hivyo MVC ni kweli tu kuhusu kuchora mistari katika mchanga na kusema, kuvutia programu kanuni kwa ajili yako tovuti ni katika kile Tutamwita mtawala. Mambo kuhusiana na database kawaida kuishia katika mfano. Lakini utaona, katika Tatizo seti 7, sisi kuunganisha C na M kwa kuitunza rahisi. Lakini mtazamo ni ambapo wote wa HTML yako na aesthetics kawaida kwenda. Hivyo nini maana ya hii katika hali halisi? Naam, napenda kwenda katika MVC wetu saraka kama ifuatavyo. Na utaona zaidi ya haya walitembelea kupitia katika spec. Hivyo katika mvc0, mimi kudai kwamba hii ni, kama, toleo 0 ya Nje CS50. Wote sisi ni baadhi ya HTML, kama kubwa h1 tag, inaonekana. Na kisha orodha Vitone. Sijawahi kuona orodha Vitone kabla, lakini hakuna mpango mkubwa. Hebu haraka kuangalia kanuni chanzo. Zinageuka orodha unordered pamoja na risasi ni wazi mabano ul kwa moja au zaidi orodha ya vitu, li. Hivyo hapa ni ilani tag nanga. Tuliona kwamba wakati iliyopita. Hivyo hii ni jinsi mimi kutekelezwa ukurasa huu. Mimi nimepata viungo wawili, wawili orodha ya vitu, mmoja ul kwa ajili ya orodha unordered, na mwisho matokeo, aesthetically, hii ni sana pretty tovuti, toleo 0 hapa. Lakini nini kuvutia sasa ni jinsi hii ni kutekelezwa chini ya Hood. Hebu kwenda katika gedit na kufungua hii kwanza kabisa mfano wa kuchora picha. Na tutaweza kuangalia nini kiujanja, uwezekano, katika hapa. Sasa kama mimi kwenda katika localhost, umma, MVC, taarifa files chache. Mimi naenda kuwaita haya, kwa sasa, kila controllers. Lakini hiyo ni kidogo ya unyanyasaji kwa sababu utaona kila kitu ni commingled ndani mwao. Na napenda kwenda ndani ya index.php. Na sisi kuona, literally, HTML sawa. Hivyo hata kama faili hili mwisho katika . Php, Haina maana ina yoyote ya kanuni PHP. Inaweza tu kuwa mbichi HTML, ingawa hiyo ni aina ya silly. Lakini taarifa hakuna wazi mabano PHP tag, ila kwa ajili hii, ambayo, kusema ukweli, ni pale tu kutumika kama maoni. Lakini hiyo ni functionally si hata kuwa ya kuvutia. Lakini taarifa hii. Nini kuvutia sasa ni nini mabadiliko kwenye ukurasa huu. Hebu bonyeza Mihadhara. Na taarifa ya URL ni juu ya mabadiliko. Sasa mimi nina katika lectures.php. Hebu bonyeza sifuri. Sasa mimi nina katika week0.php Na sasa basi mimi kufungua files hizi katika gedit. Si tu index, lakini basi mimi kufungua mihadhara. Na napenda kujikwamua maoni kuzingatia sehemu hii tu. Na sasa napenda kufungua moja tu zaidi, week0.php, kutupa maoni, tu ya kusafisha hii up. Na sasa taarifa ifuatayo. Kufikiri kweli ni aina ya makini kuhusu kubuni, na hebu kufanya hivyo line hadi huo, nini kifanyike bora hapa, unafikiri? Jinsi gani mimi kufanya moja kwa wiki? Vipi kuhusu hili. Hivyo hii ni jinsi mimi alifanya wiki moja. Nilipokwenda Picha, New, Kuweka, Ila, week1.php, na kisha nilikwenda katika hapa. Na mimi iliyopita moja - nini ilikuwa hii, moja hadi Ijumaa. Mimi iliyopita zeros kwa moja. Mimi iliyopita hii kwa moja. OK, hivyo sasa tuangalie files yangu. Nini kifanyike tofauti? Ambapo ni fursa, labda? Hivyo kuna fursa ya kuanza factoring mambo haya nje. Basi mimi kufungua, kama spoiler, kwa nini utaona katika P seti 7. Kama mimi kufungua, sasa, index.php katika toleo tano ya hii, inaonekana ni njia zaidi fumbo, admittedly. Lakini hii, sasa, ni kile Mimi nitakuita mtawala hiyo ni kudhibiti mantiki ya ukurasa wangu. Na unaweza aina ya upya, shirikishi, labda, nini kinaendelea. Juu ya mstari wa kwanza, ni kidogo fumbo. Lakini taarifa mimi nina wanaohitaji, kama na mkali pamoja, faili inayoitwa helpers.php. Na kisha mimi nina wito, inaonekana, kazi, aitwaye asimlipe, kupita katika hoja mbili. Moja ni quote unquote, header. Na nyingine ni, aina gani ya data aina ni hii, makao juu ya syntax yetu mapema? Ni safu ya kuhusishwa. Hasa, ni kupita katika cheo pamoja na baadhi ya metadata kwamba kuwakumbusha yangu ni nini na thamani yake. Kisha naona ngumu coded ul, hivyo baadhi ya HTML ghafi. Lakini basi mimi nina nyuma katika hali ya PHP wito asimlipe kazi. Hivyo hata kama wewe sijawahi kutumika HTML au PHP kabla, na hata ingawa hii inaonekana scarier, ni kwa nini hii pengine bora design? Nini bora kuhusu hilo, msingi inference? Watazamaji: [inaudible] SPIKA 1: Chini redundant kwa kuwa hakuna tag zaidi HTML, hakuna zaidi vichwa tag, hakuna zaidi ya mwili tag katika kila faili damn. Badala yake, nimekuwa zitawekwa nje commonalities na pengine kuziweka katika faili namna fulani kuhusiana kwa kichwa. Na kitu kimoja kwa ajili ya mwili wa karibu tag, karibu HTML tag. Kwamba pengine chini hapa ndani ya mahali fulani footer. Na utaona, katika Tatizo seti 7, ziara kidogo kwa njia hii. Hivyo kile uongo mbele? jambo moja kuwa hatuna uwezo lakini kwa kweli ni kuhifadhi data. Na hivyo kile tutaweza kuanza kuona Jumatano, kwa mfano, ni kwamba yako rafiki wa zamani Excel, au namba, utapata kuhifadhi kura ya data katika safu na nguzo. Zamu nje unaweza kufanya hivyo katika nini inayoitwa database, programmatically. manic Na zinageuka, baada ya kuwa, tutaweza kuwa na uwezo wa kuhifadhi vitu kama hii, ambayo utaona tena katika kuweka P 7, kundi zima la majina ya watumiaji na nywila, mwisho ambayo ni ya kweli encrypted, kama wao kiasi walikuwa katika hacker toleo P kuweka 2 ya. Na hatimaye, itabidi kutekeleza mpango huu, eTrade-kama yako mwenyewe tovuti ya kwamba kutekeleza kwa pamoja CS50 fedha. Mwisho, tangu wewe kukaa hapa ili marehemu leo, kama wewe kuja nyuma ya sehemu hii ya chuo hicho, saa 4:00 leo, sisi kukupa si tu ushauri, saa SCES Kushauri Fair, saa 4:00 jioni katika Maxwell-Dworkin, tutaweza kutoa baadhi ya Americone Dream, Cherry Garcia, Chocolate Fudge Brownie, Chocolate Chip Cookie Kinyunga, na, wakati wewe Google Monkey chunky, unaweza kupata hii. Hivyo wote wa kwamba watapata saa 4:00 Jioni katika Maxwell-Dworkin. Kuona juu ya Jumatano pia. SPIKA 2: Wakati ujao CS50, RJ kulala in RJ: Sehemu wangu! Ha! Oh,