1 00:00:00,000 --> 00:00:11,470 2 00:00:11,470 --> 00:00:12,764 >> Tagapagsalita 1: Lahat, maligayang pagdating karapatan likod. 3 00:00:12,764 --> 00:00:14,140 Ito ay CS50. 4 00:00:14,140 --> 00:00:16,800 At ito ay ang simula ng siyam na linggo. 5 00:00:16,800 --> 00:00:19,960 At ito ay ang simula ng ang natitirang ang iyong oras sa CS50, kung saan kami 6 00:00:19,960 --> 00:00:23,170 transition ngayon, sa wakas, sa web aspeto ng kurso, kung saan bibigyan ka 7 00:00:23,170 --> 00:00:26,200 makahanap na ng maraming mga batayan na namin na-export para sa linggo 8 00:00:26,200 --> 00:00:29,270 pa ring bumalik upang bisitahin, o sumaging lagi sa alaala, sa amin. 9 00:00:29,270 --> 00:00:33,440 Ngunit ngayon, makikita mong makita na ito ay isang pagkakasunud-sunod ng magnitude na mas madali upang 10 00:00:33,440 --> 00:00:36,540 tuparin ilang mga gawain at malutas ang ilang mga problema - 11 00:00:36,540 --> 00:00:41,050 kaya magkano kaya na kahit na naisip mo ilang mga problema na set ay masaya sa kanilang 12 00:00:41,050 --> 00:00:44,200 sariling paraan, sa tingin ko na iyong makikita na p-set 7, p itakda 8, at pagkatapos, 13 00:00:44,200 --> 00:00:47,990 sa huli, ang huling proyekto ay magiging ang lahat ng mga mas gratifying dahil bibigyan ka 14 00:00:47,990 --> 00:00:51,830 mahanap na nagsisimula namin upang mang-ahas ngayon ang mga bagay na gusto memory management, at 15 00:00:51,830 --> 00:00:54,190 payo, at kung ano ang nangyayari sa ilalim ng hood. 16 00:00:54,190 --> 00:00:57,310 At muli, pampakay, ang lahat sa buong semestre ay naging layering ito 17 00:00:57,310 --> 00:00:58,030 at layering. 18 00:00:58,030 --> 00:01:00,530 At ngayon kami ay isang uri ng up dito, nakatayo sa 19 00:01:00,530 --> 00:01:01,930 balikat ng mga linggo nakaraan. 20 00:01:01,930 --> 00:01:05,360 >> Ngayon, isipin ang mula sa huling beses na namin uusapang tungkol sa kung paano internet ang nagtrabaho. 21 00:01:05,360 --> 00:01:08,120 At ito ay marahil isang oversimplification, ngunit tandaan na 22 00:01:08,120 --> 00:01:12,960 bawat computer sa mundo ay may isang IP tugunan, kahit na isang bit ng isang 23 00:01:12,960 --> 00:01:14,570 oversimplification pa rin. 24 00:01:14,570 --> 00:01:18,180 At ang mga address na iyon ay ginamit upang katangi-tangi kilalanin machine upang ang 25 00:01:18,180 --> 00:01:22,010 kapag magpadala sa iyo ng impormasyon, o packet, kaya na magsalita, maaari silang magkaroon ng isang pinagmulan 26 00:01:22,010 --> 00:01:24,000 address at patutunguhang address. 27 00:01:24,000 --> 00:01:27,830 At ang mga parehong IP address ay maaaring magamit Parehong para sa mabuti at din para sa kasamaan, 28 00:01:27,830 --> 00:01:29,270 upang masubaybayan mo, halimbawa. 29 00:01:29,270 --> 00:01:32,200 Sa katunayan, ang bawat isa sa iyo ng isang laptop buksan ngayon, o sa isang telepono sa iyong 30 00:01:32,200 --> 00:01:35,070 bulsa, may IP address sa Harvard ng network. 31 00:01:35,070 --> 00:01:39,120 At ito ay hindi lahat na mahirap magkaugnay na sa kung sino at kung saan ka 32 00:01:39,120 --> 00:01:40,180 ang mga araw na ito. 33 00:01:40,180 --> 00:01:42,090 Ngunit higit pa sa na siguro sa hinaharap. 34 00:01:42,090 --> 00:01:46,510 >> Ngayon naisip ko na gusto kong isauli ang ilang mga mga alaala ng [? paghusayin?] at magbibigay sa iyo ng 35 00:01:46,510 --> 00:01:49,360 isa pang clip mula sa isang palabas sa iyo maaaring mahanap pamilyar. 36 00:01:49,360 --> 00:01:52,710 Kung magagawa naming madilim ang mga ilaw para lamang ng ilang segundo. 37 00:01:52,710 --> 00:01:53,960 Ang show Numb3rs. 38 00:01:53,960 --> 00:01:57,510 39 00:01:57,510 --> 00:02:00,540 >> Tagapagsalita 2: Ito ay isang 32-bit address IPP4. 40 00:02:00,540 --> 00:02:01,610 >> Tagapagsalita 3: IPP, pati na sa internet? 41 00:02:01,610 --> 00:02:02,968 >> Tagapagsalita 2: Pribadong network. 42 00:02:02,968 --> 00:02:04,960 Upang pribadong network Amita ni. 43 00:02:04,960 --> 00:02:16,930 44 00:02:16,930 --> 00:02:19,602 Siya ay napakahusay. 45 00:02:19,602 --> 00:02:21,030 >> Tagapagsalita 3: Halika sa, Charlie. 46 00:02:21,030 --> 00:02:21,490 >> Tagapagsalita 2: Ito ay. 47 00:02:21,490 --> 00:02:22,470 Ang isang mirror IP address. 48 00:02:22,470 --> 00:02:27,680 Ang kanyang pagpapaalam sa amin kung ano ang panoorin ang kanyang ginagawa sa real time. 49 00:02:27,680 --> 00:02:30,930 >> Tagapagsalita 1: OK, kaya ang ilang mga bagay sira ang larawang ito. 50 00:02:30,930 --> 00:02:32,920 Kaya isa, at ang isang ito ay katanggap-tanggap, ito ay talagang 51 00:02:32,920 --> 00:02:34,400 hindi isang wastong IP address. 52 00:02:34,400 --> 00:02:38,190 Ang isang wastong IP address ay dapat na mga numero ng form w.x.y.z, kung saan ang bawat isa sa 53 00:02:38,190 --> 00:02:40,000 mga titik ay 0-255. 54 00:02:40,000 --> 00:02:42,330 Ngunit iyon lamang ang fine dahil tulad lamang ng mga pelikula kung saan sila pekeng numero ng telepono, 55 00:02:42,330 --> 00:02:43,520 sila mga pekeng mga IP address. 56 00:02:43,520 --> 00:02:45,230 Hindi mo talaga pindutin ang real server. 57 00:02:45,230 --> 00:02:46,760 >> Ngunit tututol ka, ito ay isang browser. 58 00:02:46,760 --> 00:02:50,760 At browser ay hindi simulan outputting computer na code tulad nito. 59 00:02:50,760 --> 00:02:54,230 At kung tiningnan namin ng kaunti mas malalim, mapansin na ang wika na sila nakikita 60 00:02:54,230 --> 00:02:57,040 sa screen ay isang wika na tinatawag na Layunin C, kung saan ay ang wika sa 61 00:02:57,040 --> 00:02:59,520 na iPhone apps ay nakasulat, lalo na ang mga bago na kinasasangkutan 62 00:02:59,520 --> 00:03:03,540 krayola, bilang maaari mong makita mula sa ang source code dito. 63 00:03:03,540 --> 00:03:06,600 64 00:03:06,600 --> 00:03:07,560 >> OK, naisip ko na ito ay nakatatawa. 65 00:03:07,560 --> 00:03:12,240 Kaya ang snippet ng code ay walang pasubali walang kinalaman sa kung anumang ito 66 00:03:12,240 --> 00:03:13,940 partikular na episode ay tungkol sa. 67 00:03:13,940 --> 00:03:17,590 Kaya biro ang uri ng sa tao paglalaan para sa ipinagkaloob. 68 00:03:17,590 --> 00:03:20,220 Ngunit ito ay hindi lahat na mahirap upang makakuha ng mga teknikal na detalye ng karapatan. 69 00:03:20,220 --> 00:03:21,980 At Gusto ko hinihikayat ka. 70 00:03:21,980 --> 00:03:25,530 At talagang, 50 maaaring napakahusay palayawin ng maraming mga palabas sa TV at pelikula o mo 71 00:03:25,530 --> 00:03:27,320 dahil makikita mo na ito lamang hindi posible kung ano ang kanilang 72 00:03:27,320 --> 00:03:28,630 paggawa sa screen. 73 00:03:28,630 --> 00:03:31,750 Ngunit sa katunayan, ito ang code na iyong baka makita ito sa isang iPhone application 74 00:03:31,750 --> 00:03:33,640 o Mac OS application. 75 00:03:33,640 --> 00:03:35,685 Ito ay walang kinalaman sa lahat ang gagawin sa seguridad. 76 00:03:35,685 --> 00:03:38,610 Kaya abangan ang para sa higit pang tulad masaya mga bagay tulad na. 77 00:03:38,610 --> 00:03:42,720 >> Ngunit ngayon namin simulan upang sumisid sa talaga malalim sa isang buong saklaw ng mga wika. 78 00:03:42,720 --> 00:03:45,410 Isang katunayan, ang isa sa mga overarching takeaways ng ang bahaging ito ng 79 00:03:45,410 --> 00:03:51,815 Siyempre ay hindi upang malaman kung paano programa sa PHP, hindi upang matuto SQL per se, hindi 80 00:03:51,815 --> 00:03:58,100 upang matuto nang JavaScript per se, ngunit sa halip magturo sa iyong sarili kung paano magturo 81 00:03:58,100 --> 00:04:02,030 iyong sarili bagong wika dahil, sa katunayan, simulan namin na kumuha ngayon ang 82 00:04:02,030 --> 00:04:06,020 pagsasanay wheels off sa gayon ay matapos pagtatapos ng kurso, hindi mo inaasahan 20 83 00:04:06,020 --> 00:04:08,890 ng detalye ng pahina upang sabihin sa iyo kung paano upang ipatupad ang ilang mga programa. 84 00:04:08,890 --> 00:04:12,970 Mayroon kang sapat na sangkap sa iyong isip, at sapat na mga tool sa iyong mga tool 85 00:04:12,970 --> 00:04:15,750 kit, na kung saan upang simulan ang pagbuo ng solusyon sa mga problema ng interes sa 86 00:04:15,750 --> 00:04:19,130 sa iyo para sa ilang mga mag-aaral group, para sa ilang mga pananaliksik proyekto, o kahit ano talaga 87 00:04:19,130 --> 00:04:20,140 ng interes sa iyo. 88 00:04:20,140 --> 00:04:24,150 >> Kaya papunta sa bahaging iyon, isipin ang na ito noon ay larawan namin ang iginuhit mo ito huling oras. 89 00:04:24,150 --> 00:04:27,620 At ito ang dalawang mga computer, at client pugutan, pakikipag-usap sa isa't-isa. 90 00:04:27,620 --> 00:04:31,130 At ang protocol, ang wika, kaya upang makipag-usap, na ang dalawang mga computer mangyari 91 00:04:31,130 --> 00:04:33,220 na nagsasalita ay tinatawag na HTTP. 92 00:04:33,220 --> 00:04:37,730 At ito lamang ang protocol na ginagamit ng mga computer upang maglipat ng impormasyon sa ibabaw 93 00:04:37,730 --> 00:04:38,710 ang mundo wide web. 94 00:04:38,710 --> 00:04:41,770 Ang web, siyempre, ay isa lamang sa serbisyo na tumatakbo sa tuktok ng 95 00:04:41,770 --> 00:04:43,000 tinatawag nang gayon internet. 96 00:04:43,000 --> 00:04:48,660 Ano ang serbisyo ng isa pang magagamit sa tuktok ng internet mga araw na ito? 97 00:04:48,660 --> 00:04:51,600 Ang ilang mga iba pang mga protocol o - kung ano ang na? 98 00:04:51,600 --> 00:04:52,300 >> Madla: FTP. 99 00:04:52,300 --> 00:04:52,790 >> Tagapagsalita 1: FTP. 100 00:04:52,790 --> 00:04:54,630 Kaya Protocol File Transfer ay isa pang. 101 00:04:54,630 --> 00:04:56,050 Karamihan sa mga malamang na hindi ito ginamit. 102 00:04:56,050 --> 00:04:58,830 Ngunit karamihan ng sa iyo marahil na ginamit mga bagay tulad ng Gchat, o instant 103 00:04:58,830 --> 00:05:00,970 pagmemensahe mas pangkalahatang paraan, tiyak email. 104 00:05:00,970 --> 00:05:04,470 At iyon, masyadong, ang mga serbisyo na tumatakbo sa tuktok ng internet dahil, sa 105 00:05:04,470 --> 00:05:08,180 pagtatapos ng araw, ang internet mismo talaga lang kumuha ng data mula sa punto A hanggang 106 00:05:08,180 --> 00:05:12,480 point B. At ito ay gumagamit ng isang bilang ng mga particle mismo, isa sa kanila o dalawa 107 00:05:12,480 --> 00:05:17,340 sa kanila ang pinaka-karaniwang tinatawag na TCP / IP, na kung saan ay upang sabihin na ang isang computer sa 108 00:05:17,340 --> 00:05:19,960 ang internet ay maaaring aktwal na paggawa iba't ibang bagay, e-mail, 109 00:05:19,960 --> 00:05:20,980 at mga web page, at iba pa. 110 00:05:20,980 --> 00:05:22,220 Ginagawa ng Google ng maraming ito. 111 00:05:22,220 --> 00:05:26,310 Kaya kung paano ay ang mga serbisyo ng katangi-tangi nakilala, ay sinasabi namin, sa isang computer 112 00:05:26,310 --> 00:05:29,080 na maaaring aktwal na paggawa maraming mga bagay? 113 00:05:29,080 --> 00:05:29,860 >> Ang numero ng port. 114 00:05:29,860 --> 00:05:34,180 At ang mga ito ay lamang arbitrary pantao tulad ng convention sa 80 ay web, 443 ay 115 00:05:34,180 --> 00:05:36,580 naka-encrypt web, 25 ay email. 116 00:05:36,580 --> 00:05:38,230 At mayroong isang bunches ng iba. 117 00:05:38,230 --> 00:05:41,860 At yaong mga numero nang simple ang mga kasama sa mga packet ng mga impormasyon, mga 118 00:05:41,860 --> 00:05:46,230 virtual na sobre, na talagang Naglalaman ang kahilingan o isang tugon. 119 00:05:46,230 --> 00:05:51,300 >> Kaya kapag kumuha ka pabalik ng tugon mula sa web, karaniwan, hindi mo makita ang anumang mga 120 00:05:51,300 --> 00:05:54,780 mga numero ng kung ano pa man sa mga tuntunin ng code ng katayuan ng tugon. 121 00:05:54,780 --> 00:05:56,770 Hindi mo talaga makita ang inner workings ng 122 00:05:56,770 --> 00:05:58,090 packet na bumalik. 123 00:05:58,090 --> 00:05:59,860 Ngunit 200 ay talagang ibig sabihin ng OK. 124 00:05:59,860 --> 00:06:01,530 At na nangangahulugan na ang lahat ay mabuti. 125 00:06:01,530 --> 00:06:02,870 Maaaring nakakita ka ng grupo ng mga. 126 00:06:02,870 --> 00:06:05,710 Alin ang marahil ang pinaka-karaniwang nakita mo sa web? 127 00:06:05,710 --> 00:06:05,980 >> 404. 128 00:06:05,980 --> 00:06:07,330 Ito lamang ay nangangahulugan na file ay hindi nahanap. 129 00:06:07,330 --> 00:06:08,270 Ito ay nangangahulugan na may isang taong screwed up. 130 00:06:08,270 --> 00:06:11,450 Ng ginawa mo sa pamamagitan ng mistyping ang URL, o may taong iba ginawa sa pamamagitan ng pagbibigay sa iyo ng isang 131 00:06:11,450 --> 00:06:15,100 di-wastong URL, o tinanggal na nila ang file at mga URL ay maaari pa ring 132 00:06:15,100 --> 00:06:16,130 ginagamit ng mga tao. 133 00:06:16,130 --> 00:06:19,670 Kaya ang anumang bilang ng mga kadahilanan ay maaaring ipaliwanag bakit ang isang file ay hindi nahanap. 134 00:06:19,670 --> 00:06:22,990 At makikita mo, sa linggo na dumating, mga iba pang mga code ng error, at bibigyan ka 135 00:06:22,990 --> 00:06:24,195 samantalahin ang ilan sa kanila. 136 00:06:24,195 --> 00:06:25,760 Ang pinakamasama ay 500. 137 00:06:25,760 --> 00:06:29,820 Kung kumuha ka ng isang 500 error sa code ikaw nakasulat, isipin na bilang uri ng mga 138 00:06:29,820 --> 00:06:33,290 analog ng seg faults sa mundo ng mga web programming. 139 00:06:33,290 --> 00:06:34,560 Ito ay hindi pa bilang katakut-takot. 140 00:06:34,560 --> 00:06:36,660 Ngunit ito lamang ay nangangahulugan na, sa isang lugar, ka screwed up. 141 00:06:36,660 --> 00:06:38,260 Kaya tumingin inaabangan ang panahon na iyon. 142 00:06:38,260 --> 00:06:39,910 >> Ngunit sabihin makita kung ang aming makakaya makita ang mga ito sa konteksto. 143 00:06:39,910 --> 00:06:43,460 Hayaan akong pumunta sa isang browser dito at gawin ang mga sumusunod. 144 00:06:43,460 --> 00:06:45,710 Kaya ito ay Chrome, na ang mangyayari sa na-install sa appliance. 145 00:06:45,710 --> 00:06:49,410 Ngunit karamihan ng bawat browser mga araw na ito ay may ilang katumbas na pag-andar. 146 00:06:49,410 --> 00:06:52,610 Pupunta ako sa pumunta up menu ng Chrome, at pumunta sa Tools, at ako pagpunta sa pumunta 147 00:06:52,610 --> 00:06:53,990 upang Developer Tools. 148 00:06:53,990 --> 00:06:57,040 At makikita mo na ito kaunti panel bubukas sa ibaba ng window. 149 00:06:57,040 --> 00:07:00,190 Ang isa pang shortcut, upang maging matapat, na aking karaniwang gamitin ang aking sarili ay ang pag-right click 150 00:07:00,190 --> 00:07:04,370 Control o i-click kahit saan sa web pahina at pumunta lamang sa Siyasatin ang Elemento. 151 00:07:04,370 --> 00:07:07,440 At iyon ay hindi lamang buksan ito ay para sa iyo. 152 00:07:07,440 --> 00:07:10,230 Aalisin din nito sa buksan, partikular, Mga Sangkap ng bahagi sa 153 00:07:10,230 --> 00:07:11,430 sa kaliwang bahagi. 154 00:07:11,430 --> 00:07:12,460 >> Kaya hindi namin siyempre nakikita ng Google. 155 00:07:12,460 --> 00:07:13,930 Sila ay nagbago ng kanilang logo ngayon. 156 00:07:13,930 --> 00:07:20,200 Ngunit sa kung mag-scroll down na ako up dito, mapansin na sa ilalim ng Mga Sangkap, makikita mo ang 157 00:07:20,200 --> 00:07:23,460 ano ang tinatawag na HTML, Hypertext Markup Wika, at ito ay ang wika 158 00:07:23,460 --> 00:07:26,000 na ito at ang lahat ng mga web page, talaga, ay nakasulat in 159 00:07:26,000 --> 00:07:28,950 Ngunit talagang ito ay na-format para sa amin upang mas readably 160 00:07:28,950 --> 00:07:29,970 kaysa ito ay normal. 161 00:07:29,970 --> 00:07:34,810 Sa katunayan, kung ako mag-zoom out, at ako sa halip lamang-right click o Kontrolin I-click ang 162 00:07:34,810 --> 00:07:39,630 mag-click sa pahina, at pagkatapos ay pumunta sa Tingnan ang Page Source, ito ay literal na kung ano ang 163 00:07:39,630 --> 00:07:42,150 Google ay nagpadala down sa aking browser. 164 00:07:42,150 --> 00:07:46,480 >> Kaya ang ilang mga tao o mga tao ay nagsulat Google.com gamit ang source code. 165 00:07:46,480 --> 00:07:47,790 Karamihan sa mga ito ay hindi HTML. 166 00:07:47,790 --> 00:07:49,340 Ito ay talagang isang wika na tinatawag na JavaScript, na 167 00:07:49,340 --> 00:07:50,880 ipapakita namin dumating sa sa Miyerkules. 168 00:07:50,880 --> 00:07:55,580 Ngunit ano Chrome, at kung ano ang bawat browser maaaring magawa para sa amin, ang uri ng makita 169 00:07:55,580 --> 00:07:59,610 nakalipas na ang lahat ng mga distractions ng mabaliw syntax, at reinsert white space 170 00:07:59,610 --> 00:08:02,940 para sa atin, at kahit na syntax highlight, o colorize mga bagay para sa amin. 171 00:08:02,940 --> 00:08:06,470 Kaya makikita mo na ang mga tinaguriang nag-develop ng tool na binuo sa browser 172 00:08:06,470 --> 00:08:10,830 ay gawin ang iyong buhay sa gayon, kaya mas madali dahil maaari mong galugarin, sa pamamagitan ng menu na ito 173 00:08:10,830 --> 00:08:13,940 interface, nang eksakto kung ano ang nakatagong source code ay para sa 174 00:08:13,940 --> 00:08:15,750 anumang pahina sa internet. 175 00:08:15,750 --> 00:08:19,070 At sa katunayan, ito ay isa sa mga pinaka- epektibong paraan upang malaman kung paano gawin 176 00:08:19,070 --> 00:08:22,860 ng isang bagong bagay, hindi bababa sa kung ang pahina ay hindi kaya kumplikado bilang upang mapuspos, ay 177 00:08:22,860 --> 00:08:26,700 upang simulan poking sa paligid ito HTML, hanapin sa sarili tinaguriang CSS, na magpapadala kami dumating 178 00:08:26,700 --> 00:08:30,310 sa isang bit pati na rin, upang makakuha ng isang pag-unawa sa kung paano na programmer 179 00:08:30,310 --> 00:08:33,480 ipinatupad sa ilang partikular na tampok ng pahina. 180 00:08:33,480 --> 00:08:36,530 >> Ngunit mas kawili-wiling technically karapatan ngayon ito ay pagpunta sa maging ito. 181 00:08:36,530 --> 00:08:39,429 Kung pumunta ako sa tab na Mga Network, natin ngayon i-clear ito. 182 00:08:39,429 --> 00:08:43,429 Pupunta ako sa i-click ang maliit tumawid simbolo dito, at pagkatapos ay 183 00:08:43,429 --> 00:08:45,630 pumunta sa isa pang website. 184 00:08:45,630 --> 00:08:48,430 At lamang ako pupunta na mag-type sa Facebook.com. 185 00:08:48,430 --> 00:08:51,940 Walang HTTP, walang HTTPS, walang www. 186 00:08:51,940 --> 00:08:53,850 Natin talaga makita kung ano ang mangyayari dito. 187 00:08:53,850 --> 00:08:55,030 >> Enter. 188 00:08:55,030 --> 00:08:58,480 Ngayon mapansin ang maramihang mga bagay-bagay lamang Lumitaw sa panel na ito ibaba, sa 189 00:08:58,480 --> 00:09:00,285 Bukod sa mga pahina ng web na lumilitaw sa tuktok. 190 00:09:00,285 --> 00:09:04,890 Pupunta ako upang mag-scroll back up sa Network ng tab dito, at pupuntahan ko 191 00:09:04,890 --> 00:09:06,080 mag-click sa unang hilera. 192 00:09:06,080 --> 00:09:10,580 Ano ang tool na ito ay pagpunta upang ipakita sa amin ang bawat isa sa mga kahilingan ng HTTP 193 00:09:10,580 --> 00:09:13,550 na mabilis na lamang nagpunta sa likod at balik sa pagitan ng aking browser 194 00:09:13,550 --> 00:09:14,930 at ang server ng Facebook. 195 00:09:14,930 --> 00:09:17,830 At sa gayon ang bawat isa sa mga hilera Kinakatawan ng isa tulad kahilingan o 196 00:09:17,830 --> 00:09:20,970 tugon, isa o higit pa sa mga virtual na sobre. 197 00:09:20,970 --> 00:09:24,080 O kaya naman mas casually, ito ay tulad ng isang tao tulad ng isang tao, ang isang customer sa isang 198 00:09:24,080 --> 00:09:26,710 restaurant, humihiling ng isang bagay muli, at muli, at muli. 199 00:09:26,710 --> 00:09:29,400 At weyter ang mapigil ang nagdadala muli ito nang paisa-isa. 200 00:09:29,400 --> 00:09:33,850 >> Kaya ngayon, kung ako mag-zoom in sa mga ito, mapansin at ito ang magiging uri ng bagay 201 00:09:33,850 --> 00:09:36,600 na kayo ay maligayang pagdating sa at hinihikayat upang i-play na may sa iyong sarili, dahil kami 202 00:09:36,600 --> 00:09:38,150 ay hindi pumunta sa pamamagitan ng lahat ng bagay sa mahusay na detalye. 203 00:09:38,150 --> 00:09:40,070 Ngunit mapansin mayroong isang ilang sub tab dito - 204 00:09:40,070 --> 00:09:43,700 Pamagat, Preview, Tugon, Cookies, at timing. 205 00:09:43,700 --> 00:09:48,280 Lamang ako ng pagpunta upang tumingin sa header sa ngayon dahil ang mga ito ay maliit 206 00:09:48,280 --> 00:09:53,600 sangkap sa loob ng sobre na tulungan makakuha ng mga data sa at mula sa mga lugar. 207 00:09:53,600 --> 00:09:57,590 >> Kaya una, hayaan mo akong i-click ito, Tingnan ang Source sa tabi ng Kahilingan Header. 208 00:09:57,590 --> 00:10:01,910 Mayroon ang kahilingan na ang aking browser, Chrome, sa kasong ito, ipinadala sa loob ng 209 00:10:01,910 --> 00:10:02,910 virtual na sobre. 210 00:10:02,910 --> 00:10:04,800 Makikita mo isipin ang nakaraang linggo ko mano-manong nai-type ito habang 211 00:10:04,800 --> 00:10:06,380 pagpapanggap ng isang browser. 212 00:10:06,380 --> 00:10:09,980 Pagkatapos ito mapaalalahanan sa server na ito hinahanap ng host na tinatawag na 213 00:10:09,980 --> 00:10:10,835 Facebook.com. 214 00:10:10,835 --> 00:10:13,630 At pagkatapos ay mayroong isang bit mas arcane impormasyon na aming iwagayway 215 00:10:13,630 --> 00:10:14,830 ang aming mga kamay sa ngayon. 216 00:10:14,830 --> 00:10:18,640 >> Ngunit kung sisimulan ko ang mag-scroll pababa sa ngayon window na ito, sabihin sa akin na makuha ang 217 00:10:18,640 --> 00:10:19,980 tugon header. 218 00:10:19,980 --> 00:10:23,270 Ito ay kung ano ang sa virtual sobre na dumating mula sa likod 219 00:10:23,270 --> 00:10:24,095 Facebook.com. 220 00:10:24,095 --> 00:10:27,390 At kung iki-click ko ang View Source lamang upang makita ang mga raw na teksto ng mga ito, 221 00:10:27,390 --> 00:10:28,400 mapansin ang ilang mga bagay. 222 00:10:28,400 --> 00:10:32,130 One, Facebook din nagsasalita ng parehong protocol, bersyon 1.1 hinggil doon. 223 00:10:32,130 --> 00:10:33,390 Kaya na magaling. 224 00:10:33,390 --> 00:10:36,820 Ngunit status code 301, inilipat permanente. 225 00:10:36,820 --> 00:10:38,880 >> Well, kung saan ang mga ano ba ang Facebook pumunta? 226 00:10:38,880 --> 00:10:40,430 Ano kaya ito sinusubukang magbigay-kahulugan sa amin? 227 00:10:40,430 --> 00:10:44,310 Well, mapapansin pababa dito mayroong isa pang tinatawag header ng Lokasyon. 228 00:10:44,310 --> 00:10:51,050 Kaya bakit ay Facebook na nagsasabi sa akin na sila inilipat permanente sa URL na iyon 229 00:10:51,050 --> 00:10:53,580 sa tabi ng Lokasyon? 230 00:10:53,580 --> 00:10:54,962 Nakalimutan ko ang www. 231 00:10:54,962 --> 00:10:56,250 >> Kaya na noon ang aking pinili. 232 00:10:56,250 --> 00:11:00,450 Sa katunayan, karamihan sa amin bihira, marahil, type www.whatever.com mga araw na ito. 233 00:11:00,450 --> 00:11:03,390 Ngunit ito lumiliko out isang system administrator, tulad ng Facebook, maaari 234 00:11:03,390 --> 00:11:06,800 i-configure ang kanilang mga server sa paraan na alinman sa Facebook.com ang gumagana, o 235 00:11:06,800 --> 00:11:12,450 www.Facebook.com gumagana, o, talaga, anumang naturang prefix sa harap ng kanilang mga 236 00:11:12,450 --> 00:11:13,210 pangalan ng domain. 237 00:11:13,210 --> 00:11:14,500 Kaya nilang tapos na para sa amin. 238 00:11:14,500 --> 00:11:16,910 At ang mga ito ay nagre-redirect sa amin, marahil para sa ilang mga teknikal na, 239 00:11:16,910 --> 00:11:18,100 ilang marketing dahilan. 240 00:11:18,100 --> 00:11:21,570 Sila lamang ang nais na canonicalize sa www.Facebook.com. 241 00:11:21,570 --> 00:11:24,040 >> Ngunit iyon ay hindi pa ito. 242 00:11:24,040 --> 00:11:28,560 Kung mag-scroll down na ko dito, sabihin makita kung ano ang mangyayari. 243 00:11:28,560 --> 00:11:30,810 Ito ay nagsasabi sa akin namin inilipat permanente sa 244 00:11:30,810 --> 00:11:33,450 http://www.Facebook.com. 245 00:11:33,450 --> 00:11:36,620 Kaya tingnan natin ang ikalawang kahilingan na ang aking browser ay nagpapadala. 246 00:11:36,620 --> 00:11:40,070 Sa kasamaang palad, mukhang Facebook ay lumipat muli dahil ang pangalawang 247 00:11:40,070 --> 00:11:44,420 hiling, sa pamamagitan ng pagpili ang URL na iyon sa halip, sabi na, masyadong, inilipat 248 00:11:44,420 --> 00:11:45,010 permanente. 249 00:11:45,010 --> 00:11:48,140 At hayaang mag-scroll pababa sa akin dito upang ang mga header ng tugon. 250 00:11:48,140 --> 00:11:51,530 Saan ay nawala Facebook ngayon? 251 00:11:51,530 --> 00:11:52,680 >> Kaya HTTPS. 252 00:11:52,680 --> 00:11:56,130 Kaya ngayon Facebook ay nagsimula, lalo na sa liwanag ng kasalukuyang 253 00:11:56,130 --> 00:11:59,750 mga kaganapan sa nakalipas na buwan, lalo na at din sa nakalipas na dalawang taon 254 00:11:59,750 --> 00:12:03,670 upang pilitin ang lahat ng kanilang mga gumagamit, sa isang magandang paraan, upang gamitin ang HTTPS, na kung saan ay higit pa 255 00:12:03,670 --> 00:12:06,210 makamtan, bagaman hindi ganap na secure. 256 00:12:06,210 --> 00:12:10,000 At kaya ngayon ang aking pahina, ang aking browser ay pagpunta sa hiniling ang ikatlong URL. 257 00:12:10,000 --> 00:12:14,710 At ngayon, sa wakas, makuha namin ang kung hindi man ay hindi nakikitang 200 OK. 258 00:12:14,710 --> 00:12:18,830 >> Kaya kung ano ang sa mundo o lahat ng mga iba pang mga hilera pababa dito. 259 00:12:18,830 --> 00:12:22,630 Literal na ako nag-type ang isang bagay, at ang aking browser ay mukhang tulad ng hiniling 260 00:12:22,630 --> 00:12:23,840 20 ilang mga bagay na kakaiba. 261 00:12:23,840 --> 00:12:24,640 Ano iyon? 262 00:12:24,640 --> 00:12:25,810 >> Madla: Script? 263 00:12:25,810 --> 00:12:28,460 >> Tagapagsalita 1: Script, kaya iba pang mga file nakasulat sa isang wika na tinatawag na 264 00:12:28,460 --> 00:12:30,780 JavaScript, na kung saan, muli, bibigyan namin ng makita ang isang bit ng sa Miyerkules. 265 00:12:30,780 --> 00:12:32,760 Ano pa? 266 00:12:32,760 --> 00:12:33,390 Style sheet. 267 00:12:33,390 --> 00:12:36,350 Kaya ang isang bagay sa isang wika na tinatawag na CSS, na kung saan namin makita sa isang bit. 268 00:12:36,350 --> 00:12:40,690 Gifs, at jpeg, at pngs, at mga imahe, at mga file ng pelikula - ano ang isang web page 269 00:12:40,690 --> 00:12:43,280 ay ang pinaka-malamang sa sa anyo ng isang file. 270 00:12:43,280 --> 00:12:46,750 At kaya kung ano ang aming nakikita sa kaliwa bahagi mayroong lahat ng mga file 271 00:12:46,750 --> 00:12:50,280 na nagkaroon Chrome upang i-download, recursively, kung kalooban mo, upang 272 00:12:50,280 --> 00:12:52,430 gumawa ng sulat ang kabuuan ng pahina. 273 00:12:52,430 --> 00:12:56,210 >> Kaya kung ano ang nakita natin ng ilang sandali ang nakalipas sa Google, kung ako mag-click sa mga Elemento 274 00:12:56,210 --> 00:13:00,470 tab, ito, sigurado, ay ang HTML, ang wika na composes ang pahinang ito. 275 00:13:00,470 --> 00:13:01,890 Ngunit mayroong bunches ng iba pang mga bagay. 276 00:13:01,890 --> 00:13:02,640 Mayroong isang logo. 277 00:13:02,640 --> 00:13:04,680 Mayroong mga blue-ish icon banda roon. 278 00:13:04,680 --> 00:13:07,610 At mayroong iba pang mga elemento pa rin sa ang pahina na maaaring maging ang kanilang mga sarili 279 00:13:07,610 --> 00:13:08,610 hiwalay na mga file. 280 00:13:08,610 --> 00:13:11,860 >> Kaya kung ano ang maganda tungkol sa isang browser ay na tinitingnan nito ang wika namin ang pagpunta 281 00:13:11,860 --> 00:13:14,690 upang simulan ang pagsusulat, o ikaw na Magsimula sa pamamagitan ng pagsulat P hanay 7, figure 282 00:13:14,690 --> 00:13:17,970 out kung saan ang mga file na iyon nakatira, at napupunta at grabs ang mga ito pati na rin. 283 00:13:17,970 --> 00:13:21,010 At Hindi ko bigyang-diin ang sapat, kahit na bagaman ang ilan sa mga ito ay maaaring tumingin ng kaunti 284 00:13:21,010 --> 00:13:24,820 arcane o napakatinding sa unang tingin, pag-aaral kung paano i-program 285 00:13:24,820 --> 00:13:28,500 mga application para sa web, ito ay Napakahalaga nito upang maunawaan kung paano ang mga 286 00:13:28,500 --> 00:13:29,410 maliit na tool gumana. 287 00:13:29,410 --> 00:13:33,830 Ito ang mga uri ng tulad ng GDB tulad ng mga tool, ngunit magkano ang mas simple, sa huli, upang gamitin - 288 00:13:33,830 --> 00:13:37,690 at talagang nagbibigay sa iyo ng mga mata sa kung ano ang kami ay pagkuha para sa ipinagkaloob para sa 289 00:13:37,690 --> 00:13:39,170 lubos ng ilang panahon ngayon. 290 00:13:39,170 --> 00:13:42,270 >> Kaya kung ano ang maaari naming gawin ngayon na may ang impormasyong ito? 291 00:13:42,270 --> 00:13:44,875 Well, sabihin talagang tumingin sa ang konsepto pinagsasaligan HTML. 292 00:13:44,875 --> 00:13:49,025 At kami ayunan, bilang namin ay mayroon, upang seksyon na ito linggo, sa problema 293 00:13:49,025 --> 00:13:53,260 7 set na detalye, sa ilan sa mga mas particular sa mga wikang ito. 294 00:13:53,260 --> 00:13:57,020 Ngunit sabihin makita kung hindi namin maaaring pintura ng isang larawan ng kung ano ang dapat mong maunawaan 295 00:13:57,020 --> 00:13:57,940 pangkalahatang dito. 296 00:13:57,940 --> 00:14:02,280 >> Kaya HTML, Hypertext Markup Language, ay hindi isang programming language. 297 00:14:02,280 --> 00:14:03,520 Ano ang ginagawa na talaga ibig sabihin nito? 298 00:14:03,520 --> 00:14:05,690 Kaya HTML mukhang ganito. 299 00:14:05,690 --> 00:14:06,810 At ang ilan sa alam mo na ito. 300 00:14:06,810 --> 00:14:08,130 Ang ilan sa ikaw ay nai-paggawa ito para sa ilang oras. 301 00:14:08,130 --> 00:14:10,270 Ngunit sabihin makita kung hindi namin kayang punan sa ilang mga blangko pati na rin. 302 00:14:10,270 --> 00:14:11,760 Kaya mapansin ang isang pares ng mga bagay dito. 303 00:14:11,760 --> 00:14:13,030 Ang isa, ito ay lamang ng teksto. 304 00:14:13,030 --> 00:14:15,960 Kaya ito ay katulad lamang ng source code sa C, o ilang iba pang mga wika. 305 00:14:15,960 --> 00:14:17,750 >> Pansinin na mukhang upang maging isang pattern dito. 306 00:14:17,750 --> 00:14:20,870 Mayroong indentation, ngunit technically indentation ang lamang ang tao 307 00:14:20,870 --> 00:14:21,205 convention. 308 00:14:21,205 --> 00:14:24,980 Ang isang browser ay hindi mahalaga kung mayroong bagong mga linya at mga tab na gusto naming makita doon. 309 00:14:24,980 --> 00:14:27,410 Ngunit mapansin na mayroong symmetries dito. 310 00:14:27,410 --> 00:14:31,180 Mayroon ano Tatawag ako, sa tuktok ng ang file na ito, ang mga bukas na tag, o ang simula 311 00:14:31,180 --> 00:14:33,030 tag, na tinatawag na HTML. 312 00:14:33,030 --> 00:14:36,800 At pagkatapos, pababa sa ibaba, naka-linya ganap na ganap up, tulad ng ginagawa namin sa kulot tirante, 313 00:14:36,800 --> 00:14:40,910 nakikita namin open bracket, pasulong slash, HTML, malapit bracket. 314 00:14:40,910 --> 00:14:44,610 Kaya iyon ang katumbas na malapit tag, o pagtatapos ng tag, para sa na bagay. 315 00:14:44,610 --> 00:14:47,990 >> Sama-sama, ang lahat ng bagay sa loob ng tinatawag nang gayon buksan ang tag at malapit na tag 316 00:14:47,990 --> 00:14:50,440 sumulat ng kung ano ang makikita namin tumawag isang elemento. 317 00:14:50,440 --> 00:14:53,910 At kami makita, sa sandali lamang, ito ay talagang gusto ang isang node sa isang puno. 318 00:14:53,910 --> 00:14:57,470 Dahil kung sa tingin mo tungkol sa ngayon ang indentation na ipinahiwatig dito, mo 319 00:14:57,470 --> 00:15:00,780 uri ng mayroon, i, isang lolo o lola node na tinatawag na HTML. 320 00:15:00,780 --> 00:15:06,870 Gaano karaming mga bata kumbaga, batay sa ang larawang ito, ang mga HTML element ay may? 321 00:15:06,870 --> 00:15:07,720 >> Kaya marahil dalawa. 322 00:15:07,720 --> 00:15:10,240 Ang isa ay ang ulo elemento, tila. 323 00:15:10,240 --> 00:15:11,710 At ang isa ay ang katawan elemento. 324 00:15:11,710 --> 00:15:12,555 At bakit dalawang bata? 325 00:15:12,555 --> 00:15:15,840 Well, ako lamang ang uri ng inferring na kung Mayroon akong isang bukas na head tag at pagkatapos a 326 00:15:15,840 --> 00:15:17,820 malapit na head tag, na isang elemento. 327 00:15:17,820 --> 00:15:21,200 At pagkatapos ay, kung mayroong isa pang open katawan tag at isang malapit na tag katawan, na gaya ng 328 00:15:21,200 --> 00:15:22,340 isa pang elemento. 329 00:15:22,340 --> 00:15:26,000 Kaya sa kamalayan na kung ako uri ng Paikutin ang larawan sa gilid nito, ito ay 330 00:15:26,000 --> 00:15:29,910 tulad ng pagkakaroon ng isang HTML tag, at pagkatapos a head tag, at pagkatapos ng body tag, at 331 00:15:29,910 --> 00:15:34,290 pagkatapos ng ilang teksto, kumusta mundo, nakabitin off ng katawan tag mismo. 332 00:15:34,290 --> 00:15:36,620 >> Kaya maaari naming gumuhit ng larawan na Maaaring ganito ang hitsura. 333 00:15:36,620 --> 00:15:38,020 Ang hugis ay arbitrary. 334 00:15:38,020 --> 00:15:40,870 Ngunit mapapansin na aking ginamit uri ng isang tambilugan sa tuktok upang kumatawan sa 335 00:15:40,870 --> 00:15:41,860 idokumento mismo. 336 00:15:41,860 --> 00:15:45,980 Ito ay lumiliko out doon ay maaaring maging iba pang mga bagay-bagay sa loob ng isang web page na nag ko hindi 337 00:15:45,980 --> 00:15:46,940 iginuguhit dito. 338 00:15:46,940 --> 00:15:50,800 Kaya kami ay pagpunta sa kahit na mag-hang ang HTML node off ng isang tinatawag na node dokumento. 339 00:15:50,800 --> 00:15:53,730 At pagkatapos kami ay may ulo at katawan at pamagat, paunawa, 340 00:15:53,730 --> 00:15:55,360 na kung saan ay nested pa. 341 00:15:55,360 --> 00:15:58,650 Hindi ko abala sa paglalagay ng mga karagdagang linya masira ang loob ng mga pamagat na tag. 342 00:15:58,650 --> 00:16:02,710 Ito lamang nadama tulad ng ito ay nakukuha isang maliit na masyadong maligoy. 343 00:16:02,710 --> 00:16:07,000 Kaya ko iniwan ito sa isang linya doon, na may Bukas ang pamagat, kumusta mundo, malapit pamagat. 344 00:16:07,000 --> 00:16:09,380 At pagkatapos ay mayroon kaming ilang teksto nakalawit off ng dito. 345 00:16:09,380 --> 00:16:12,200 >> Kaya't litrato na ito ay bumalik sa sa amin kung kailan kami sumisid sa JavaScript. 346 00:16:12,200 --> 00:16:15,110 At pag-unawa na kapag nag- sumulat ng HTML ganito, kung ano 347 00:16:15,110 --> 00:16:16,250 ay isang browser na ginagawa? 348 00:16:16,250 --> 00:16:19,290 Well, hindi namin kailangang mag-alala tungkol sa kung paano ito ginagawa ito, o sa kung ano 349 00:16:19,290 --> 00:16:23,090 algorithm, ngunit sa pagtatapos ng araw, kapag browser natatanggap ng isang HTML tulad ng 350 00:16:23,090 --> 00:16:27,510 na, mula sa Facebook o Google, ito Pina-parse ito, kaya na magsalita, ito bumabasa ng ito, 351 00:16:27,510 --> 00:16:31,160 may isang bagay tulad ng fread, sa tuktok ibaba, kaliwa hanggang kanang, at pati na ito 352 00:16:31,160 --> 00:16:36,300 napagtanto, oh, buksan ang tag, at pagkatapos isara tag, nagsisimula ito sa malloc, kaya na magsalita, 353 00:16:36,300 --> 00:16:37,800 isang node sa isang tree. 354 00:16:37,800 --> 00:16:41,130 At kapag ito ay nakatagpo, bilang namin na ipinahiwatig dito may mga indentation, isang 355 00:16:41,130 --> 00:16:45,400 anak node, ito mallocs isang node para sa na at naka-attach na sa puno. 356 00:16:45,400 --> 00:16:49,150 >> Kaya ang tree istraktura, binary mga puno, tatluhan puno, at mas malalaking puno, na 357 00:16:49,150 --> 00:16:53,380 namin glanced sa isa o dalawang linggo na ang nakakaraan, na notice na ang parehong prinsipyo ay 358 00:16:53,380 --> 00:16:54,220 babalik sa amin. 359 00:16:54,220 --> 00:16:57,590 At kung sinuman ang ipinatupad, kahit anong Chrome koponan gumawa niyan, siguro ay nagkaroon 360 00:16:57,590 --> 00:17:00,800 upang ipatupad ang ilang mga uri ng mala-punong balangkas sa ilalim ng hood. 361 00:17:00,800 --> 00:17:05,329 At iyon mismo ay marahil sa isang wika tulad ng C, o C + +, o sa mas mababang 362 00:17:05,329 --> 00:17:08,540 antas ng wika na bibigyan namin ng na ngayong gamitin sa ibabaw ng web. 363 00:17:08,540 --> 00:17:11,200 >> Kaya ngayon, siguro, ito kalooban gumawa ng higit pa pakiramdam. 364 00:17:11,200 --> 00:17:15,420 Aktwal na tattoo mula sa ilang taong kapangyarihan Ikinalulungkot ito kalaunan, uri ng. 365 00:17:15,420 --> 00:17:17,359 OK, lahat ng karapatan, kaya may maraming mga web katatawanan. 366 00:17:17,359 --> 00:17:18,599 Hindi ito talaga ang pagpunta sa ibabaw kaya na rin ngayon. 367 00:17:18,599 --> 00:17:19,560 Kaya naming umusad. 368 00:17:19,560 --> 00:17:20,180 Ayos lang. 369 00:17:20,180 --> 00:17:22,760 >> So sabihin tingnan ngayon sa ilan sa mga halimbawa. 370 00:17:22,760 --> 00:17:24,660 Ang pinakasimpleng posibleng bagay ay maaaring maging ito. 371 00:17:24,660 --> 00:17:29,170 Pupunta ako sa sige at buksan ang gedit isang file na tinatawag na hello.php. 372 00:17:29,170 --> 00:17:31,730 373 00:17:31,730 --> 00:17:36,330 At sa loob ng dito, pupuntahan ko mabilis lamang gawin ito, printf, banggit 374 00:17:36,330 --> 00:17:38,590 magpanipi, "kumusta mundo." 375 00:17:38,590 --> 00:17:42,460 >> Kaya notice, at makikita ko ang aking backslash n, Hindi ko na bothered na idedeklara pangunahing. 376 00:17:42,460 --> 00:17:45,310 Ito ay lumiliko out, sa php, at ng maraming wika, hindi mo kailangan ng isang pangunahing 377 00:17:45,310 --> 00:17:46,090 function na per se. 378 00:17:46,090 --> 00:17:47,720 Maaari mo lamang simulan ang pagsusulat ang iyong mga programa. 379 00:17:47,720 --> 00:17:51,210 Ngayon, kapag ako ay i-save ang file na ito, mapansin ako pagpunta sa may sa gawin ang mga sumusunod. 380 00:17:51,210 --> 00:17:55,360 Hindi ako pagpunta sa gawin gamitin, at hindi ako pagpunta sa gamitin kalatungin dahil PHP, hindi katulad 381 00:17:55,360 --> 00:17:57,400 C, ay hindi isang pinagsama-sama wika. 382 00:17:57,400 --> 00:18:01,400 Ito ay kung ano ang tinatawag na isang kahulugan wika, na nangangahulugan na patakbuhin mo ito 383 00:18:01,400 --> 00:18:04,650 bilang isang input sa pamamagitan ng isa pang programa tinatawag na interpreter. 384 00:18:04,650 --> 00:18:08,150 At program na bumabasa ng ito, sa tuktok ibaba, kaliwa hanggang kanang, at nagagawa 385 00:18:08,150 --> 00:18:09,290 kahit ano sabihin mo ito upang gawin. 386 00:18:09,290 --> 00:18:12,920 >> Kaya sa kasong ito dito mayroon ako isang linya na nagsasabing printf. 387 00:18:12,920 --> 00:18:17,990 Kaya kapag tumakbo ko ito source code, hello.php, bagaman isang programa na 388 00:18:17,990 --> 00:18:22,830 mangyayari, Maginhawang, na tinatawag na PHP, na programa PHP ay pagpunta sa basahin 389 00:18:22,830 --> 00:18:26,120 ang file na ito, itaas hanggang sa ibaba, kaliwa hanggang kanang, at ito ay pagpunta sa gawin kung ano ako 390 00:18:26,120 --> 00:18:30,110 sabihin dito na gawin - e-execute code, at kung hindi ito makilala ng isang bagay, lamang 391 00:18:30,110 --> 00:18:31,320 pagsigam ito. 392 00:18:31,320 --> 00:18:34,940 Kaya pupuntahan ko sige at magpatakbo ng PHP hello.php. 393 00:18:34,940 --> 00:18:37,110 Enter. 394 00:18:37,110 --> 00:18:39,690 >> At iyan ay hindi masyadong ano ako nilalayon. 395 00:18:39,690 --> 00:18:40,530 Well, kung bakit ay na? 396 00:18:40,530 --> 00:18:43,910 Well, PHP ay isang wika na talaga idinisenyo upang maging patas 397 00:18:43,910 --> 00:18:46,150 intertwined sa web. 398 00:18:46,150 --> 00:18:50,460 Kapag nagsasagawa ng mga web page gamit ang wikang ito PHP, bilang ipapakita namin sa lalong madaling panahon makita, bibigyan namin ng 399 00:18:50,460 --> 00:18:54,560 nais na gawin ang isang bagay tulad ng pag-print out mga linya tulad nito. 400 00:18:54,560 --> 00:18:55,940 >> Kaya ako ng pagpunta sa gawin ito. 401 00:18:55,940 --> 00:19:00,810 Buksan ang bracket, tandang pananong, PHP, at ngayon lang ako pupunta indent lamang upang panatilihing 402 00:19:00,810 --> 00:19:01,960 mga bagay na maganda. 403 00:19:01,960 --> 00:19:04,910 At ngayon ako pagpunta sa gawin ng isang katanungan markahan malapit bracket. 404 00:19:04,910 --> 00:19:06,270 Kaya mayroong isang bit ng kawalaan ng simetrya dito. 405 00:19:06,270 --> 00:19:07,490 Hindi mo kailangang gawin ito. 406 00:19:07,490 --> 00:19:10,530 At hindi mo gawin ang isang slash, kaya PHP ay isang maliit na naiiba. 407 00:19:10,530 --> 00:19:14,610 >> Ngunit ngayon, kung ako muling palabas ng pelikula sa programang ito, PHP hello.php, ngayon ko 408 00:19:14,610 --> 00:19:16,090 talagang makakuha ng Hello World. 409 00:19:16,090 --> 00:19:17,750 At kami makita kung bakit ito ay mahalaga. 410 00:19:17,750 --> 00:19:20,960 Ang isa, ito ay nagbibigay-daan sa akin upang tukuyin, super tahasan, ito ay 411 00:19:20,960 --> 00:19:22,480 code, gawin ito. 412 00:19:22,480 --> 00:19:25,480 At na kung ano talaga ang mga ito espesyal na mga tag magpahiwatig dito. 413 00:19:25,480 --> 00:19:30,330 >> Ngunit ito rin ay nangangahulugan na kung ko lang gawin isang bagay tulad ng pagtutok ko sa paglipas dito, na 414 00:19:30,330 --> 00:19:34,000 ay nangangahulugan na, literal, na lamang ipi-print out nang walang ang pangangailangan na 415 00:19:34,000 --> 00:19:36,850 talagang tumawag printf, o i-print, o anumang katulad na function. 416 00:19:36,850 --> 00:19:39,445 Kaya kami ay bumalik sa na sa loob lamang ng ilang sandali. 417 00:19:39,445 --> 00:19:40,470 >> Una, sabihin gawin ito. 418 00:19:40,470 --> 00:19:43,950 Sa Loob ng appliance, mayroon kaming isang direktoryo na tinatawag na Vhosts, para sa virtual 419 00:19:43,950 --> 00:19:47,000 host, iwa lokal host, iwa publiko. 420 00:19:47,000 --> 00:19:50,240 Kaya ito ay isang bit masyadong masalita, ngunit mahaba ang kuwento maikli, ang appliance ay dinisenyo hindi 421 00:19:50,240 --> 00:19:53,770 lamang upang suportahan C. Ito ay din dinisenyo upang suportahan ang PHP. 422 00:19:53,770 --> 00:19:57,440 Ngunit din ito ay idinisenyo upang maging isang web server, at isang database server. 423 00:19:57,440 --> 00:20:00,230 At ito ay naka-disenyo, at tunay na-configure, upang maging nakapagpapagunita ng anumang 424 00:20:00,230 --> 00:20:04,230 komersyal na web hosting ng kumpanya na maaari kang magbayad ng $ 5 sa isang buwan para sa, 425 00:20:04,230 --> 00:20:05,040 $ 100 sa isang buwan para sa. 426 00:20:05,040 --> 00:20:08,200 Anuman ang serbisyo ay, ito ay naka-configure upang maging katulad na katulad ng 427 00:20:08,200 --> 00:20:10,170 tunay na mundo produksyon server. 428 00:20:10,170 --> 00:20:13,485 >> At kung ano ang ibig sabihin ay na tumatakbo sa appliance ay ang software ng web server. 429 00:20:13,485 --> 00:20:15,060 Ito ay nangyayari sa tawagin Apache. 430 00:20:15,060 --> 00:20:17,790 Ito ay lamang libre, at open source, at napaka-tanyag. 431 00:20:17,790 --> 00:20:23,260 At kami na-configure Apache upang malaman na kung bisitahin ako sa isang tiyak na URL, na may 432 00:20:23,260 --> 00:20:28,060 Chrome o anumang browser sa loob ng appliance, upang tumingin sa direktoryong ito 433 00:20:28,060 --> 00:20:31,030 para sa mga file na ang gumagamit ay humihiling. 434 00:20:31,030 --> 00:20:32,790 >> Sa ibang salita, ipaalam sa akin sige at gawin ito. 435 00:20:32,790 --> 00:20:36,890 Sa loob ng aking pampublikong direktoryo, pupuntahan ko upang magpatuloy at lumikha ng isang file 436 00:20:36,890 --> 00:20:39,580 tinatawag index.html. 437 00:20:39,580 --> 00:20:41,000 Iyon ay nagbibigay sa akin ang tab dito. 438 00:20:41,000 --> 00:20:44,210 At ako pagpunta sa pumunta masyadong mabilis at sige at Bang out 439 00:20:44,210 --> 00:20:45,010 ang program na ito dito. 440 00:20:45,010 --> 00:20:48,410 Doctype HTML, na sa ngayon, lamang ipagpalagay na mayroon kang mag-type. 441 00:20:48,410 --> 00:20:53,490 Ito ay lamang ng isang arcane tag, hindi iyon tunay na isang HTML tag, na tumutukoy na 442 00:20:53,490 --> 00:20:55,050 dito ay ilang mga HTML. 443 00:20:55,050 --> 00:20:57,400 >> Pupunta ako sa sige at muling likhain kung ano ang nakita natin ng ilang sandali ang nakalipas. 444 00:20:57,400 --> 00:20:58,650 Narito ang ulo ng pahina. 445 00:20:58,650 --> 00:21:01,170 Sa Loob ng ulo ay ang - 446 00:21:01,170 --> 00:21:01,890 kaya pamagat. 447 00:21:01,890 --> 00:21:04,340 Kaya naming kamustahin, mundo. 448 00:21:04,340 --> 00:21:06,570 At pagkatapos ay down na dito ay ang katawan tag. 449 00:21:06,570 --> 00:21:08,580 Hayaan akong isara ang body tag. 450 00:21:08,580 --> 00:21:12,280 At pagkatapos ay i-in dito makikita ko rin ang sinasabi, para lamang sa kaliwanagan, kumusta mundo. 451 00:21:12,280 --> 00:21:14,770 >> Kaya ito ay, arguably, ang pinakasimpleng posible web page mo 452 00:21:14,770 --> 00:21:15,770 maaaring gumawa na wasto. 453 00:21:15,770 --> 00:21:17,030 Ito ay syntactically wasto. 454 00:21:17,030 --> 00:21:18,620 Lahat ng bagay na binuksan ay sarado. 455 00:21:18,620 --> 00:21:20,910 Ang lahat ay mabuti sa dinisenyo at naka-indent. 456 00:21:20,910 --> 00:21:23,600 Kaya natin makita ngayon kung paano ko Maaaring i-access ang file na ito. 457 00:21:23,600 --> 00:21:25,540 >> Well, hayaan mo akong pumunta sa Chrome dito. 458 00:21:25,540 --> 00:21:35,050 At hayaan mo akong pumunta sa http://localhost/index.html. 459 00:21:35,050 --> 00:21:36,200 Kaya kung ano ang mga lokal na host? 460 00:21:36,200 --> 00:21:39,400 Well, karamihan sa anumang computer sa mundo, Linux, Mac OS, Windows, ay may isang palayaw 461 00:21:39,400 --> 00:21:40,680 tinatawag na lokal na host. 462 00:21:40,680 --> 00:21:42,900 Kaya kung sakaling nais na makipag-usap sa iyong sariling computer - 463 00:21:42,900 --> 00:21:45,140 kahit na, nang kakatwa reflexively - 464 00:21:45,140 --> 00:21:47,080 tawagan mo ang iyong sarili lokal host. 465 00:21:47,080 --> 00:21:50,390 Walang mahalaga kung ano ang iyong aktwal na computer ay tinatawag, ito man ni David ang MacBook 466 00:21:50,390 --> 00:21:52,490 Air, o isang bagay na higit pa masyadong masalita tulad na. 467 00:21:52,490 --> 00:21:57,760 >> Kaya ang URL na ito ay tila pagpunta sa gamitin ang HTTP upang makipag-usap sa mga lokal na host, 468 00:21:57,760 --> 00:22:00,800 ang parehong computer, ang appliance, at ito ay pagpunta sa magtanong para sa, lamang maglaan ng 469 00:22:00,800 --> 00:22:02,570 hulaan, ano ang file? 470 00:22:02,570 --> 00:22:04,460 Index.html. 471 00:22:04,460 --> 00:22:08,650 Kaya ang appliance ay naka-configure sa sumulong malaman na kung ako nagtatanong 472 00:22:08,650 --> 00:22:13,460 para sa isang bagay tulad ng index.html, hanapin sa isang folder na tinatawag na Vhosts, sa isang 473 00:22:13,460 --> 00:22:17,950 folder na tinatawag na localhost, sa isang folder sa ganyang bagay na tinatawag na publiko. 474 00:22:17,950 --> 00:22:20,400 Iyon ay kung saan ang lahat ng aking mga pampublikong mga file ay pagpunta sa maging. 475 00:22:20,400 --> 00:22:22,610 Kaya ngayon ako pagpunta sa pindutin ang Enter. 476 00:22:22,610 --> 00:22:27,100 >> At sumpain, mayroong Ipinagbabawal na mensahe, kung hindi, na kilala bilang 403, ang 477 00:22:27,100 --> 00:22:28,490 numeric code para dito. 478 00:22:28,490 --> 00:22:30,130 Kaya kung ano ang mali dito? 479 00:22:30,130 --> 00:22:33,210 Well, ito ay hindi sapat upang ilagay lamang ang mga file sa loob ng aking mga folder. 480 00:22:33,210 --> 00:22:35,790 Kailangan ko upang aktwal na gawin ang mga sumusunod. 481 00:22:35,790 --> 00:22:40,210 >> Hayaan akong pumunta sa aking Vhosts direktoryo, sa localhost, sa publiko, at hayaan 482 00:22:40,210 --> 00:22:41,680 gawin sa akin ls l gitling. 483 00:22:41,680 --> 00:22:44,510 At mayroong ilang iba pang mga bagay in dito para sa mga layuning ngayon. 484 00:22:44,510 --> 00:22:50,540 Ngunit mapansin sa kaliwang bahagi, sa tabi sa index.html, lamang namin makita ang isa RW. 485 00:22:50,540 --> 00:22:53,560 At sa nakaraan, kung ano RW ay nakatayo para sa? 486 00:22:53,560 --> 00:22:54,240 >> Lang magbasa o magsulat. 487 00:22:54,240 --> 00:22:58,000 Ang katotohanan na ang sinasabi nito RW sa kaliwa ibig sabihin ko, ang may-ari ng file na ito, maaari 488 00:22:58,000 --> 00:22:59,020 magbasa o magsulat dito. 489 00:22:59,020 --> 00:23:05,010 Ngunit kailangan kong ipaalam sa lahat ng mga tao sa mundo basahin ito, bagaman hindi magsulat dito. 490 00:23:05,010 --> 00:23:09,650 Kaya ako ng pagpunta upang baguhin ang mode ng file, chmod, lahat plus r upang bigyan 491 00:23:09,650 --> 00:23:13,910 lahat basahin pahintulot sa file na tinatawag na index.html. 492 00:23:13,910 --> 00:23:18,040 >> At kung ako ngayon Muling i-type ls l gitling, notice na, sa paglipas dito, ang ilang higit pa 493 00:23:18,040 --> 00:23:19,160 R ay na-pop up. 494 00:23:19,160 --> 00:23:21,090 At para sa ngayon, ang spec napupunta mas detalyado. 495 00:23:21,090 --> 00:23:24,450 Para P hanay 7, na nangangahulugan lamang sa lahat ng tao Maaari na ngayong basahin ang file na ito. 496 00:23:24,450 --> 00:23:27,790 Kung pumunta ako pabalik sa aking browser ngayon at i-reload, voila. 497 00:23:27,790 --> 00:23:28,750 Kamusta mundo. 498 00:23:28,750 --> 00:23:32,260 >> At maaari ko bang kahit na buksan ang aking mga tool Chrome at makita, tulad ng sa Google at 499 00:23:32,260 --> 00:23:34,590 Facebook na mayroong aking HTML, format ng kaunti 500 00:23:34,590 --> 00:23:35,930 naiiba at colorized. 501 00:23:35,930 --> 00:23:40,450 Kung ako pumunta sa tab na network at i-reload ang pahina, mapapansin na ang doon ay ang makakuha 502 00:23:40,450 --> 00:23:42,900 humiling na ang Chrome ay pagpapadala sa appliance. 503 00:23:42,900 --> 00:23:46,020 Mayroong mga 200 na para sa partikular na file. 504 00:23:46,020 --> 00:23:49,340 Kaya sa maikling salita, ito ay kung paano ang lahat ng mga iba't-ibang mga piraso ay pagtatagpo. 505 00:23:49,340 --> 00:23:53,530 Ito lang kaya ang mangyayari na ang mga web server ginagamit namin sa ngayon ay hindi remote, 506 00:23:53,530 --> 00:23:54,210 tulad ng Facebook. 507 00:23:54,210 --> 00:23:58,330 Ito ay literal sa parehong computer, na kung saan ay ganap na ganap ang OK. 508 00:23:58,330 --> 00:24:00,590 >> Kaya kung ano ang higit pa maaari naming gawin sa isang web page? 509 00:24:00,590 --> 00:24:03,110 Well, lamang, sabihin sa pamamagitan ng amihan isang pares ng mga bagay na ito. 510 00:24:03,110 --> 00:24:07,860 Ngunit ipaalam sa akin sige at buksang muli Gedit may index.html. 511 00:24:07,860 --> 00:24:13,980 At ipaalam sa akin sige at kamustahin CS50, i-save ang file na ito, bumalik sa 512 00:24:13,980 --> 00:24:16,260 browser, talagang underwhelming pagbabago. 513 00:24:16,260 --> 00:24:19,130 >> Ngunit paano kung gusto naming talaga mag-link sa isang bagay na ngayon? 514 00:24:19,130 --> 00:24:23,480 Kaya ito lumiliko out na maaari kaming magkaroon ng mga link sa HTML na lamang ang mga tag 515 00:24:23,480 --> 00:24:24,140 kanilang mga sarili. 516 00:24:24,140 --> 00:24:27,320 Ito ay nangyayari upang tawagin ang anchor tag. href isang katumbas 517 00:24:27,320 --> 00:24:33,190 https://www.cs50.net, www.cs50.net malapit quote, malapit bracket. 518 00:24:33,190 --> 00:24:35,230 At ngayon sabihin makita kung ano ang iba pa ay susunod. 519 00:24:35,230 --> 00:24:36,500 >> Ko na binuksan ang tag. 520 00:24:36,500 --> 00:24:38,990 Ako ngayon ay kailangan upang bigyan ito isang parirala tulad ng CS50. 521 00:24:38,990 --> 00:24:40,600 Hayaan akong isara ang tag. 522 00:24:40,600 --> 00:24:42,010 At mapansin ang ilang mga bagay. 523 00:24:42,010 --> 00:24:45,270 Kahit na mayroong ito misteriyoso bagay dito, hindi ko pa paulit-ulit na ito kapag nag- 524 00:24:45,270 --> 00:24:46,010 isara ang tag. 525 00:24:46,010 --> 00:24:48,230 Ikaw lamang isara ang tag kasama ang mga pangalan nang nag-iisa. 526 00:24:48,230 --> 00:24:50,940 At ito ay kung ano ang na kilala bilang isang katangian na may halaga. 527 00:24:50,940 --> 00:24:56,070 Mga Katangian lamang baguhin ang pag-uugali ng ilang mga tag sa loob ng isang pahina. 528 00:24:56,070 --> 00:24:59,150 >> Kaya ito ay tumutukoy na ang mga hyper sanggunian, ang magarbong paraan ng sinasabi ng 529 00:24:59,150 --> 00:25:03,660 URL para sa anchor, para sa mga ito link, dapat na CS50.net. 530 00:25:03,660 --> 00:25:07,440 At ang teksto na nais namin upang ipakita ang gumagamit ay hindi na raw URL, ngunit sa halip 531 00:25:07,440 --> 00:25:08,730 ang salitang CS50. 532 00:25:08,730 --> 00:25:13,710 >> Kaya kung ngayon ko i-reload, hayaan mo akong mag-zoom in para sa kalinawan, hayaan mo akong i-reload ang pahina, 533 00:25:13,710 --> 00:25:16,460 mapansin na mayroon kami na ito lumang paaralan asul na nakasalungguhit na link. 534 00:25:16,460 --> 00:25:20,000 At kung mag-hover ako sa ibabaw nito, at ito ang nangyayari maging matigas upang makita, sa kaliwang ibaba 535 00:25:20,000 --> 00:25:23,690 kamay na sulok ng screen, mapapansin na sinasabi nito na ang URL na kung saan 536 00:25:23,690 --> 00:25:24,430 Pupunta ako sa pumunta. 537 00:25:24,430 --> 00:25:27,940 At kung iyong i-click ako doon, voila, ngayon ako sa paggawa ng mga web page. 538 00:25:27,940 --> 00:25:30,140 At kami ay humantong ating sarili sa home page. 539 00:25:30,140 --> 00:25:32,670 >> Ngunit mapapansin kung ano mga potensyal na Nag-aalok ito sa amin. 540 00:25:32,670 --> 00:25:34,890 Ang seguridad ay napaka sa popularidad mga araw na ito. 541 00:25:34,890 --> 00:25:41,210 Paano kung ako sabihin sa halip ng isang bagay tulad ng ito, at ako sa halip pumunta sa, sabihin nating, sabihin 542 00:25:41,210 --> 00:25:42,460 makita, fakeCS50.net. 543 00:25:42,460 --> 00:25:44,660 544 00:25:44,660 --> 00:25:46,360 I-reload ang pahinang ito. 545 00:25:46,360 --> 00:25:50,180 >> OK, kaya mapapansin pa rin ito Mukhang ako pagpunta sa CS50, maliban kung ang isang matalas mata 546 00:25:50,180 --> 00:25:51,560 ay mapansin Pupunta ako sa mga pekeng CS50. 547 00:25:51,560 --> 00:25:54,550 Ako paghula domain na ito ay hindi nakuha. 548 00:25:54,550 --> 00:25:55,960 OK, sa gayon ito ay hindi magagamit. 549 00:25:55,960 --> 00:25:56,600 Kaya na mabuti. 550 00:25:56,600 --> 00:25:57,900 Walang sinuman ang talagang may domain na iyon. 551 00:25:57,900 --> 00:26:00,380 >> Ngunit sabihin maging ng kaunti pa sa nakahahamak dahil iyon ang uri ng bobo. 552 00:26:00,380 --> 00:26:02,240 Paano kung baguhin namin ito sa Paypal. 553 00:26:02,240 --> 00:26:09,960 At kung ano ang tinatawag naming ito, i, www.paypal.badguy.com, 554 00:26:09,960 --> 00:26:12,070 ano ang domain ay. 555 00:26:12,070 --> 00:26:13,700 Iyon marahil umiiral na. 556 00:26:13,700 --> 00:26:16,260 Kaya ngayon hayaan mo akong i-reload ang pahina. 557 00:26:16,260 --> 00:26:22,890 At dito kami ay may isang uri ng isang phishing attack, P-H-I-S-H-I-N-G, kung saan ay ang 558 00:26:22,890 --> 00:26:26,760 ulok salita na ibinigay para sa isang atake na Sinusubukan ng isda impormasyon, o, mas mahusay na 559 00:26:26,760 --> 00:26:30,450 pa, pera, sa labas ng mga tao sa pamamagitan ng tricking ang mga ito sa pagbibigay ng impormasyon na 560 00:26:30,450 --> 00:26:31,990 kung hindi man ay hindi nila maaaring gawin. 561 00:26:31,990 --> 00:26:33,500 Ito mukhang lubos legit, tama? 562 00:26:33,500 --> 00:26:34,930 Dapat ba akong magkaroon ng isang link dito upang Paypal.com. 563 00:26:34,930 --> 00:26:37,700 564 00:26:37,700 --> 00:26:40,430 Sa pagkamakatarungan, kung ako sexed up ito na may ilang mga graphics, maaari naming gawin itong tumingin 565 00:26:40,430 --> 00:26:41,310 higit pa tulad ng PayPal. 566 00:26:41,310 --> 00:26:41,510 I-right? 567 00:26:41,510 --> 00:26:43,815 Dahil dati ko, bilang isang tabi, Kaya kong pumunta sa Paypal.com. 568 00:26:43,815 --> 00:26:47,110 At lamang nasaksihan namin kung paano ang maaari kong makita ang lahat ng kanilang mga HTML. 569 00:26:47,110 --> 00:26:50,560 Maaari ko lang kopyahin ito at muling likhain ang aesthetics ng Paypal sa halip na pumunta 570 00:26:50,560 --> 00:26:51,490 lumang paaralan dito. 571 00:26:51,490 --> 00:26:55,010 Ngunit mapapansin, siyempre, at ito ay isang maliit na maliit pa rin, lamang sa ibaba 572 00:26:55,010 --> 00:26:59,190 kaliwang sulok, tulad ng sa isang 10 point Font, huwag mong makita kung ano ang URL ikaw 573 00:26:59,190 --> 00:27:01,310 talagang pagpunta sa ma-humantong sa. 574 00:27:01,310 --> 00:27:06,580 >> At kaya kung sakaling mo na nakuha ng spam sinasabi sige, at handa ka account 575 00:27:06,580 --> 00:27:07,420 ay nakompromiso. 576 00:27:07,420 --> 00:27:10,615 Mangyaring i-click ang link na ito at ipaalam sa amin ang iyong password upang maaari naming matiyak na ikaw ay 577 00:27:10,615 --> 00:27:13,010 mo, huwag kailanman gawin iyon. 578 00:27:13,010 --> 00:27:14,180 Ang mga bagay na dapat hindi na kailangang sabihin. 579 00:27:14,180 --> 00:27:17,670 Ngunit ito ay kamangha-mangha nakakatawa, at kalunus-lunos, kung paano sa bawat taon ito ay anyong 580 00:27:17,670 --> 00:27:19,660 mangyari sa ilang mga non-zero bilang ng mga tao. 581 00:27:19,660 --> 00:27:21,400 >> At iyon ang beauty ng mga phishing atake. 582 00:27:21,400 --> 00:27:23,160 Maaari mong ipadala ang isang milyong mga email. 583 00:27:23,160 --> 00:27:27,720 At kahit na 0.01% ng mga tao talaga mag-click sa Paypal at ibigay sa iyo ang 584 00:27:27,720 --> 00:27:31,040 password, na pa rin ng non-zero na numero ng mga tao na lamang na nagbibigay sa 585 00:27:31,040 --> 00:27:32,200 mo ang kanilang pera. 586 00:27:32,200 --> 00:27:36,170 At pagpapadala ng mga email, siyempre, ay lubos na madali at, talaga, ng libreng 587 00:27:36,170 --> 00:27:36,970 mga araw na ito. 588 00:27:36,970 --> 00:27:40,410 >> Kaya mahaba kuwento maikli, kamangha-mangha magandang ideya, tama? 589 00:27:40,410 --> 00:27:44,620 Taon na ang nakakaraan, ito ang pinakamaagang web, pagpapagana ng isang web ng 590 00:27:44,620 --> 00:27:46,330 mga hyperlink sa mga mapagkukunan. 591 00:27:46,330 --> 00:27:49,520 Ngunit kaya mabilis na ito ay maaaring na ginagamit para sa masamang layunin. 592 00:27:49,520 --> 00:27:54,100 At email, magkasiya ito upang sabihin, ang mga ito araw, ang HTML na naka-embed sa loob. 593 00:27:54,100 --> 00:27:55,410 >> Well, hayaan mo akong lamang ng isang iba pang mga bagay. 594 00:27:55,410 --> 00:27:58,640 At kami na umalinsunod sa kalakhan sa seksyon sa problema itakda pitong upang payagan kang 595 00:27:58,640 --> 00:28:00,000 galugarin ang mga particular. 596 00:28:00,000 --> 00:28:01,990 Ngunit ipaalam sa akin sige at gawin ang ilang mga bagay dito. 597 00:28:01,990 --> 00:28:04,840 Pupunta ako sa pumunta sa at ipinapahayag ano ang tinatawag na isang div, o 598 00:28:04,840 --> 00:28:06,080 division, ng pahina. 599 00:28:06,080 --> 00:28:07,770 Hayaan akong isara na div tag. 600 00:28:07,770 --> 00:28:11,460 >> At ako pagpunta sa sabihin up dito tuktok ng pahina. 601 00:28:11,460 --> 00:28:14,940 At pagkatapos ay sa ibaba na ito, ako pagpunta sa gawin isang bagay tulad ng isa pang div, isara ang 602 00:28:14,940 --> 00:28:17,800 na tag, at gawin ibaba ng pahina. 603 00:28:17,800 --> 00:28:18,840 At sabihin i-save ito. 604 00:28:18,840 --> 00:28:21,040 >> Kaya ngayon sabihin bumalik sa aking file. 605 00:28:21,040 --> 00:28:22,120 Tunay na underwhelming. 606 00:28:22,120 --> 00:28:25,520 Ngunit ano ang dibisyon ay ginagamit para sa, sa ilalim ng hood, ay ito tunay 607 00:28:25,520 --> 00:28:26,920 gandang istruktura elemento. 608 00:28:26,920 --> 00:28:30,300 Hindi ito magkakaroon ng anumang aesthetics sa ngayon bilang maaari naming makita, bukod sa, tila, 609 00:28:30,300 --> 00:28:31,890 paglalagay ng mga bagay sa mga bagong linya. 610 00:28:31,890 --> 00:28:36,290 >> Ngunit paunawa, bilang isang tabi, lamang pagpindot Ipasok hindi cut ito sa HTML na tulad nito 611 00:28:36,290 --> 00:28:39,840 ay nasa C. Maaari mong isipin na iyon pagpunta sa ilagay sa isang masarap na malaking agwat sa pagitan 612 00:28:39,840 --> 00:28:41,300 sa tuktok at ibaba ng pahina. 613 00:28:41,300 --> 00:28:43,420 Ngunit ito ay binalewala. 614 00:28:43,420 --> 00:28:48,040 White space ay lubos na binalewala sa web mga pahina maliban sa pinakaunang 615 00:28:48,040 --> 00:28:51,530 space bar ng character, o carriage return, na hit mo sa keyboard. 616 00:28:51,530 --> 00:28:55,370 Kung nais mo ng higit pang line break, mo mayroon upang tukuyin ito sa iyong sarili. 617 00:28:55,370 --> 00:28:59,080 >> Kaya ako ng pagpunta sa gawin ang ilang mga bagay dito upang ipakita kung ano ang nangyayari sa. 618 00:28:59,080 --> 00:29:02,700 Pupunta ako sa magdagdag ng isang katangian na Umiiral At muli, ang paraan malaman mo 619 00:29:02,700 --> 00:29:07,110 kung ano ang nagdudulot ang umiiral, kung ano ang mga tag na umiiral, talaga, ang online na mga sanggunian. 620 00:29:07,110 --> 00:29:09,750 HTML ay ang uri ng wika - ito ay hindi isang programming language. 621 00:29:09,750 --> 00:29:12,460 Ito ay isang markup language - na pagkatapos ng magandang kalahating oras, siguro, isang oras na may 622 00:29:12,460 --> 00:29:15,930 ito, kailangan mo tiyak hawakang mahigpit, karamihan Malamang, ang pangunahing ideya. 623 00:29:15,930 --> 00:29:20,350 At pagkatapos ay isang paghahanap sa Google ay ang layo ng lahat ang mga posibleng mga tag na maaari kang maging 624 00:29:20,350 --> 00:29:21,170 interesado ka 625 00:29:21,170 --> 00:29:24,290 At sa bawat ang spec, iyon ay medyo maligayang pagdating at hinihimok dito. 626 00:29:24,290 --> 00:29:26,120 >> Kaya ngayon hayaan mo akong magpatuloy at gawin ang isang bagay na katulad nito. 627 00:29:26,120 --> 00:29:28,690 Background-kulay. 628 00:29:28,690 --> 00:29:32,060 At ngayon, ako pagpunta sa gawin ang isang bagay tulad ng red, tuldok-kuwit. 629 00:29:32,060 --> 00:29:33,970 At maaari mong gawin ito sa ng ilang iba't ibang mga paraan. 630 00:29:33,970 --> 00:29:36,770 Ako lamang ang uri ng pag-type ito bilang super tahasan hangga't maaari. 631 00:29:36,770 --> 00:29:41,960 >> Ngunit ito lumiliko out na ang halaga dito ay ano ang tinatawag na CSS, Cascading Style 632 00:29:41,960 --> 00:29:43,700 Sheet, na kung saan ay isa pang wika nang sama-sama. 633 00:29:43,700 --> 00:29:46,770 CSS ay walang kinalaman sa buksan ang tag at malapit na mga tag. 634 00:29:46,770 --> 00:29:48,230 Ito ay may sa gawin sa mga katangian. 635 00:29:48,230 --> 00:29:52,660 >> At katangian lamang key halaga mga pares, na nangangahulugan lamang ng ilang mga salita, 636 00:29:52,660 --> 00:29:54,680 tutuldok, at pagkatapos ay ang ilang mga iba pang mga salita. 637 00:29:54,680 --> 00:29:57,940 At kung mayroon kang maramihang mga bago, o lamang isa dito, maaari mong tapusin ito sa isang 638 00:29:57,940 --> 00:29:59,390 tuldok-kuwit, para lamang sa kaliwanagan. 639 00:29:59,390 --> 00:30:01,370 Ngunit iyon, masyadong, ay gagana dito. 640 00:30:01,370 --> 00:30:02,500 >> Ngayon kung ano ang na ito ng pagpunta sa gawin? 641 00:30:02,500 --> 00:30:03,610 Maaari mong marahil hulaan. 642 00:30:03,610 --> 00:30:05,930 Hayaan akong sige at i-reload ang pahina. 643 00:30:05,930 --> 00:30:07,300 At ngayon, talagang ito ay darating sa kahabaan. 644 00:30:07,300 --> 00:30:09,150 Kaya tuktok ng aking pahina ay pula. 645 00:30:09,150 --> 00:30:12,380 Ngunit kung ano ang key dito ay, nabanggit ko mas maaga, div na nagbibigay sa iyo 646 00:30:12,380 --> 00:30:13,220 isang sangay ng pahina. 647 00:30:13,220 --> 00:30:14,410 At na kung ano talaga ang ginagawa nito. 648 00:30:14,410 --> 00:30:17,920 Ito ay lubos na divides ang pahina sa isang parihaba na maaari mong pagkatapos ay 649 00:30:17,920 --> 00:30:18,720 manipulahin. 650 00:30:18,720 --> 00:30:22,330 >> At ang paniwala ng mga parihaba ay uri ng nakakahimok sa na, kung sa tingin mo ng 651 00:30:22,330 --> 00:30:26,410 karamihan sa anumang website, doon ay marahil ilang istraktura dito. 652 00:30:26,410 --> 00:30:29,620 Karamihan mo marahil bihirang makitang Facebook ni homepage kung ka naka-log 653 00:30:29,620 --> 00:30:30,440 sa lahat ng oras. 654 00:30:30,440 --> 00:30:33,920 >> Ngunit sa home page ng Facebook, mayroong ang ilang mga uri ng div sa tuktok. 655 00:30:33,920 --> 00:30:36,140 At hindi ito ay maaaring maging kasing simple bilang isa div, ngunit mayroong isang 656 00:30:36,140 --> 00:30:37,560 hugis-parihaba rehiyon doon. 657 00:30:37,560 --> 00:30:40,290 Ang nalalabing bahagi ng pahina ay tulad ng isang malaking div, tulad ng isang magkano 658 00:30:40,290 --> 00:30:41,910 mas malaking hugis-parihaba rehiyon. 659 00:30:41,910 --> 00:30:44,540 Kaya mahaba kuwento maikli, sa pamamagitan lamang ng pagkakaroon ng mga maliit na mga bloke ng gusali, ang 660 00:30:44,540 --> 00:30:49,250 kakayahang bagay modelo bilang mga parihaba, kung malapad o makitid, maaari mo ring 661 00:30:49,250 --> 00:30:53,680 gumawa ng mga hanay potensyal na, ay nagbibigay-daan sa iyo upang lay out mga pahina, talaga, gayunpaman mo 662 00:30:53,680 --> 00:30:54,100 Nais. 663 00:30:54,100 --> 00:30:56,170 Talaga kami lamang scratching sa ibabaw na dito. 664 00:30:56,170 --> 00:30:59,820 >> Sa katunayan, kung gagawin ko ng isa pang isa, hayaan mo akong magpatuloy at gawin estilo, 665 00:30:59,820 --> 00:31:05,410 background-kulay, makikita namin gawin ang isang bagay tulad ng asul, malapit quotes. 666 00:31:05,410 --> 00:31:06,620 Sabihin reload ang. 667 00:31:06,620 --> 00:31:08,260 Kaya ngayon nakakakuha ito ng kahit na hindi maganda. 668 00:31:08,260 --> 00:31:11,520 Ngunit ngayon maaari kong uri ng ipakita off aking P itakda limang mga kasanayan, tama? 669 00:31:11,520 --> 00:31:12,690 Red. 670 00:31:12,690 --> 00:31:15,640 Ito reminds sa akin ng RGB, Red Green Blue triple. 671 00:31:15,640 --> 00:31:19,330 Well, ito lumiliko out sa web programming, o disenyo ng web, na kung saan ay ito, na namin 672 00:31:19,330 --> 00:31:21,650 Hindi pa-program ang anumang bagay per se, maaari mo talaga 673 00:31:21,650 --> 00:31:22,880 mayroon hexadecimal code. 674 00:31:22,880 --> 00:31:26,480 Kaya isang bagay ng isang bagay, isang bagay isang bagay, isang bagay ng isang bagay. 675 00:31:26,480 --> 00:31:30,650 Kaya maaari kang magkaroon ng anim na hexadecimal character, o tatlo, sa ilang mga kaso, 676 00:31:30,650 --> 00:31:33,480 at bawat isa sa mga mark tanong ay may na maging isang hexadecimal digit, 677 00:31:33,480 --> 00:31:34,985 zero sa pamamagitan ng f. 678 00:31:34,985 --> 00:31:41,000 >> Kung gusto kong magkaroon ng maraming pula, at walang berde, at asul na hindi, kung ano ang mga 679 00:31:41,000 --> 00:31:43,740 sa tapat ng zero kapag gumagamit ng hex? 680 00:31:43,740 --> 00:31:44,480 Ito ay f. 681 00:31:44,480 --> 00:31:51,130 Kaya ang maaari kong gawin ff, zero zero, zero zero, i-save ito, at ngayon ay bumaba dito. 682 00:31:51,130 --> 00:31:52,700 At hindi ko talaga makita ang isang pagbabago. 683 00:31:52,700 --> 00:31:56,230 Kaya quote magpanipi "red" ay tila kasingkahulugan para sa lahat ng pula, 684 00:31:56,230 --> 00:31:57,610 walang berde, walang asul. 685 00:31:57,610 --> 00:31:59,960 Samantala, sabihin sadyang baguhin isa ito upang maging isang bagay 686 00:31:59,960 --> 00:32:01,210 walang tiyak na layunin, tulad ng ABCDF. 687 00:32:01,210 --> 00:32:03,790 688 00:32:03,790 --> 00:32:05,860 >> Tayo'y makita kung ano na. 689 00:32:05,860 --> 00:32:08,530 Ito ay isang talagang maganda bughaw, talaga, baby blue. 690 00:32:08,530 --> 00:32:11,820 Ang lahat ng mga karapatan, sa gayon ang mga ito ay ngayon lang medyo random na mga kumbinasyon ng mga 691 00:32:11,820 --> 00:32:12,210 character. 692 00:32:12,210 --> 00:32:13,410 Kaya hindi namin ma-nabalaho sa putik in dito. 693 00:32:13,410 --> 00:32:15,930 Ngunit muli, ito nagsasalita sa katumpakan na maaari mong simulan upang 694 00:32:15,930 --> 00:32:19,090 ilapat - kahit na napaka ka mapuspos sa pamamagitan ng ang aesthetics. 695 00:32:19,090 --> 00:32:21,750 Sa katunayan, kung gusto mo talagang maging impressed, sabihin sa akin sige at baguhin 696 00:32:21,750 --> 00:32:23,500 ang laki ng font, halimbawa. 697 00:32:23,500 --> 00:32:25,960 At mapansin ang tuldok-kuwit, na ay kinakailangang doon. 698 00:32:25,960 --> 00:32:29,570 >> Sukat ng font, maaari naming lamang maging katawa-tawa dito, 96 point. 699 00:32:29,570 --> 00:32:31,280 I-save na. 700 00:32:31,280 --> 00:32:33,670 Wow, na ay isang malaking sukat ng font. 701 00:32:33,670 --> 00:32:35,490 Ang lahat ng mga karapatan, kaya napakadali. 702 00:32:35,490 --> 00:32:38,260 At talagang, mahalagang nakakakita ka ang pinakaunang pahina ng web na aking ginawa 703 00:32:38,260 --> 00:32:40,060 taon na ang nakalipas, kapag ako unang natutunan ang mga bagay-bagay. 704 00:32:40,060 --> 00:32:42,190 Ito ay mas madali upang gumawa ng napaka kakila-kilabot mga bagay mabilis. 705 00:32:42,190 --> 00:32:46,115 >> At kung hindi ka pamilyar sa Wayback Machine sa archive.org, mo 706 00:32:46,115 --> 00:32:48,210 mahanap ang lahat ng aking mga kahindik-hindik undergrad web mga pahina. 707 00:32:48,210 --> 00:32:50,090 Ang isa ay nagkaroon Kermit ang Frog sa harap. 708 00:32:50,090 --> 00:32:53,150 Nagpunta ako sa pamamagitan ng pagbabago ng isang bagay kung saan ko naisip ito ay cool na gumawa ng background ng 709 00:32:53,150 --> 00:32:56,320 isang pulang kurtina, kapag natutunan ko kung paano mo maaari tile imahe muli, at muli, at 710 00:32:56,320 --> 00:32:59,540 muli, upang punan ang isang pahina na may isang malaking hindi kaakit-akit pulang kurtina. 711 00:32:59,540 --> 00:33:03,120 At pagkatapos, sa tuktok ng mga ito, ay isang icon na mayroon kang mag-click sa ipasok ang aking tahanan 712 00:33:03,120 --> 00:33:04,960 pahina dahil na noon ay Sobra sa katanyagan. 713 00:33:04,960 --> 00:33:08,870 >> At pagkatapos ay ang aking unang programa ko kailanman nagsulat ay hindi sa PHP, ngunit sa isang wika 714 00:33:08,870 --> 00:33:12,260 tinatawag na Pearl, nagsulat ng guest na aklat, na ay isang talagang cool na bagay na isang 715 00:33:12,260 --> 00:33:14,250 maraming mga tao sa iyong inaasahan upang magkaroon sa isang home page. 716 00:33:14,250 --> 00:33:17,510 Kapag nakarating ka na sa pahina, gusto ka nila upang mag-sign in, at sabihin kung sino ka, 717 00:33:17,510 --> 00:33:18,720 at bakit nandoon ka. 718 00:33:18,720 --> 00:33:21,320 Ito ay napaka-1990s estilo disenyo ng web. 719 00:33:21,320 --> 00:33:24,130 >> Subalit ang mga araw na ito, ay tiyak, na namin dumating ng maraming mas malayo. 720 00:33:24,130 --> 00:33:27,560 At makikita mo, sa seksyon, at kahit na sa mga problema itakda pitong, sa pamamagitan ng 721 00:33:27,560 --> 00:33:31,570 pagdaragdag aklatan mga araw na ito, ito ay kaya lubhang mas madaling gumawa 722 00:33:31,570 --> 00:33:33,400 prettier bagay mabilis. 723 00:33:33,400 --> 00:33:36,550 Talagang dito, lang kami scratching ang ibabaw ng kung ano ang maaari mong gawin 724 00:33:36,550 --> 00:33:37,400 stylistically. 725 00:33:37,400 --> 00:33:41,660 >> At sa katunayan, na, hayaan mo akong bigyan ng diin na ito ay naka-pagkuha ng pangit, hindi 726 00:33:41,660 --> 00:33:46,030 lamang aesthetically, ngunit sa mga tuntunin ng estilo ng aking code, o ang 727 00:33:46,030 --> 00:33:47,260 disenyo ng aking code. 728 00:33:47,260 --> 00:33:52,350 Kasalukuyan ko pa comingled HTML, na ay ang maberde bukas mga tag doon, na may 729 00:33:52,350 --> 00:33:55,160 CSS katangian, na ay talagang legit. 730 00:33:55,160 --> 00:33:57,200 Ito ay talagang kung saan ang wika nagkaroon nito pinagmulan. 731 00:33:57,200 --> 00:34:01,030 >> Ngunit sa interes ng malinis na disenyo, magkano tulad ng nagsimula kaming factoring stuff 732 00:34:01,030 --> 00:34:05,370 out mula sa C file sa. h file, sabihin sa akin talagang magsanay na uri ng 733 00:34:05,370 --> 00:34:07,990 prinsipyo at simulan ang paggawa ito sa halip. 734 00:34:07,990 --> 00:34:13,280 Hayaan akong ilagay ang isang estilo tag up dito, na Umiiral din sa HTML, at ipaalam sa akin 735 00:34:13,280 --> 00:34:15,330 tukuyin ang mga sumusunod na. 736 00:34:15,330 --> 00:34:16,360 Hayaan akong tanggalin ito. 737 00:34:16,360 --> 00:34:18,110 Kulay ng background ay magiging pula. 738 00:34:18,110 --> 00:34:19,800 Pupunta ako sa tanggalin ang lahat. 739 00:34:19,800 --> 00:34:22,580 Pupuntahan ko mapupuksa ang mga estilo ipatungkol, at Pupunta ako sa katangi-tangi 740 00:34:22,580 --> 00:34:24,620 kilalanin ito div na may isang salita - 741 00:34:24,620 --> 00:34:28,750 mang, ngunit makatwirang, quote magpanipi "top." At id ay isang espesyal na 742 00:34:28,750 --> 00:34:32,530 katangian na tumutukoy sa natatanging isang tiyak na HTML element 743 00:34:32,530 --> 00:34:33,850 bilang may id na. 744 00:34:33,850 --> 00:34:37,969 >> Kung ako ngayon ay nais na inilarawan sa pangkinaugalian ito, hanggang dito sa ang ulo ng aking pahina, sa loob ng 745 00:34:37,969 --> 00:34:41,730 style tag, mapapansin na ang Ang maaari kong gawin hash tuktok. 746 00:34:41,730 --> 00:34:45,300 At pagkatapos ay maaari ko bang ilagay ang isang pares ng mga kulot tirante, nakapagpapaalaala ng C, at pagkatapos ay hayaan 747 00:34:45,300 --> 00:34:47,130 sa akin i-paste sa na estilisasyon. 748 00:34:47,130 --> 00:34:49,929 At ipaalam sa akin sige dito at umasa kung saan ako pupunta may ito. 749 00:34:49,929 --> 00:34:53,380 Hayaan akong ring lumikha ng isa para sa ibaba div. 750 00:34:53,380 --> 00:34:58,010 Hayaan akong mang-agaw ito napakapangit code mula pababa dito, ilagay ito sa dito, at makikita ko maging 751 00:34:58,010 --> 00:35:00,770 ang kaunti pa anal ngayon at inilarawan sa pangkinaugalian ito sa pamamagitan lamang ng paglalagay ng mga bagay sa kanilang sariling mga 752 00:35:00,770 --> 00:35:02,540 linya, na nagtatapos sa semicolons. 753 00:35:02,540 --> 00:35:04,430 Hayaan akong mapupuksa ang mga tag ng estilo. 754 00:35:04,430 --> 00:35:05,320 >> Ngunit hindi ko pa tapos. 755 00:35:05,320 --> 00:35:07,406 Kailangan kong gawin ang isa sa iba pang mga bagay. 756 00:35:07,406 --> 00:35:10,070 Oo, id ay katumbas magpanipi quote, "ibaba," o kahit anong id gusto kong 757 00:35:10,070 --> 00:35:11,740 bigyan na elemento. 758 00:35:11,740 --> 00:35:13,420 Ngayon, hayaan mo akong bumalik sa paglipas dito. 759 00:35:13,420 --> 00:35:14,360 At ito ay napakasama. 760 00:35:14,360 --> 00:35:15,805 Hindi ko haharapin ang mga 96 point. 761 00:35:15,805 --> 00:35:16,960 Natin gawin 24 point. 762 00:35:16,960 --> 00:35:18,320 O maaari kang maging mas tumpak. 763 00:35:18,320 --> 00:35:21,800 Maaari mong gamitin ang aktwal na mga pixel, px, kaya na mo ba talagang makakuha ng mas pinong grain 764 00:35:21,800 --> 00:35:23,220 kontrolin ang higit sa iyong mga pahina. 765 00:35:23,220 --> 00:35:26,860 >> Bilang isang tabi, na hindi kinakailangang ang pinakamahusay na bagay kung ang mga gumagamit, para sa 766 00:35:26,860 --> 00:35:29,650 accessibility kadahilanan, nais na makakapag-taasan ang laki. 767 00:35:29,650 --> 00:35:32,650 Kaya mapagtanto na mayroong mga paraan ng paggawa mga bagay na hindi kinakailangang 768 00:35:32,650 --> 00:35:34,230 matapang na code ang lahat. 769 00:35:34,230 --> 00:35:37,220 >> Ang lahat ng mga karapatan, sa gayon ito ay mas malaki, 24 punto, kaysa sa anumang default ay ang. 770 00:35:37,220 --> 00:35:38,630 Ngunit ngayon ito ay isang maliit na mas malinis. 771 00:35:38,630 --> 00:35:40,230 At ipaalam sa akin tumagal ito ng isang hakbang karagdagang. 772 00:35:40,230 --> 00:35:47,220 Tulad ng sa ideya ng mga file header, mapansin kami ay isang hakbang na mas malapit sa na. 773 00:35:47,220 --> 00:35:52,000 Mayroon akong isinasali out, ngunit pa rin iniwan, sa loob ng aking pahina, mga panuntunan sa CSS. 774 00:35:52,000 --> 00:35:56,200 Bakit maaaring ko nais na kunin ang isang hakbang pa, alisin ito nang sama-sama, at 775 00:35:56,200 --> 00:35:59,860 ilagay ito sa hiwalay na file? 776 00:35:59,860 --> 00:36:01,070 >> Kaya ang maaari kong muling gamitin ito, tama? 777 00:36:01,070 --> 00:36:03,155 Ito lamang ang uri ng intuwisyon ngayon. 778 00:36:03,155 --> 00:36:06,340 Bago, ako na-claim na ito ay lamang nagsisimula pangit pagkakaroon ng estilo 779 00:36:06,340 --> 00:36:08,480 mga katangian sa loob ng divs kanilang mga sarili. 780 00:36:08,480 --> 00:36:09,750 Ngunit lamang ang uri ng tingin na sa pamamagitan ng. 781 00:36:09,750 --> 00:36:13,560 Tulad ng iyong pahina ay makakakuha ng mas mahaba at mas mahaba, kung naglalagay ka ng dito, at dito, at 782 00:36:13,560 --> 00:36:18,350 dito, at dito, ang lahat ng mga iba't ibang kulay, font at laki, at iba pang mga naturang 783 00:36:18,350 --> 00:36:22,550 mga katangian, ang iyong pahina ay masyadong mabilis pagpunta sa maging hindi napapamahalaang para sa iyo. 784 00:36:22,550 --> 00:36:24,570 >> Kung ang isang tao ay nakasalalay sa iyo at sabi, oh, alam mo kung ano? 785 00:36:24,570 --> 00:36:28,070 Gusto ko talagang nais na baguhin ang laki ng font sa pamamagitan ng dalawang karagdagang mga puntos, mo 786 00:36:28,070 --> 00:36:31,275 Maaaring magkaroon upang pumunta at hanapin at palitan isang malaking bilang ng mga linya ng code. 787 00:36:31,275 --> 00:36:35,170 Ito ay magkano ang mas nakakahimok upang magsagitna lahat ng mga naturang aesthetics dito. 788 00:36:35,170 --> 00:36:38,850 Ngunit kung nais mong muling gamitin ang mga aesthetics sa maramihang mga pahina ng web, ang lahat ng 789 00:36:38,850 --> 00:36:41,100 ang mas nakakahimok sa, para sa Halimbawa, lumikha ng isang file 790 00:36:41,100 --> 00:36:45,290 tinawag gamit ang mga nilalaman. 791 00:36:45,290 --> 00:36:46,680 >> At ipaalam sa akin gawin ito. 792 00:36:46,680 --> 00:36:51,150 793 00:36:51,150 --> 00:36:51,920 I-save ang file na ito. 794 00:36:51,920 --> 00:36:55,580 Sinasabi ko styles.css, arbitrary, ngunit maginoo. 795 00:36:55,580 --> 00:36:58,770 Makikita ko bang ilagay ito sa John Harvard Tahanan Directory ngayon para sa pagiging simple. 796 00:36:58,770 --> 00:37:03,880 At kung ano ang maaari kong gawin sa aking mga web page ay makakuha alisan ang mga tag ng estilo nang sama-sama, 797 00:37:03,880 --> 00:37:08,270 at medyo unintuitively, gumamit ng isang link tag, na kung saan ay hindi nagbibigay sa iyo ng isang link sa 798 00:37:08,270 --> 00:37:13,140 ang hyperlink, naki-click na kahulugan, ngunit kung saan sinasabi ko link, href equals 799 00:37:13,140 --> 00:37:15,120 styles.css. 800 00:37:15,120 --> 00:37:20,050 At ang relasyon na ito elemento ay may mga pahina ng web ay upang maglingkod bilang 801 00:37:20,050 --> 00:37:21,280 nito style sheet. 802 00:37:21,280 --> 00:37:22,670 >> Kaya kung paano nakuha ko ito malalaman? 803 00:37:22,670 --> 00:37:25,950 One, mo lamang basahin ang mga manu-manong, o Google sa iyo sa palibot, at ikaw 804 00:37:25,950 --> 00:37:27,000 tumingin sa iba't-ibang mga mapagkukunan. 805 00:37:27,000 --> 00:37:30,520 Ibig kong sabihin, na tunay ay kung paano kinuha mo ang diskarte na tulad nito, at, pare-pareho 806 00:37:30,520 --> 00:37:34,720 may ideyang ito ng pagtuturo ang sarili bago mga wika, muli, makikita mo makita na ang 807 00:37:34,720 --> 00:37:38,830 mayroon lamang isang tiyak na bilang ng mga bagay sa anumang wika na, sa sandaling makakuha ka 808 00:37:38,830 --> 00:37:41,310 mga ito, makikita mong makita na ito ay makakakuha ng mas mabilis at mas mabilis na magsulat. 809 00:37:41,310 --> 00:37:44,180 Sa katunayan, pag-aaral ng isang bagong programming wika ay kaya magkano ang mas mabilis kaysa sa isang bagong 810 00:37:44,180 --> 00:37:47,380 pasalitang wika dahil ang mga bagay na ito ay mas maliit at marami pang iba 811 00:37:47,380 --> 00:37:48,820 tumpak na tinukoy. 812 00:37:48,820 --> 00:37:51,590 >> Ngunit ko na naka-highlight ng isang bit ng isang anomalya dito. 813 00:37:51,590 --> 00:37:57,750 Bakit ako naka-highlight na ito forward slash dito? 814 00:37:57,750 --> 00:37:59,420 Dahil mayroon akong upang isara ang tag. 815 00:37:59,420 --> 00:38:00,530 Ang dapat kong isara ang tag. 816 00:38:00,530 --> 00:38:02,750 At makikita mo ang hindi mabilang mga mapagkukunan online na hindi 817 00:38:02,750 --> 00:38:04,080 kinakailangang malapit mga tag. 818 00:38:04,080 --> 00:38:08,770 At realistically, ito ay hindi mahigpit kinakailangan para sa mga teknikal at mayroong 819 00:38:08,770 --> 00:38:11,950 kadahilanan ng katotohanan, mga browser lamang ang medyo mapagparaya ng pagkakamali sa web 820 00:38:11,950 --> 00:38:14,360 mga pahina, para sa mas mahusay o para sa mas masahol pa, ngunit karamihan ay mas masahol pa. 821 00:38:14,360 --> 00:38:18,830 >> Kaya ito dito lamang ang isang mas malinis na paraan ng sinasabi ng isang bagay bobo na tulad nito, 822 00:38:18,830 --> 00:38:22,330 kung saan kung gusto mong buksan ang link na tag ngunit isara ito, mayroong talagang walang paniwala 823 00:38:22,330 --> 00:38:23,720 ng nilalaman para sa isang tag na link. 824 00:38:23,720 --> 00:38:26,000 Ito lamang ay nangangahulugan na-load ito mag-file at ilagay ito dito. 825 00:38:26,000 --> 00:38:30,610 Ito ay tulad ng matulis ay kinabibilangan sa C. Maaari mo buksan at isara ng tag ang lahat nang sabay-sabay 826 00:38:30,610 --> 00:38:31,660 sa loob ng parehong tag. 827 00:38:31,660 --> 00:38:33,520 At mayroong iba pang mga halimbawa ng mga ito. 828 00:38:33,520 --> 00:38:37,280 Ito ay hindi ang paraan upang gawin ito, ngunit ang br tag, para sa line break, kung ako 829 00:38:37,280 --> 00:38:41,780 talagang gusto upang makamit ang kung ano ako ay sinusubukang i-bago sa pamamagitan ng pagpindot ng Enter, kung 830 00:38:41,780 --> 00:38:45,380 Tahasan kong sabihin line break, line break, line break, line break, at 831 00:38:45,380 --> 00:38:49,100 pagkatapos ay i-reload ang pahinang ito, na ngayon ay mapapansin mo na sa ilalim ng pahina ay, 832 00:38:49,100 --> 00:38:51,940 sa katunayan, magkano ang higit na malayo down sa sa ibaba ng pahina. 833 00:38:51,940 --> 00:38:55,840 Ngunit kahit na maaaring gawin marami pang iba nang malinis sa CSS, at may mga margin, 834 00:38:55,840 --> 00:38:58,120 at sa iba pang tulad Aesthetic diskarte. 835 00:38:58,120 --> 00:38:59,940 >> Kaya para sa ngayon, ang takeaways mga ito. 836 00:38:59,940 --> 00:39:02,320 Sa HTML, mayroon kaming mga mga bagay na tinatawag na mga tag. 837 00:39:02,320 --> 00:39:04,830 Sa CSS, mayroon kaming mga bagay na ito na tinatawag na mga katangian. 838 00:39:04,830 --> 00:39:08,700 Maaari naming comingle ang dalawang wika, alinman sa pamamagitan ng paggamit ng estilo katangian, 839 00:39:08,700 --> 00:39:14,240 o ang estilo ng tag, o pinakamahusay pa, factoring ito nang sama-sama, tulad ng ginagawa namin 840 00:39:14,240 --> 00:39:17,270 problema sa set 7. 841 00:39:17,270 --> 00:39:23,820 Tanong, pagkatapos, tungkol sa Mga pangunahing kaalaman sa haka-haka dito? 842 00:39:23,820 --> 00:39:24,740 >> Madla: Mayroon akong tanong. 843 00:39:24,740 --> 00:39:25,630 >> Tagapagsalita 1: Oh, paumanhin. 844 00:39:25,630 --> 00:39:28,880 >> Madla: Bakit noon ay hindi ito kulay - 845 00:39:28,880 --> 00:39:31,410 >> Tagapagsalita 1: Oh, sa iba pang mga tab? 846 00:39:31,410 --> 00:39:32,232 Ito dito? 847 00:39:32,232 --> 00:39:33,482 >> Madla: Hindi, ito ay tulad ng - 848 00:39:33,482 --> 00:39:35,330 849 00:39:35,330 --> 00:39:39,480 >> Tagapagsalita 1: Oh, na ay dahil Ako ay pagiging pabaya. 850 00:39:39,480 --> 00:39:41,350 Ko bang ilagay ang file sa maling lugar. 851 00:39:41,350 --> 00:39:47,840 Kaya kung ako talagang ilagay ito dito, at ako chmod ito, ang lahat ng + r para styles.css, at 852 00:39:47,840 --> 00:39:52,050 ngayon i-reload ang pahina, na namin ngayon makuha ang estilisasyon pabalik. 853 00:39:52,050 --> 00:39:54,530 At dahil ang laki ng font ay iba, hindi namin makita pa ng mas maraming 854 00:39:54,530 --> 00:39:55,010 white space. 855 00:39:55,010 --> 00:39:58,240 Sa halip namin makita kung ano ang mga default ay sa halip. 856 00:39:58,240 --> 00:40:00,050 Magandang katanungan. 857 00:40:00,050 --> 00:40:00,846 Oo? 858 00:40:00,846 --> 00:40:02,630 >> Madla: Bakit link ang tag sa loob ng header? 859 00:40:02,630 --> 00:40:06,270 >> Tagapagsalita 1: Bakit ang mga link tag sa loob ng header - 860 00:40:06,270 --> 00:40:07,650 maikling sagot, dahil lamang. 861 00:40:07,650 --> 00:40:08,930 Iyon ay kung ano ang nagpasya. 862 00:40:08,930 --> 00:40:10,720 Iyon ay kung saan ang mga tag ng link kapag pumunta mayroon kang kung ano ang tinatawag na isang 863 00:40:10,720 --> 00:40:13,650 external style sheet. 864 00:40:13,650 --> 00:40:16,430 Iba pang mga tanong? 865 00:40:16,430 --> 00:40:17,770 >> Ang lahat ng mga karapatan, na rin natin gawin ito. 866 00:40:17,770 --> 00:40:20,500 Mayroon kaming kaya magkano masaya nangunguna sa amin ngayon. 867 00:40:20,500 --> 00:40:22,480 Na lamang scratching ang ibabaw ng CSS. 868 00:40:22,480 --> 00:40:23,010 Natin gawin ito. 869 00:40:23,010 --> 00:40:25,980 Tingnan natin ang isang limang minutong break na dito dahil, per ang aking email, sabihin sa hang 870 00:40:25,980 --> 00:40:27,200 doon hanggang 2:30-ish ngayon. 871 00:40:27,200 --> 00:40:28,540 Ngunit kung mayroon kang mag- umalis, na fine. 872 00:40:28,540 --> 00:40:30,380 Ngunit kailangan naming sumulong pagkatapos isang limang minutong break na ito. 873 00:40:30,380 --> 00:40:35,930 At kami na malaman ang kaunti ng isang bagay tungkol sa PHP, MySQL, at higit pa. 874 00:40:35,930 --> 00:40:44,520 >> Ang lahat ng mga karapatan, kaya natin subukan, ngayon, upang itali ang isang ilan sa mga ideya na ito sama-sama at gumawa, 875 00:40:44,520 --> 00:40:46,180 sabihin, ang aming sariling mga search engine. 876 00:40:46,180 --> 00:40:48,570 Napansin ko, sa halip pausisa, ang mga sumusunod na. 877 00:40:48,570 --> 00:40:52,610 Kapag ikaw ay sa Google.com, ikaw ay Karaniwang sa isang URL tulad ng isang ito dito 878 00:40:52,610 --> 00:40:54,870 may walang anuman pagkatapos ng dot com. 879 00:40:54,870 --> 00:40:59,760 Ngunit kung ako maghahanap ng isang bagay tulad ng bobo pusa, at pindutin ang Enter, aasikasuhin namin - hindi 880 00:40:59,760 --> 00:41:01,300 ugok, ngunit alam mo. 881 00:41:01,300 --> 00:41:05,410 >> OK, kaya mapapansin, sa tuktok ng pahina, ngayon, ang URL ay, siyempre, ay nagbago. 882 00:41:05,410 --> 00:41:07,190 At hindi ito ang anumang bagay bago sa anuman sa amin. 883 00:41:07,190 --> 00:41:09,290 Ikaw ay i-click ang link at mga bagay-bagay ang mangyayari sa web. 884 00:41:09,290 --> 00:41:11,420 Ngunit kung ano ang kawili-wiling dito ay ang sumusunod. 885 00:41:11,420 --> 00:41:14,500 Mayroong isang buong maraming kalat, ngunit hayaan ihagis sa akin ang layo ng mga bagay-bagay na gagawin ko hindi 886 00:41:14,500 --> 00:41:16,600 lubos na maintindihan o hindi talaga tumingin may-katuturan. 887 00:41:16,600 --> 00:41:18,490 >> Hayaan akong makakuha mapupuksa ito. 888 00:41:18,490 --> 00:41:20,030 Hayaan akong makakuha mapupuksa ito. 889 00:41:20,030 --> 00:41:22,630 At ipaalam sa akin lamang mapupuksa ng lahat ng ito. 890 00:41:22,630 --> 00:41:28,840 At ngayon, mapapansin na ang pusa ay sa URL, sinundan na may isang q, pagkatapos ng patas 891 00:41:28,840 --> 00:41:29,710 mag-sign sa unahan nito. 892 00:41:29,710 --> 00:41:32,110 Kaya ito lumiliko out na ito ay kung paano ang paraan ito gumagana pagdating 893 00:41:32,110 --> 00:41:33,360 sa input at output. 894 00:41:33,360 --> 00:41:37,510 >> Matagal na namin ang uusapang tungkol sa itim na kahon, i-right? 895 00:41:37,510 --> 00:41:41,650 Kaya kung ito ay isang function na ipinatupad dito bilang isang itim na kahon, ito ay tumatagal ng pag-input 896 00:41:41,650 --> 00:41:45,290 at naglalabas ng output, mahusay, ang ibig sabihin nito sa pamamagitan ng na nagbibigay sa iyo ng pag-input sa isang 897 00:41:45,290 --> 00:41:49,270 website ay sa pamamagitan ng paraan, madalas, ng mga URL nito. 898 00:41:49,270 --> 00:41:52,850 Ikaw maglagay lamang ng isang tandang pananong at pagkatapos ay isang key ay katumbas ng halaga. 899 00:41:52,850 --> 00:41:56,740 At pagkatapos ay marahil isang ampersand, at pagkatapos ay key ng isa pang katumbas ng halaga, pagkatapos ay marahil 900 00:41:56,740 --> 00:41:58,810 ampersand isa pa, key ay katumbas ng halaga. 901 00:41:58,810 --> 00:42:03,030 Iyon ay kung paano pumasa ka sa mga key at mga value, mga pares ng input. 902 00:42:03,030 --> 00:42:07,050 >> Kaya kung ako pindutin ang Enter ngayon, kung ano ang kagiliw-giliw na tungkol sa Google ay na ang lahat 903 00:42:07,050 --> 00:42:10,420 kalat ng mga basura na tinanggal ko ay hindi lumitaw upang maging mahigpit na kinakailangan. 904 00:42:10,420 --> 00:42:15,120 Ang kailangan kong magpadala sa Google ay pinag-uusapan mark q ay katumbas ng cats upang makakuha 905 00:42:15,120 --> 00:42:16,160 i-back ang ilang mga pusa. 906 00:42:16,160 --> 00:42:20,160 Well, ang mga implikasyon ng mga iyon, pagkatapos, ay kung hilahin ako up gedit, ko na nagsimula 907 00:42:20,160 --> 00:42:24,360 paggawa ng aking sariling search engine dito sa isang file na tinatawag na seach0.html. 908 00:42:24,360 --> 00:42:26,750 >> At ipaalam sa akin sige at tanggalin isa pang linya na iyong 909 00:42:26,750 --> 00:42:27,910 ay hindi dapat makita. 910 00:42:27,910 --> 00:42:31,070 At ngayon, hayaan mo akong pumunta sa aking sariling browser, kaya hindi sa Google, at pumunta sa 911 00:42:31,070 --> 00:42:34,900 http://localhost. 912 00:42:34,900 --> 00:42:36,220 At na ang nangyayari upang makakuha ng sa paraan. 913 00:42:36,220 --> 00:42:43,240 Kaya kami ay pagpunta sa may upang magpaalam sa na sa ngayon, ilipat ito sa paglipas dito, 914 00:42:43,240 --> 00:42:46,270 oh, ngayon kami ay pagpunta sa may upang magpaalam sa file na iyon. 915 00:42:46,270 --> 00:42:51,700 >> Sa tuwing mayroon ka ng isang file na tinatawag na index.html o index.php sa isang 916 00:42:51,700 --> 00:42:54,980 direktoryo, kung ang mga web server ay isinaayos sa paraang ito, kung ano ang idi-mo 917 00:42:54,980 --> 00:42:59,600 makita, sa pamamagitan ng default, ang mga nilalaman ng na file sa halip na sa isang listahan ng mga 918 00:42:59,600 --> 00:43:02,330 direktoryo, pati na Nais kong dito. 919 00:43:02,330 --> 00:43:03,750 Higit pa sa mga ito sa spec. 920 00:43:03,750 --> 00:43:04,610 Hindi mo makita na. 921 00:43:04,610 --> 00:43:06,360 >> Kaya ito ay kung ano ang ko talagang gusto. 922 00:43:06,360 --> 00:43:08,810 Ngunit ng ilang sandali ang nakalipas, nagkaroon ng file sa folder na tinatawag na 923 00:43:08,810 --> 00:43:11,290 index.html at index.php. 924 00:43:11,290 --> 00:43:13,380 At sa gayon ang web server ay pagpapakita sa akin mga file na iyon. 925 00:43:13,380 --> 00:43:15,900 Sa halip, gusto kong direktoryong ito naglilista dito. 926 00:43:15,900 --> 00:43:18,340 >> Kaya pupuntahan ko pumunta sa CSS at pumunta sa search0. 927 00:43:18,340 --> 00:43:21,770 At inaangkin ko na ito ay ito pagpunta sa maging simula ng aking sariling mapagkumpitensya 928 00:43:21,770 --> 00:43:22,490 maghanap engine. 929 00:43:22,490 --> 00:43:27,630 At upang gawin ito, pupuntahan ko pumunta sa dito, sa CSS, at buksan up sa 930 00:43:27,630 --> 00:43:30,190 gedit, 0 paghahanap. 931 00:43:30,190 --> 00:43:32,280 Ngunit sa kasamaang-palad, mayroong hindi magkano ang pagpunta sa dito. 932 00:43:32,280 --> 00:43:35,690 Ang lahat ng ginawa ko ay gumamit ng isang heading na tag, na kung saan ang mangyayari sa tawagin h1, na 933 00:43:35,690 --> 00:43:38,180 mahalagang ay nangangahulugan na malaki at bold, at na ito. 934 00:43:38,180 --> 00:43:40,810 Ngunit ang mga paraan kung kaya namin magbigay ng input ay sa pamamagitan ng mga 935 00:43:40,810 --> 00:43:42,180 mga bagay na tinatawag na mga form. 936 00:43:42,180 --> 00:43:46,040 >> Kaya ipaalam sa akin sige at buksan at isara, preemptively, isang form tag doon. 937 00:43:46,040 --> 00:43:48,060 At ipaalam sa akin sige at gawin isang bagay na katulad nito. 938 00:43:48,060 --> 00:43:51,430 Input, uri ay katumbas ng teksto. 939 00:43:51,430 --> 00:43:56,320 At pagkatapos ay sabihin isara ang tag sa loob ng ang bracket kanilang mga sarili. 940 00:43:56,320 --> 00:43:58,800 Hindi ko na kailangang magsimula ng isang patlang ng teksto at tumigil sa isang patlang ng teksto. 941 00:43:58,800 --> 00:44:01,080 Lamang Ito ay pagpunta sa maging doon o hindi. 942 00:44:01,080 --> 00:44:06,210 >> At pagkatapos ay sa ibaba na, sabihin gawin input uri ay katumbas ng isumite. 943 00:44:06,210 --> 00:44:06,870 I-save ito. 944 00:44:06,870 --> 00:44:08,630 At ngayon sabihin lamang gawin ng mabilis na suriin ang kaliwanagan ng isip. 945 00:44:08,630 --> 00:44:09,820 Sabihin reload. 946 00:44:09,820 --> 00:44:10,890 >> OK, kaya hindi masama. 947 00:44:10,890 --> 00:44:13,260 Ito ay hindi ng Google style, subalit ito ay malapit sa katangian. 948 00:44:13,260 --> 00:44:13,920 Mayroong isang patlang ng teksto. 949 00:44:13,920 --> 00:44:17,190 Maaari ko bang i-type ang ilang mga bagay-bagay sa, pindutin ang Enter, ngunit wala ang mangyayari pa. 950 00:44:17,190 --> 00:44:21,090 At iyon ay dahil hindi ko pa tinukoy ng isang aksyon para sa form na ito, kaya na magsalita. 951 00:44:21,090 --> 00:44:23,860 Kaya kung pumunta ako pabalik sa elemento form, ito lumiliko out, at alam ko ito lamang 952 00:44:23,860 --> 00:44:27,460 mula sa pagkakaroon ng basahin ang dokumentasyon, na ang form na tag na tumatagal ng isang attribute 953 00:44:27,460 --> 00:44:31,880 tinatawag na pagkilos na ang URL ng mga website na kung saan mo 954 00:44:31,880 --> 00:44:34,790 nais na magpadala sa form. 955 00:44:34,790 --> 00:44:37,610 >> Hindi ko talaga tingin mayroon kaming oras upang ipatupad ang buong end bumalik para sa isang 956 00:44:37,610 --> 00:44:38,570 maghanap engine ngayon. 957 00:44:38,570 --> 00:44:41,900 Kaya lang kami ng pagpunta sa sabihin, eh, pumunta sa google.com / search. 958 00:44:41,900 --> 00:44:43,450 At ngayon hayaan mo akong isara ang aking mga quote. 959 00:44:43,450 --> 00:44:46,070 At ipaalam sa akin sa karagdagang tukuyin na ang pamamaraan upang gamitin ay pagpunta 960 00:44:46,070 --> 00:44:47,120 na tinatawag na makukuha. 961 00:44:47,120 --> 00:44:50,650 >> Long kuwento maikli, mayroong dalawang mga paraan, sa hindi bababa sa, na maaari mong isumite ang impormasyon 962 00:44:50,650 --> 00:44:51,880 mula sa browser sa server. 963 00:44:51,880 --> 00:44:55,340 Ang isa ay makakakuha ng, at, para sa mga layunin ngayong araw, na nangangahulugan lamang sa URL. 964 00:44:55,340 --> 00:44:58,730 Ang makikita mo ang eksaktong mga markang pinag-uusapan, ang ay katumbas ng mga karatula, at ampersand na 965 00:44:58,730 --> 00:44:59,780 nakita natin mas maaga. 966 00:44:59,780 --> 00:45:02,890 O kaya mayroong isang alternatibong tinatawag na post. 967 00:45:02,890 --> 00:45:06,490 Para sa ngayon, alam na post ay madalas na ginagamit kapag gusto mong mag-upload ng mga file, tulad ng 968 00:45:06,490 --> 00:45:09,820 mga imahe at iba pa, o kung nais mong isumite ang impormasyon ng credit card, o 969 00:45:09,820 --> 00:45:13,810 mga password, ang anumang bagay na hindi talagang magkaroon ng kahulugan, conceptually, o 970 00:45:13,810 --> 00:45:18,020 seguridad matalino, sa mga end up sa URL ng ang iyong browser, kung saan snooping mga magulang, 971 00:45:18,020 --> 00:45:21,520 o kasamahan sa silid, o sinuman na may access sa iyong computer ay maaari makita. 972 00:45:21,520 --> 00:45:23,110 >> Kaya sabihin na i-save dito. 973 00:45:23,110 --> 00:45:24,480 At kailangan kong gawin ang isa sa iba pang mga bagay. 974 00:45:24,480 --> 00:45:27,250 Hindi nito magkasiya lamang sa sabihin ninyo ako ng text field. 975 00:45:27,250 --> 00:45:29,850 Mayroon akong upang bigyan ang patlang na iyon ni Pinahahalagahan ng isang pangalan. 976 00:45:29,850 --> 00:45:34,500 Kaya hayaan mo akong humiram ng Google pagpili ng mga pangalan, q, at tukuyin na ang ikalawang 977 00:45:34,500 --> 00:45:38,150 ipatungkol hindi ko talagang nagmamalasakit tungkol sa ang pangalan ng pindutan ng Isumite. 978 00:45:38,150 --> 00:45:40,890 Ang lahat ng mga pinapahalagahan ko ay tungkol sa pagsusumite ano user ang mga uri in 979 00:45:40,890 --> 00:45:41,940 >> At ngayon ito ay uri ng pangit. 980 00:45:41,940 --> 00:45:42,820 Ito lang sabi isumite. 981 00:45:42,820 --> 00:45:46,350 Ito ay lumiliko out, at alam ko ito mula sa dokumentasyon, maaari ko talagang sabihin 982 00:45:46,350 --> 00:45:51,710 ay katumbas ng halaga quote magpanipi "cs50 seach, "malapit na quote. 983 00:45:51,710 --> 00:45:53,030 Pagkatapos sabihin i-reload muli. 984 00:45:53,030 --> 00:45:57,020 Kaya ko bang panatilihin ang pagpindot Command-R, o Control-R sa aking keyboard upang i-reload. 985 00:45:57,020 --> 00:45:58,605 >> Ngayon kami ay may isang mas kawili-wiling maghanap engine. 986 00:45:58,605 --> 00:46:00,340 Mukhang hindi ito hitsura Google pa, bagaman. 987 00:46:00,340 --> 00:46:04,100 Kaya sabihin sige in dito at gawin ang isang maliit na break sa linya. 988 00:46:04,100 --> 00:46:06,066 >> OK, kaya ngayon kami mayroon Google. 989 00:46:06,066 --> 00:46:08,260 Kami talaga halos kailangang Google. 990 00:46:08,260 --> 00:46:10,460 Kaya ngayon kung ano ang pagpunta sa mangyayari? 991 00:46:10,460 --> 00:46:12,220 Pupunta ako mag-type ng isang bagay parang pusa. 992 00:46:12,220 --> 00:46:16,570 At browser ay pagpunta upang i-parse form na iyon na aking tinukoy. 993 00:46:16,570 --> 00:46:19,470 At ito ay pagpunta upang magpadala ng ang gumagamit sa URL na iyon. 994 00:46:19,470 --> 00:46:23,420 Kaya oras na ito, para sa ilang mga kataka-taka dahilan, Nakatanggap ako sa higit pang impormasyon tungkol sa mga stock 995 00:46:23,420 --> 00:46:24,410 kaysa tungkol sa aktwal na pusa. 996 00:46:24,410 --> 00:46:30,580 Ngunit iyon lamang ang fine dahil napansin pa rin namin napunta dito, q ay katumbas ng pusa. 997 00:46:30,580 --> 00:46:35,200 >> Kaya mahaba kuwento maikli, tila walang kinikilingan walang halaga upang makakuha ng input mula sa user. 998 00:46:35,200 --> 00:46:38,190 At upang maging patas, mayroong bunches ng iba pang mga uri ng mga patlang ng form. 999 00:46:38,190 --> 00:46:41,510 Mayroong check box, at maliit kapwa eksklusibong radio button, at 1000 00:46:41,510 --> 00:46:42,960 drop down menu, at higit pa. 1001 00:46:42,960 --> 00:46:46,160 Ngunit lahat ng iyon ay ang mga relatibong madaling ipinatupad bilang 1002 00:46:46,160 --> 00:46:48,040 ang tekstong ito ay field. 1003 00:46:48,040 --> 00:46:52,050 At sa huli, kami na lang ay upang gawing sigurado may isang taong nakikinig sa kabilang 1004 00:46:52,050 --> 00:46:56,490 magtapos ng linya upang makakuha ng na impormasyon naproseso, kahit papaano, at 1005 00:46:56,490 --> 00:46:58,440 bigyan kami pabalik sa aming mga cats. 1006 00:46:58,440 --> 00:47:00,840 >> Tingnan natin ang isang bahagyang mas kasangkot halimbawa. 1007 00:47:00,840 --> 00:47:06,020 Hayaan akong pumunta sa direktoryo ng aking Vhost ni, sa mga lokal na host, pampublikong, at kung saan ako 1008 00:47:06,020 --> 00:47:06,980 ilagay source code ngayon. 1009 00:47:06,980 --> 00:47:09,800 Ang lahat ng ito ay nasa kurso ng website para sa iyo na may manghihinang. 1010 00:47:09,800 --> 00:47:15,420 At kung pumunta ako sa froshims, hayaan mo akong magbukas up ang file na ito ngayon, froshim0.php. 1011 00:47:15,420 --> 00:47:18,460 Isa na ito ay isang kaunti pa masyadong masalita, upang hindi namin isulat ito mula sa simula. 1012 00:47:18,460 --> 00:47:21,970 Ngunit lamang mapansin ngayon ng ilang medyo pamilyar na mga katangian. 1013 00:47:21,970 --> 00:47:24,550 >> One, form na tag, iba't ibang mga aksyon. 1014 00:47:24,550 --> 00:47:25,670 Ito ay hindi isang buong URL. 1015 00:47:25,670 --> 00:47:29,930 Ngayon, ito ay tila mag-file na tinatawag na register0.php dahil, sa isang sandali, 1016 00:47:29,930 --> 00:47:32,660 Pupunta ako sa sarili ko magturo ng kaunti isang bagay tungkol sa PHP, isang programming 1017 00:47:32,660 --> 00:47:37,360 wika, dahil PHP ay maaaring gamitin upang ipatupad kung ano Google ipinatupad bilang 1018 00:47:37,360 --> 00:47:39,650 sa likod ng pagtatapos ng kanilang mga search engine. 1019 00:47:39,650 --> 00:47:42,890 >> Google, sa katotohanan, marahil ay gumagamit ng ilang Python, ang ilang mga C + +, at 1020 00:47:42,890 --> 00:47:44,230 bunches ng iba pang mga wika. 1021 00:47:44,230 --> 00:47:48,230 Ngunit kami ay tiyak na ipatupad ang paghahanap mga resulta gamit ang PHP kung gusto namin. 1022 00:47:48,230 --> 00:47:49,610 Ngunit para sa ngayon, itinatago namin ito simple. 1023 00:47:49,610 --> 00:47:53,320 At ito ay talagang nakapagpapagunita ng isa ng iba pang mga pinakaunang website ko 1024 00:47:53,320 --> 00:47:54,490 ginawa taon na ang nakakaraan. 1025 00:47:54,490 --> 00:47:58,160 >> Bumalik sa aking araw, na inirehistro mo para sa nasa loob ng lunsod sports bilang isang primer anyo sa pamamagitan ng 1026 00:47:58,160 --> 00:48:00,880 pagpuno ng isang piraso ng papel, paglalakad sa kabuuan ng bakuran, at pag-drop ito sa 1027 00:48:00,880 --> 00:48:04,890 sa mailbox ng isang Proctor sa Wigglesworth, at iyon ay kung paano mo 1028 00:48:04,890 --> 00:48:05,460 nakarehistro. 1029 00:48:05,460 --> 00:48:09,650 At gayon ang aking mga proyekto sa ilang sandali matapos CS50, ay upang ilagay na, na ginagawang perpekto 1030 00:48:09,650 --> 00:48:13,460 kahulugan, papunta sa web, na kung saan ay hindi bilang sa katanyagan pagkatapos ng ito ay ngayon. 1031 00:48:13,460 --> 00:48:17,510 Ngunit lahat nagkaroon kami gawin ay lumikha, mahalagang, isang HTML form. 1032 00:48:17,510 --> 00:48:19,640 >> At ang paraan na tumingin halos ganito. 1033 00:48:19,640 --> 00:48:22,480 Mayroon akong isang input para sa presman pangalan ni. 1034 00:48:22,480 --> 00:48:27,780 Mayroon akong isa pang check box para sa kung o o hindi ninais nilang maging kapitan, kung ano 1035 00:48:27,780 --> 00:48:30,400 ang kanilang kasarian ay, at kung ano ang kanilang dorm noon. 1036 00:48:30,400 --> 00:48:33,370 At pagkatapos ay ako hard code sa mga bagay tulad Apley Court, at Canaday, 1037 00:48:33,370 --> 00:48:34,880 Grays, at iba pa. 1038 00:48:34,880 --> 00:48:36,300 >> Kaya muli, bagong mga tag. 1039 00:48:36,300 --> 00:48:39,820 Hindi pa nakita ang mga bago, bagong mga katangian, ngunit medyo naa-access. 1040 00:48:39,820 --> 00:48:42,360 Sa sandaling makita ang isang halimbawa, maaari mong uri ng humiram na ideya at gumawa ng isang drop 1041 00:48:42,360 --> 00:48:43,820 down na menu para sa karamihan ng kahit ano. 1042 00:48:43,820 --> 00:48:46,350 Ngunit kung ano ang key ay ang bawat isa sa mga bagay na ito ay may mga pangalan. 1043 00:48:46,350 --> 00:48:49,720 At sa ibaba ng form na ito, mayroong isang isumite button na label, 1044 00:48:49,720 --> 00:48:51,510 o halaga, ay rehistro. 1045 00:48:51,510 --> 00:48:52,670 >> Kaya sabihin pumunta sa pahinang ito. 1046 00:48:52,670 --> 00:48:55,050 Hayaan akong bumalik sa direktoryo ng listahan. 1047 00:48:55,050 --> 00:48:59,410 Hayaan akong pumunta sa froshims, at pumunta sa froshim0.php. 1048 00:48:59,410 --> 00:49:01,150 Kaya ito ay kahindik-hindik, upang maging patas. 1049 00:49:01,150 --> 00:49:03,950 Kaya maaari kong siguradong stylize ito na may ilang CSS, maaari ba akong gumawa ng ilang mga 1050 00:49:03,950 --> 00:49:06,890 graphics, marahil magdagdag ng ilang mga kulay, at gumawa ng mga ito prettier. 1051 00:49:06,890 --> 00:49:10,530 Ngunit pagtakbo, Gusto ko magtaltalan na ito ay talagang kaakit-akit kumpleto. 1052 00:49:10,530 --> 00:49:15,190 >> Sa kasamaang palad, kapag punan ko ito out, David, Captain, Lalaki, pipiliin namin, 1053 00:49:15,190 --> 00:49:20,510 sabihin nating Matthews, Register, lahat na mangyayari ito. 1054 00:49:20,510 --> 00:49:21,910 Ngunit mapansin ang isang pares ng mga takeaways. 1055 00:49:21,910 --> 00:49:27,130 Ang isa, ano ang file ibinalik mga mga resulta, tila? 1056 00:49:27,130 --> 00:49:29,470 Kaya ito ay, sa katunayan, register0.php. 1057 00:49:29,470 --> 00:49:34,570 Kaya ang katotohanan na nakita natin na ang pagkilos halaga ng ilang sandali ang nakalipas para sa register0, ito 1058 00:49:34,570 --> 00:49:37,500 corroborates na namin talaga natapos hanggang sa na partikular na file. 1059 00:49:37,500 --> 00:49:39,040 >> Ngayon ito ay isa lamang pangit teksto. 1060 00:49:39,040 --> 00:49:42,810 Ngunit mapapansin na ang text na ito ay na nanggagaling sa mga lokal na host, 1061 00:49:42,810 --> 00:49:44,170 na kung saan ay mula sa appliance. 1062 00:49:44,170 --> 00:49:46,350 Isipin mo na ang appliance na ngayon bilang lamang isang web server na maaaring maging sa 1063 00:49:46,350 --> 00:49:46,910 Science Center. 1064 00:49:46,910 --> 00:49:48,060 Ito ay maaaring maging sa aktwal na web. 1065 00:49:48,060 --> 00:49:49,850 Kaya ito ay naa-access sa publiko. 1066 00:49:49,850 --> 00:49:55,480 >> Kaya malinaw, mayroong ilang mga paraan ng pagpasa bumuo ng input field sa isang server 1067 00:49:55,480 --> 00:49:56,840 gayon ay maaari itong gawin ng isang bagay sa kanila. 1068 00:49:56,840 --> 00:49:59,020 Sa kasamaang palad, register0 ay medyo bobo. 1069 00:49:59,020 --> 00:50:01,870 Ang lahat ng ginagawa nito ay i-print ang isang array na ganito ang hitsura. 1070 00:50:01,870 --> 00:50:04,790 At ito ay hindi isang array sa pakiramdam na alam namin ito. 1071 00:50:04,790 --> 00:50:08,760 Lumiliko out na PHP, at ng maraming mga wika, mayroon hindi lamang ayon sa bilang 1072 00:50:08,760 --> 00:50:12,350 array index na ang unang index ay zero, pagkatapos ay i-isa, pagkatapos ng dalawang, pagkatapos ay i-tuldok, 1073 00:50:12,350 --> 00:50:13,780 tuldok, tuldok, n minus 1. 1074 00:50:13,780 --> 00:50:16,400 >> Ito ay kung ano ang tinatawag na isang nag-uugnay array. 1075 00:50:16,400 --> 00:50:21,150 Ang isang nag-uugnay array ay isa kung saan Maaari kang mag-imbak key pares kung saan ang halaga 1076 00:50:21,150 --> 00:50:23,160 ang key ay hindi nangangahulugang ang isang numero. 1077 00:50:23,160 --> 00:50:25,580 Maaaring ito sa katotohanan na isang string, ng isang salita. 1078 00:50:25,580 --> 00:50:28,230 At kaya ito ay maaaring ipinatupad, sa ilalim ng hood, ito lumiliko out, 1079 00:50:28,230 --> 00:50:31,896 gamit ang isang data na istraktura na kilala bilang isang? 1080 00:50:31,896 --> 00:50:33,600 Naisip isang bagay dramatic noon ay tungkol sa mangyari - 1081 00:50:33,600 --> 00:50:34,840 hash table. 1082 00:50:34,840 --> 00:50:38,955 >> Kaya ng hash talahanayan, isipin ang, doon sa iyo sinong gumawa nito para sa P set 6, o kahit na isipin ang 1083 00:50:38,955 --> 00:50:44,110 ito, hindi bababa sa kahit na ginawa mo ang isang Subukan, isang hash talahanayan, sa aming paggamit, ay ginamit upang 1084 00:50:44,110 --> 00:50:45,090 lamang iimbak salita. 1085 00:50:45,090 --> 00:50:47,980 Ngunit talagang, ikaw ay pag-iimbak mga pindutan at halaga. 1086 00:50:47,980 --> 00:50:51,940 Kung ipinatupad ng hash talahanayan para sa P itakda 6 diksyonaryo, ang mga key ay ang 1087 00:50:51,940 --> 00:50:56,890 mga salita sa kanilang sarili, at ang mga halaga ay epektibo totoo o hindi. 1088 00:50:56,890 --> 00:51:00,190 Oo, dito, o nang kataon lamang, hindi, hindi dito. 1089 00:51:00,190 --> 00:51:02,140 >> Well, maaari kaming magbigay ng tuntuning panlahat na ideya. 1090 00:51:02,140 --> 00:51:06,230 At maaari kaming gumamit ng isang katulad na katulad ng data istraktura upang mag-imbak hindi ang string 1091 00:51:06,230 --> 00:51:10,180 mismong nag-iisa sa iyong hash talahanayan, ngunit ipagpalagay na sa bawat isa sa iyong mga hash 1092 00:51:10,180 --> 00:51:11,130 mga node talahanayan. 1093 00:51:11,130 --> 00:51:14,210 At maaari mong kahit na gawin ito sa isang Subukan sa halip na lamang magkaroon ng isang bool. 1094 00:51:14,210 --> 00:51:15,350 Maaari kang magkaroon ng ibang bagay. 1095 00:51:15,350 --> 00:51:19,590 Paano kung ang susi ay hindi makswel, para sa Halimbawa, ngunit quote magpanipi "pangalan," o 1096 00:51:19,590 --> 00:51:22,900 banggit magpanipi "kapitan." At sa loob ng C iyong data istraktura, kang maglagay ng 1097 00:51:22,900 --> 00:51:26,170 halaga, hindi lang isang Boolean, ngunit may halaga tulad ng quote magpanipi "David," o 1098 00:51:26,170 --> 00:51:28,690 "M," o "Matthews," at iba pa. 1099 00:51:28,690 --> 00:51:33,170 >> Kaya mga parehong mga istraktura ng data na ginamit namin tila umiiral sa iba pang mga wika. 1100 00:51:33,170 --> 00:51:37,650 At gusto ko magpakilala ang mga ito ay aktwal na magkano, magkano ang mas simple na i-access dito. 1101 00:51:37,650 --> 00:51:40,300 Sabihin sa katunayan kumuha ng isang hitsura ngayon sa ilan tulad syntax. 1102 00:51:40,300 --> 00:51:43,120 >> Pupunta ako upang pumunta sa isang direktoryo ng PHP. 1103 00:51:43,120 --> 00:51:48,390 At ako pagpunta sa buksan up ng isang mas mahusay na bersyon ng halo-0 mula sa bago. 1104 00:51:48,390 --> 00:51:50,270 Pansinin na ang lahat ng ginawa ko noon ay magdagdag ng ilang mga komento. 1105 00:51:50,270 --> 00:51:52,530 Kaya maaari naming mapupuksa ang na kaguluhan ng isip. 1106 00:51:52,530 --> 00:51:57,610 >> At ang programang ito ang katunayan ng mga Kopya kumusta dahil ko na tinukoy sa pagitan ng 1107 00:51:57,610 --> 00:52:01,420 mga tag na gusto kong i-execute ang code na iyon. 1108 00:52:01,420 --> 00:52:03,380 Ngayon, makikita namin makita sa isang sandali kung bakit ito ay kapaki-pakinabang. 1109 00:52:03,380 --> 00:52:05,630 Ngunit natin buksan isa iba pang mga halimbawa dito. 1110 00:52:05,630 --> 00:52:10,430 Hayaan akong sige at buksan up sinasabi, gedit ng mga kundisyon ng isa. 1111 00:52:10,430 --> 00:52:12,970 >> Ito ang paraan pabalik sa panahon ngayon. 1112 00:52:12,970 --> 00:52:16,320 Subalit linggo ang nakalipas, sa palagay ko, sa linggo ng isa o dalawang linggo, nagkaroon kami ng isang halimbawa na tinatawag na 1113 00:52:16,320 --> 00:52:18,470 conditions1.c. 1114 00:52:18,470 --> 00:52:22,050 At ako ay nagpasya na reimplement ito sa PHP, lamang sa uri ng bigyang-diin na 1115 00:52:22,050 --> 00:52:26,500 PHP, syntactically, ay halos magkapareho sa C. Hindi ito isang malaking hakbang 1116 00:52:26,500 --> 00:52:27,840 mula noong nakaraang linggo upang ito. 1117 00:52:27,840 --> 00:52:31,230 >> Pansinin sa tuktok ng programang ito, na ay nagsisimula, tulad ng dati, na may ilang mga 1118 00:52:31,230 --> 00:52:34,260 mga komento, na makikita ko mapupuksa ng bilang isang kaguluhan ng isip. 1119 00:52:34,260 --> 00:52:37,410 Pansinin na ako sa PHP mode sa file na ito. 1120 00:52:37,410 --> 00:52:40,160 Kaya ang code na ito, gagamitin namin makita, ay makapag-pinaandar. 1121 00:52:40,160 --> 00:52:42,670 Pansinin na mayroong readline, na kung saan ay marahil ang 1122 00:52:42,670 --> 00:52:46,230 analog sa PHP ng getstring. 1123 00:52:46,230 --> 00:52:47,390 Pansinin ito ay isang maliit na naiiba. 1124 00:52:47,390 --> 00:52:51,410 Ikaw talaga tukuyin ang isang prompt sa function na tinatawag na basahin linya, at iyon 1125 00:52:51,410 --> 00:52:52,180 kung ano ang nakikita ng gumagamit. 1126 00:52:52,180 --> 00:52:53,520 Kaya hindi mo na kailangang mag printf mano-mano. 1127 00:52:53,520 --> 00:52:54,860 Ngunit hindi iyon isang malaking deal. 1128 00:52:54,860 --> 00:52:59,150 Pupunta ako sa store, sa loob ng $ n, ang bumalik halaga ng mga ito, kaya anuman ang 1129 00:52:59,150 --> 00:53:00,490 mga uri ng user ay sa kanilang mga int. 1130 00:53:00,490 --> 00:53:01,660 At narito ang isa pang pag-usisa. 1131 00:53:01,660 --> 00:53:05,810 Ito ay lumiliko out, sa PHP, anumang mga variable May lamang na prefix 1132 00:53:05,810 --> 00:53:06,970 may dollar sign. 1133 00:53:06,970 --> 00:53:08,110 Ito ay isang maliit na nakakainis. 1134 00:53:08,110 --> 00:53:10,870 Ngunit mapansin kung ano Hindi ko pa tapos sa PHP. 1135 00:53:10,870 --> 00:53:13,980 Ano ang nawawala mula sa kaliwang kamay gilid ng equals sign? 1136 00:53:13,980 --> 00:53:15,430 >> Walang pagbanggit ng uri. 1137 00:53:15,430 --> 00:53:19,400 Kaya ito ay naiiba mula sa C. Para sa mas mahusay o para sa mas masahol pa, PHP ay isang maluwag 1138 00:53:19,400 --> 00:53:20,550 type na wika. 1139 00:53:20,550 --> 00:53:22,010 Ginagawa nito ay may mga numero. 1140 00:53:22,010 --> 00:53:23,240 Ginagawa may string. 1141 00:53:23,240 --> 00:53:24,015 Ginagawa mayroon Booleans. 1142 00:53:24,015 --> 00:53:26,220 At ginagawa nito ay may ilang iba pang mga uri ng data. 1143 00:53:26,220 --> 00:53:30,570 Pero sa iyo, ang programmer, karaniwang walang pakialam sa tungkol sa mga ito. 1144 00:53:30,570 --> 00:53:34,010 Ang bentahe ng ito ay na ito ay ginagawang ito ng kaunti mas madali sa programa. 1145 00:53:34,010 --> 00:53:35,380 Maaari mong isipin ang isang maliit na mas mababa. 1146 00:53:35,380 --> 00:53:39,840 Ang downside ay ito rin ay bubukas ka ng hanggang sa potensyal na mga bug kung hindi mo sinasadyang 1147 00:53:39,840 --> 00:53:43,080 ituturing ng isang numero bilang isang string, isang string bilang isang numero, potensyal na, ngunit kahit 1148 00:53:43,080 --> 00:53:46,150 pagkatapos, PHP, at ng maraming mga wika, ay medyo mapagparaya. 1149 00:53:46,150 --> 00:53:49,050 Sila ay gamitin kung ano ang tinatawag na implicit paghahagis. 1150 00:53:49,050 --> 00:53:55,220 At kung susubukan mong gamitin n sa konteksto ng isang numeric sitwasyon, kalooban ito 1151 00:53:55,220 --> 00:53:58,040 convert ano dito ay magiging isang string, dahil kung gumagamit ang mga uri 1152 00:53:58,040 --> 00:54:01,570 isang bagay sa, at makuha mo ang mga resulta, bilang may readline, o kumuha ng string, 1153 00:54:01,570 --> 00:54:02,910 na ang nangyayari upang bumalik ng isang string. 1154 00:54:02,910 --> 00:54:07,360 >> Ngunit paunawa, ng ilang mga linya sa ibang pagkakataon, ako suriin kung n ay mas mataas sa zero. 1155 00:54:07,360 --> 00:54:13,370 Kaya PHP ay pagpunta nang kataon lamang palayasin ang aking "String" 123, o anumang mga gumagamit 1156 00:54:13,370 --> 00:54:14,860 sa mga uri, sa isang int. 1157 00:54:14,860 --> 00:54:18,730 Kaya sa maikling, mga bagay-bagay ay gumagana lamang ng maraming higit pang intuitively. 1158 00:54:18,730 --> 00:54:23,410 Kaya ngayon namin simulan upang mamahinga ang ilang sa mga mga bagay na ginawa namin sa nakaraan. 1159 00:54:23,410 --> 00:54:24,780 >> Ang isang pulutong ng mga bagay-bagay na ito ay ang parehong, bagaman. 1160 00:54:24,780 --> 00:54:26,340 Hindi pa rin katumbas ng katumbas. 1161 00:54:26,340 --> 00:54:30,350 Bilang isang bukod PHP din ay katumbas ng katumbas katumbas, ngunit higit pa sa na, marahil, sa 1162 00:54:30,350 --> 00:54:30,850 sa hinaharap. 1163 00:54:30,850 --> 00:54:31,150 Iyon ay isang. 1164 00:54:31,150 --> 00:54:35,660 Typo ngunit katumbas ng dalawang palatandaan ay nangangahulugan na ang parehong bagay na tulad ng dati, para sa paghahambing. 1165 00:54:35,660 --> 00:54:37,060 printf ibig sabihin ang parehong bagay tulad ng dati. 1166 00:54:37,060 --> 00:54:39,160 Backslash n Nangangahulugan ang parehong bagay na tulad ng dati. 1167 00:54:39,160 --> 00:54:40,390 >> Kaya paano ko patakbuhin ang program na ito? 1168 00:54:40,390 --> 00:54:44,400 Well, tulad ng dati, kung gagawin ko PHP, conditions1.php, at uri sa 1169 00:54:44,400 --> 00:54:46,560 isang numero tulad ng 123. 1170 00:54:46,560 --> 00:54:47,720 Iyan ay isang positibong numero. 1171 00:54:47,720 --> 00:54:49,510 Kung type ko sa 0, pumili ako 0. 1172 00:54:49,510 --> 00:54:53,700 At kung ako mag-type sa mga negatibong 123, nakukuha ko i-back isang negatibong numero, na kung saan ay lamang 1173 00:54:53,700 --> 00:54:59,050 sasabihin, syntactically, PHP ay sobrang, sobrang pareho. 1174 00:54:59,050 --> 00:55:03,250 >> Kaya bakit ito ay kapaki-pakinabang ngayon sa isang web konteksto? 1175 00:55:03,250 --> 00:55:06,710 Well, sabihin bumalik sa ito froshims Halimbawa, kung saan ay tumingin, 1176 00:55:06,710 --> 00:55:08,600 muli, tulad ng ito dito. 1177 00:55:08,600 --> 00:55:11,580 At sabihin na aktwal na makuha ang mga web page muli, na mukhang ito. 1178 00:55:11,580 --> 00:55:14,930 Ano ang maaari naming gawin sa mga data na naisumite? 1179 00:55:14,930 --> 00:55:18,770 >> Well, hayaan mo akong buksan up ng isang mas bagong na bersyon ng mga ito. 1180 00:55:18,770 --> 00:55:20,920 At makikita mo na ang problema set pagtutukoy ay nagtuturo sa iyo 1181 00:55:20,920 --> 00:55:22,850 sa pamamagitan ng ilang sa mga ito. 1182 00:55:22,850 --> 00:55:29,610 Sa halip na magsimula sa zero, tingnan natin ang froshims3, 1183 00:55:29,610 --> 00:55:31,410 na ang ibig ng kaunti pa. 1184 00:55:31,410 --> 00:55:34,780 >> Pansinin una, talaga, sabihin buksan up 0 kung ano noon, kaya mo makita 1185 00:55:34,780 --> 00:55:37,170 ano rehistro ay 0. 1186 00:55:37,170 --> 00:55:40,040 Pansinin kung ano rehistro 0 ginawa. 1187 00:55:40,040 --> 00:55:41,730 Ang isa, mayroon akong mga komento sa itaas. 1188 00:55:41,730 --> 00:55:43,900 Tanggalin ang mga at tumutok lamang sa mga ito. 1189 00:55:43,900 --> 00:55:48,730 Karamihan sa mga nilalaman ng register0.php ay, malinaw naman, anong wika? 1190 00:55:48,730 --> 00:55:49,980 Lang raw PHP. 1191 00:55:49,980 --> 00:55:53,430 >> Kaya notice, ang file na ito ay hindi magsisimula sa, sa sandaling ito, open bracket, 1192 00:55:53,430 --> 00:55:54,970 tandang pananong, PHP. 1193 00:55:54,970 --> 00:55:59,800 PHP ang daan sa iyo upang makihalubilo PHP code gamit ang mga tag na HTML. 1194 00:55:59,800 --> 00:56:04,130 Ngunit ko na tapos na dito sa loob ng pahina sa paglipas dito. 1195 00:56:04,130 --> 00:56:08,180 >> Ngayon, muli, gusto mo lamang malaman na ito mula sa nagki-Tiningnan ang manu-manong. print_r, 1196 00:56:08,180 --> 00:56:13,410 ito lumiliko out, ay print_recursive. _recursive At ito ay lamang ng isang madaling-magamit na 1197 00:56:13,410 --> 00:56:16,780 utility function na lamang ng mga Kopya out, recursively, kahit anong ibigay mo ito. 1198 00:56:16,780 --> 00:56:18,760 Kung ipasa ito sa isang array, Makikita ito i-print ang isang array. 1199 00:56:18,760 --> 00:56:20,180 Kung ipasa ito ng isang numero, Makikita ito i-print ang isang numero. 1200 00:56:20,180 --> 00:56:21,570 Ipasa ito isang string, bibigyan ito mag-print ng isang string. 1201 00:56:21,570 --> 00:56:24,500 Kung ipasa ito ng hash talahanayan, ito ay i-print out ng hash table. 1202 00:56:24,500 --> 00:56:26,730 Hindi mo na kailangang isulat lahat ng na ang code sa iyong sarili. 1203 00:56:26,730 --> 00:56:29,490 >> Ngayon mapansin na ako ng pagpasok PHP mode sa paglipas dito. 1204 00:56:29,490 --> 00:56:32,070 Ako paglabas PHP mode sa paglipas dito. 1205 00:56:32,070 --> 00:56:35,950 Kaya kapag ang mga web server bumabasa ang file na ito itaas hanggang sa ibaba, kaliwa hanggang kanang, dahil 1206 00:56:35,950 --> 00:56:40,750 ito ay nagtatapos sa isang filename na tinatawag. php, ang kahit anong hindi sa loob ng PHP tag ay 1207 00:56:40,750 --> 00:56:42,820 lamang ang pagpunta sa maging laway out, tulad ng hilaw na HTML. 1208 00:56:42,820 --> 00:56:43,630 Walang malaking deal. 1209 00:56:43,630 --> 00:56:49,280 Ngunit sa lalong madaling ang web server paunawa ito, ito ay pagpunta sa sabihin, hindi ko dapat 1210 00:56:49,280 --> 00:56:51,850 sabihin ang lahat, literal, print_r ng post. 1211 00:56:51,850 --> 00:56:54,910 Ang dapat kong gawin ang sumusunod linya ng code. 1212 00:56:54,910 --> 00:56:59,850 >> Kaya ang huling tanong, pagkatapos, ng file na ito ay, well, ano ano ba ang mga ito? 1213 00:56:59,850 --> 00:57:00,530 Kumuha ng isang hula. 1214 00:57:00,530 --> 00:57:04,230 Ano ang $ _POST, marahil? 1215 00:57:04,230 --> 00:57:07,070 >> Madla: [hindi marinig] 1216 00:57:07,070 --> 00:57:08,830 >> Tagapagsalita 1: Oo, ang data na nai-post. 1217 00:57:08,830 --> 00:57:11,350 Pagkuhang muli, sabihin scroll pabalik sa oras para lamang ng ilang sandali. 1218 00:57:11,350 --> 00:57:13,165 froshim0, muli, mukhang ito. 1219 00:57:13,165 --> 00:57:15,640 Isang sobrang karamihan ng mga ito lamang ang HTML. 1220 00:57:15,640 --> 00:57:18,410 Muli, ang ilang mga tag mayroon kang hindi nakita pa, o kung saan 1221 00:57:18,410 --> 00:57:19,360 ikaw ay pamilyar. 1222 00:57:19,360 --> 00:57:21,990 Ngunit ang mga kagiliw-giliw na bagay ay na ito. 1223 00:57:21,990 --> 00:57:27,270 Ang isang linya ay kung ano ang talagang mga link ito sa aming register0.php file. 1224 00:57:27,270 --> 00:57:29,200 Ako pagsusumite sa pamamagitan ng paraan ng post. 1225 00:57:29,200 --> 00:57:33,130 At na nangangahulugan na ang mga parameter ang mga uri ng user sa mga hindi 1226 00:57:33,130 --> 00:57:35,150 pagpunta sa mga end up kung saan. 1227 00:57:35,150 --> 00:57:36,175 >> Hindi nila ka ng pagpunta sa lalabas sa URL. 1228 00:57:36,175 --> 00:57:39,020 Pa rin ang mga ito ay pagpunta sa ipapadala mula sa client, mula sa browser, upang ang 1229 00:57:39,020 --> 00:57:42,080 server, ngunit lamang sa pamamagitan ng ilang mga iba pang mekanismo na kami ay mag-urong ang aming mga kamay 1230 00:57:42,080 --> 00:57:44,330 para sa araw na ito, pero hindi sa URL. 1231 00:57:44,330 --> 00:57:47,630 Ngunit mapansin ang relasyon ngayon sa post, na kung saan, sa pamamagitan ng convention, ay 1232 00:57:47,630 --> 00:57:49,160 lowercase dito. 1233 00:57:49,160 --> 00:57:54,090 >> Ngunit kung buksan ko up register0.php, Sa malas ako nagpi-print ito. 1234 00:57:54,090 --> 00:57:56,450 Kaya ito ay ang uri ng isang kakaiba pagbibigay ng pangalan sa convention. 1235 00:57:56,450 --> 00:58:01,430 Ngunit kung ano ang magaling sa PHP ay na kapag gamit ang PHP sa isang konteksto web, hindi sa isang 1236 00:58:01,430 --> 00:58:04,480 linya ng command tulad ng ginawa ko ng ilang sandali ang nakalipas, kapag aktwal na ginagamit mo ito sa isang web 1237 00:58:04,480 --> 00:58:10,580 pahina, sa isang Vhost direktoryo bilang tayo, Awtomatikong ay PHP punan ito 1238 00:58:10,580 --> 00:58:15,560 bagay, na kung saan ay isang nag-uugnay array, kaya na magsalita, ng hash talahanayan, na may mga 1239 00:58:15,560 --> 00:58:17,290 lahat ng user ang nai-type in 1240 00:58:17,290 --> 00:58:22,000 >> Sa maikli, $ _POST sa lahat caps ay isang global variable na PHP lamang 1241 00:58:22,000 --> 00:58:25,050 magically lumilikha para sa iyo kapag gamit ang PHP sa isang konteksto web. 1242 00:58:25,050 --> 00:58:29,160 At ito ay naglalagay sa loob nito ang lahat ng mga mga pangalan ng mga parameter sa form na 1243 00:58:29,160 --> 00:58:33,200 ay isinumite sa mga file na ito at lahat ng ang mga halaga na ang gumagamit ay nag-type in 1244 00:58:33,200 --> 00:58:37,790 Kaya mga kamay sa iyo kung ano ang user type in sa form na iyon. 1245 00:58:37,790 --> 00:58:42,210 >> Kaya bago, namin nakuha ko talaga nakababagod output lamang ng nakikita ang lahat dahil ako ginawa 1246 00:58:42,210 --> 00:58:44,400 ay recursively print ang array. 1247 00:58:44,400 --> 00:58:46,060 Ang susi ay ang pangalan, ang halaga ay David. 1248 00:58:46,060 --> 00:58:46,980 Ang susi ay Captain. 1249 00:58:46,980 --> 00:58:47,970 Ang halagang ay sa. 1250 00:58:47,970 --> 00:58:52,300 At ang double arrow at ang anggulo bracket doon, ito lamang ang arbitrary. 1251 00:58:52,300 --> 00:58:53,270 Ito ay hindi code. 1252 00:58:53,270 --> 00:58:57,690 Ito lamang ang PHP na paraan ng pagpapakita sa iyo kung ano ang halaga ng ilang mga susi ay. 1253 00:58:57,690 --> 00:59:03,000 >> Ngunit ngayon hayaan mo akong magpanukala na sa froshIMs3, ito ay halos magkapareho 1254 00:59:03,000 --> 00:59:04,950 maliban ito isinusumite sa file na ito. 1255 00:59:04,950 --> 00:59:08,570 At muli, kami ay pagpunta sa uri ng lamang sumulyap sa ito, lamang upang makita ang ilang mga 1256 00:59:08,570 --> 00:59:12,040 syntax, ngunit paunawa kung ano ang file na ito ginagawa nito. 1257 00:59:12,040 --> 00:59:14,930 Kumuha ng isang hulaan lamang batay sa mga linya ng code, na marahil ay hitsura 1258 00:59:14,930 --> 00:59:17,410 Griyego, sa ilang mga lawak, ay tila paggawa. 1259 00:59:17,410 --> 00:59:20,580 1260 00:59:20,580 --> 00:59:23,110 >> Ang file na ito ay may kaugnayan sa paanuman sa mail, email. 1261 00:59:23,110 --> 00:59:24,770 Kaya kung ano ang program na ito ginagawa? 1262 00:59:24,770 --> 00:59:28,740 Sa bersyong ito, kung ako ay upang aktwal na punan ang form na ito - at ipaalam sa akin pumunta sa 1263 00:59:28,740 --> 00:59:30,760 froshIMs3, hindi froshIMs0 - 1264 00:59:30,760 --> 00:59:33,280 1265 00:59:33,280 --> 00:59:34,540 anyo ang hitsura ang parehong. 1266 00:59:34,540 --> 00:59:37,980 David, kapitan, lalaki, dorm, Matthews. 1267 00:59:37,980 --> 00:59:42,980 Ngunit kung ako mag-sumite ito, ang file na ito ay pagpunta sa pumunta sa register3.php. 1268 00:59:42,980 --> 00:59:46,330 >> At inaangkin ko, sa pamamagitan ng pagtingin sa ito ay source code, ito ay pagpunta sa 1269 00:59:46,330 --> 00:59:47,650 sa paanuman kasangkot email. 1270 00:59:47,650 --> 00:59:49,620 Hayaan akong sige at buksan ito up sa isang mas malaking window, kaya kami 1271 00:59:49,620 --> 00:59:51,030 ang maaaring makakita nito nang higit pa nang malinis. 1272 00:59:51,030 --> 00:59:57,220 Kami ay sa Vhosts, lokal host, pampubliko, froshims. 1273 00:59:57,220 --> 00:59:58,680 Pupunta ako upang buksan up ng isang iba't ibang mga programa, kaya lang kami 1274 00:59:58,680 --> 01:00:00,160 Maaaring makita ang higit pang nang sabay-sabay. 1275 01:00:00,160 --> 01:00:03,100 >> Kaya ngayon dito, mapapansin ang ilang mga bagay. 1276 01:00:03,100 --> 01:00:06,530 Sa tuktok ng file ay bukas bracket, tandang pananong, PHP. 1277 01:00:06,530 --> 01:00:08,920 Pagkatapos ay mayroong isang bungkos ng mga komento, kung saan maaari naming huwag pansinin si, ay 1278 01:00:08,920 --> 01:00:10,450 hindi kawili-wili para sa ngayon. 1279 01:00:10,450 --> 01:00:11,300 >> Ngayon ay mayroong ito. 1280 01:00:11,300 --> 01:00:14,200 Ito ay lumiliko out PHP ay may maraming ng code na tinatawag na nangangailangan. 1281 01:00:14,200 --> 01:00:19,110 Ito ay katulad na katulad sa espiritu sa C ni isama, hash ay kinabibilangan ng, na 1282 01:00:19,110 --> 01:00:21,980 mahalagang grabs ang mga nilalaman ng ilang iba pang mga file at plops lang sila dito, 1283 01:00:21,980 --> 01:00:22,930 sa gayon maaari mong gamitin ang mga ito. 1284 01:00:22,930 --> 01:00:27,060 Sa kasong ito, ang appliance ay, pre-install, isang library, at libre 1285 01:00:27,060 --> 01:00:29,900 open source library na tinatawag na PHP mailer na maaari sinuman 1286 01:00:29,900 --> 01:00:30,770 i-download mula sa internet. 1287 01:00:30,770 --> 01:00:32,000 Lang namin ginawa ito para sa iyo. 1288 01:00:32,000 --> 01:00:36,130 At ito ay nangangahulugan na ako ay mayroon na ngayong email pag-andar sa aking pagtatapon. 1289 01:00:36,130 --> 01:00:38,170 >> Ngayon, mapapansin ang ilang mga bagay. 1290 01:00:38,170 --> 01:00:41,120 Pupunta ako sa patunayan ang mga pagsumite ng form. 1291 01:00:41,120 --> 01:00:45,980 Liko out PHP, isa, ay may tandang mga puntos para sa mga hindi operator, tulad ng 1292 01:00:45,980 --> 01:00:49,810 C. Ngunit PHP ay mayroon ding isang function tinatawag na walang laman. 1293 01:00:49,810 --> 01:00:53,920 >> Walang laman na lamang ay nagbabalik totoo kung ang halaga ng mga bagay mo ipasa ito sa 1294 01:00:53,920 --> 01:00:57,190 panaklong ay walang laman, tulad ng gumagamit ay hindi type ng kahit ano in 1295 01:00:57,190 --> 01:01:02,680 Kaya ito ay nagsasabi, at mapapansin ang syntax, napaka nakapagpapaalaala ng C, kung ang 1296 01:01:02,680 --> 01:01:07,730 pangalan key, kaya ang pangalan ng field sa form, kung saan ito ay isinumite sa pamamagitan ng post, sa pamamagitan ng 1297 01:01:07,730 --> 01:01:13,010 ang gumagamit, ay hindi upang alisan ng laman, at ang kanilang mga kasarian ay hindi walang laman sa anyo bilang 1298 01:01:13,010 --> 01:01:15,980 mahusay, at ang kanilang mga dorm ay hindi walang laman - 1299 01:01:15,980 --> 01:01:19,980 ngunit napansin Wala akong pakialam tungkol sa Captain, pagkatapos ay kung ano ang mga namin pagpunta sa gawin? 1300 01:01:19,980 --> 01:01:21,990 >> Pupunta ako sa execute ito linya ng code. 1301 01:01:21,990 --> 01:01:24,100 At maaari mong isipin na ang ganitong uri ng tulad ng malloc, ngunit ito ay isang maliit na 1302 01:01:24,100 --> 01:01:24,800 may interes kaysa na. 1303 01:01:24,800 --> 01:01:29,200 Ngunit sa ngayon ito ay nagbibigay sa akin ng isang espesyal na struct uri ng PHP mailer. 1304 01:01:29,200 --> 01:01:31,410 Ngunit huwag pansinin ang mga bagong keyword para sa araw na ito. 1305 01:01:31,410 --> 01:01:35,670 >> Ngayon ako pagpunta sa tumawag sa isang function na tinatawag na IsSMTP, na sinasabi, gamitin SMTP. 1306 01:01:35,670 --> 01:01:39,380 Ito ay port 25, tulad ng mga video noong nakaraang linggo, kapag ang bagay ay ibinabato 1307 01:01:39,380 --> 01:01:40,710 mga email sa firewall. 1308 01:01:40,710 --> 01:01:42,440 Port 25 ay SMTP. 1309 01:01:42,440 --> 01:01:44,410 SMTP nangangahulugan gamitin ang mail server. 1310 01:01:44,410 --> 01:01:46,215 Aling isa, maaari naming gamitin ang Harvard SMTP.fas.harvard.edu. 1311 01:01:46,215 --> 01:01:48,850 1312 01:01:48,850 --> 01:01:51,590 >> Maaari naming itakda ang mga address mula sa upang maging John Harvard ni. 1313 01:01:51,590 --> 01:01:55,090 Kung mag-scroll down na ako, maaari ba akong magtakda ang address ng tatanggap, lamang 1314 01:01:55,090 --> 01:01:56,840 mang, upang maging John Harvard ay pati na rin. 1315 01:01:56,840 --> 01:01:59,210 Kaya ang kanyang pagpunta sa pag-email ay ang kanyang sarili. 1316 01:01:59,210 --> 01:02:01,600 >> Ngayon ay maaari ba akong magtakda ng paksa upang maging pagpaparehistro. 1317 01:02:01,600 --> 01:02:03,700 At maaari ba akong magtakda ng katawan ng email tulad ng mga sumusunod. 1318 01:02:03,700 --> 01:02:06,500 Linyang ito ang hitsura ng kaunti pa misteriyoso, ngunit ito lamang ay dahil mayroong maraming isang 1319 01:02:06,500 --> 01:02:07,450 ng impormasyon sa loob nito. 1320 01:02:07,450 --> 01:02:10,670 One, mayroong isang tuldok operator. 1321 01:02:10,670 --> 01:02:14,510 May isang tao ay dapat na malaman kung ano ang ang tuldok operator na ginagawa nito. 1322 01:02:14,510 --> 01:02:15,436 Ito ay pagdudugtong. 1323 01:02:15,436 --> 01:02:19,240 Kaya kung nais mong gumawa ng isang string sa PHP, at ikabit ito, o prepend ito, upang 1324 01:02:19,240 --> 01:02:23,500 isa pang string sa PHP, salamat sa Diyos sa iyo hindi na kailangang gumamit ng strcopy at malloc, 1325 01:02:23,500 --> 01:02:25,490 at ang lahat ng iyon ngayon. 1326 01:02:25,490 --> 01:02:28,765 >> Kung nais mong pagdugtungin ang dalawang mga string, sino pinahahalagahan ang memory. 1327 01:02:28,765 --> 01:02:30,850 Hayaan ang PHP na figure out para sa iyo. 1328 01:02:30,850 --> 01:02:35,200 Ano PHP ay gagawin sa mga operator na tuldok dito ay lamang gumawa ng isang malaking pangungusap out 1329 01:02:35,200 --> 01:02:37,900 ng linyang ito, ang linyang ito, ang linyang ito, ang linyang ito. 1330 01:02:37,900 --> 01:02:40,460 At ngayon na paunawa, ito ay pagpunta upang ma-i-plug sa mga halaga. 1331 01:02:40,460 --> 01:02:43,680 Kaya ang email na John Harvard ang nangyayari upang makatanggap ng Literal na pagpunta sa sabihin 1332 01:02:43,680 --> 01:02:49,450 pangalan, colon, isang bagay, sa halip, pagkatapos namin isara ang string at pagdugtungin sa 1333 01:02:49,450 --> 01:02:52,220 ano ang user type sa, pagkatapos ng isang bagong linya. 1334 01:02:52,220 --> 01:02:54,570 >> Pagkatapos, sa susunod na linya ng John Harvard ni email, ito ay pagpunta sa sabihin 1335 01:02:54,570 --> 01:02:55,910 Captain, o Sa Wala. 1336 01:02:55,910 --> 01:02:57,810 Ito ay pagpunta sa sabihin kasarian, lalaki o babae. 1337 01:02:57,810 --> 01:02:59,680 Dorm ay magiging Matthews sa aking kaso. 1338 01:02:59,680 --> 01:03:03,400 At pagkatapos ay mapansin pamilyar na tuldok-kuwit sa pinakadulo. 1339 01:03:03,400 --> 01:03:07,830 At pagkatapos, pababa dito, notice, medyo misteriyoso pa rin, ngunit muli, ang pagsunod sa isang 1340 01:03:07,830 --> 01:03:12,730 pattern na ay magiging mas pamilyar pagkatapos P itakda 7, kung ang pagpapadala ng mail 1341 01:03:12,730 --> 01:03:16,610 Ibinabalik ng hindi totoo, pagkatapos ay sige at mamatay. 1342 01:03:16,610 --> 01:03:19,610 >> Kaya PHP ay may isang function na tinatawag na mamatay, kung saan, literal, kills lang ang 1343 01:03:19,610 --> 01:03:22,830 website at mga kopya lamang out kahit anong sabihin mo ito - nito ay namamatay 1344 01:03:22,830 --> 01:03:24,280 mga salita, kaya na magsalita. 1345 01:03:24,280 --> 01:03:28,310 At iyon, sa kaso, ito ay i-print kung ano ang error na impormasyon ay para sa 1346 01:03:28,310 --> 01:03:29,860 ano ang nangyari sa magkamali. 1347 01:03:29,860 --> 01:03:34,490 Kaya mahaba ang kuwento maikling dito, kung ano ang mayroon kami ay isang halimbawa kung saan kapag ang user 1348 01:03:34,490 --> 01:03:39,150 isinusumite ang form, froshim0, froshims3.php, ito ang papunta sa 1349 01:03:39,150 --> 01:03:40,760 register3.php. 1350 01:03:40,760 --> 01:03:45,290 Ngunit pagkatapos register3.php naaayos upang isakatuparan ang lahat ng mga linyang ito. 1351 01:03:45,290 --> 01:03:46,620 >> Kaya mayroong ilang tumagal aways dito. 1352 01:03:46,620 --> 01:03:50,380 Ang isa, ito ay tila medyo madali, ayon sa programa, upang magpadala ng mga email, 1353 01:03:50,380 --> 01:03:50,830 na kung saan ay mabuti. 1354 01:03:50,830 --> 01:03:53,500 Kapag ang mga user magparehistro para sa iyong site, sa kasong ito, kapag sila ay magparehistro para sa iyong 1355 01:03:53,500 --> 01:03:56,220 isport, maaari mong i-email ang presman Proctor, o John 1356 01:03:56,220 --> 01:03:57,650 Harvard, sa kasong ito. 1357 01:03:57,650 --> 01:04:01,630 >> Ngunit ito rin ay nangangahulugan na maaari mong gawin kung ano? 1358 01:04:01,630 --> 01:04:03,970 Magpadala ng mga email mula sa kahit sino sa sinuman. 1359 01:04:03,970 --> 01:04:05,430 At ito ay napaka-totoo. 1360 01:04:05,430 --> 01:04:08,580 Ito ay hindi bilang madali tapos kung nakasanayan mo gamit ang Gmail. 1361 01:04:08,580 --> 01:04:11,310 Ngunit kung sakaling ginamit mo o Eudora Outlook, maaari mong medyo magkano sabihin sa isang 1362 01:04:11,310 --> 01:04:13,720 mail server na ikaw ay kahit sino na gusto mo. 1363 01:04:13,720 --> 01:04:16,450 At ito ay kung saan kailangan kong ilagay sa na sumbrero at sabihing, huwag gawin ito. 1364 01:04:16,450 --> 01:04:21,140 Ngunit ito ay tipan lamang sa kung paano madaling ito ay upang magsagawa ng phishing atake, at 1365 01:04:21,140 --> 01:04:24,310 magpadala ng anonymous email, at spam, higit pa sa pangkalahatan. 1366 01:04:24,310 --> 01:04:27,330 At talagang kahulihan babagsak ito upang ang katunayan na ang lahat ng kailangan mo ay ang ilang mga 1367 01:04:27,330 --> 01:04:28,500 program access. 1368 01:04:28,500 --> 01:04:31,940 >> Bilang isang tabi, ang aking pinakamalapit na makaharap sa ang ad board, ang aking sariling presman taon, 1369 01:04:31,940 --> 01:04:34,320 ay kapag natuklasan ko ang cool linlangin na, a, maaari mong 1370 01:04:34,320 --> 01:04:36,850 magpadala ng mga email mula sa kahit sino. 1371 01:04:36,850 --> 01:04:39,770 At kaya tayo ay nagkakaroon ng ilang mga bobo argument, literal, sa Matthews, 1372 01:04:39,770 --> 01:04:40,790 kasama ng aking Proctor group. 1373 01:04:40,790 --> 01:04:42,470 Hindi ko kahit na matandaan kung ano ang isyu ay. 1374 01:04:42,470 --> 01:04:44,970 Subalit Nais kong subukan upang ilagay ang isang tapusin na ito nakababagod debate. 1375 01:04:44,970 --> 01:04:48,580 >> Kaya ako ay nagpasya ko lang magpadala ng e-mail sa aking Proctor group, pagpapanggap 1376 01:04:48,580 --> 01:04:52,000 ang iba pang mga tao, na may kung saan ang opinyon ko disagreed, at magkaroon ng hindi tumutol sa kanya upang 1377 01:04:52,000 --> 01:04:54,680 ano ang aking opinyon ay sa ang partikular na debate. 1378 01:04:54,680 --> 01:04:59,320 At kaya ako napeke ang email na ito gamit ang isang diskarteng katulad sa espiritu na ito. 1379 01:04:59,320 --> 01:05:01,256 Ngunit ito ay tunay madali sa oras. 1380 01:05:01,256 --> 01:05:02,435 Pindutin ang ipadala. 1381 01:05:02,435 --> 01:05:06,660 Hindi siya ay nasisiyahan, o gagawin naging mga ad board. 1382 01:05:06,660 --> 01:05:10,280 >> At ako ay napakabilis na nahuli sa loob segundo dahil, bilang alam mo, ako magsa-sign 1383 01:05:10,280 --> 01:05:11,420 ang aking mga email sa isang tiyak na paraan. 1384 01:05:11,420 --> 01:05:14,200 At kahit na gawin ko ito nang mano-mano, sa malalaking bahagi, 15 taon mamaya dahil ako ay 1385 01:05:14,200 --> 01:05:15,080 traumatized sa pamamagitan ng na. 1386 01:05:15,080 --> 01:05:16,960 Hindi ko ay may lagda sa aking e-mail ngayon. 1387 01:05:16,960 --> 01:05:20,440 Ngunit noong 1995, ako lamang ay nagkaroon ng isang sig, ng lagda sa aking email. 1388 01:05:20,440 --> 01:05:24,630 Kaya nagkaroon ng talang ito sinasabi, Minamahal Proctor group, hindi tumutol ko ang aking opinyon 1389 01:05:24,630 --> 01:05:31,240 at sumang-ayon na may David, naka-sign kaya at kaya, ang mga bagong linya, bagong linya, DJM. 1390 01:05:31,240 --> 01:05:36,220 >> Kaya huwag gawin iyon o, sa pangkalahatan, tumagal bentahe ng diskarteng ito. 1391 01:05:36,220 --> 01:05:39,950 Ngunit kapag gumagawa ng isang website, i para sa ang iyong huling proyekto, kapag gumagawa ng 1392 01:05:39,950 --> 01:05:43,460 website para sa isang bagay na pangnegosyo, ito ay kung paano, pragmatically, maaari mong 1393 01:05:43,460 --> 01:05:47,000 pakikinabangan ang iba pang mga serbisyo sa internet tulad ng mail at pagkatapos ay talagang 1394 01:05:47,000 --> 01:05:49,440 magpadala ng mga bagay gamit ang code. 1395 01:05:49,440 --> 01:05:51,240 >> Kaya kung paano namin mapapabuti sa oras na ito? 1396 01:05:51,240 --> 01:05:54,370 Well, unang sabihin magsagawa ng mabilis na paglilibot ng ang ilan sa mga bagay na makikita mo, 1397 01:05:54,370 --> 01:05:56,170 at pagkatapos ay tumingin sa isang pares ng mga halimbawa. 1398 01:05:56,170 --> 01:05:59,500 Kaya isa, upang muling bigyan ng katiyakan, dahil kami ay lumilipad sa pamamagitan ng PHP. 1399 01:05:59,500 --> 01:06:02,470 At alam ko, sa isang punto, magkakaroon ka ng upang aktwal na simulan ang pagsusulat na ito kung 1400 01:06:02,470 --> 01:06:03,460 may hindi pa. 1401 01:06:03,460 --> 01:06:06,220 Napag-alaman na, isa, ay pangunahing uri ng out ang window na may PHP. 1402 01:06:06,220 --> 01:06:09,420 Kung nais mong magsulat ng code na nakukuha ng pinaandar, mo lamang simulan ang pagsusulat ito sa 1403 01:06:09,420 --> 01:06:13,970 isang file na tinatawag na. php kaya hangga't mayroon ka ng mga open bracket 1404 01:06:13,970 --> 01:06:15,620 tandang pananong PHP tag. 1405 01:06:15,620 --> 01:06:19,730 >> Ngunit mapansin ang mga ito ay mga kondisyon sa php. 1406 01:06:19,730 --> 01:06:22,610 Pansinin, ito ay ang eksaktong parehong slide nagkaroon kami sa isang linggo kapag nagkaroon kami 1407 01:06:22,610 --> 01:06:25,670 mga kondisyon sa C. Kondisyon sa PHP ay structurally at 1408 01:06:25,670 --> 01:06:27,140 syntactically ang parehong. 1409 01:06:27,140 --> 01:06:30,290 Tanging ang tunay na pagkakaiba ay kung mayroon kang variable na kasangkot, mayroon kang mga 1410 01:06:30,290 --> 01:06:31,600 dollar mga karatula. 1411 01:06:31,600 --> 01:06:33,970 >> Samantala, Boolean expression tumingin lamang tulad nito para sa 1412 01:06:33,970 --> 01:06:35,725 o Pina-o at Pina-sama. 1413 01:06:35,725 --> 01:06:37,780 Lilipat tumingin nang eksakto ang parehong. 1414 01:06:37,780 --> 01:06:42,180 Ano ang maganda sa PHP, samantalang sa C, switch na kailangang maging mga kaso sa 1415 01:06:42,180 --> 01:06:46,380 primitive tulad ng ints o char, sa PHP mga statement ng iyong kaso ay maaaring talagang maging 1416 01:06:46,380 --> 01:06:48,430 sa isang buong string, na kung saan ay talagang uri ng magaling. 1417 01:06:48,430 --> 01:06:49,480 Sine-save ka ng ilang oras. 1418 01:06:49,480 --> 01:06:50,820 Hindi ma gawin iyon sa C. 1419 01:06:50,820 --> 01:06:52,880 >> Narito ang isang loop para sa PHP. 1420 01:06:52,880 --> 01:06:53,740 Ito ay magkapareho. 1421 01:06:53,740 --> 01:06:55,400 Maaaring magkaroon ng ilang mga palatandaan dollar para sa mga variable. 1422 01:06:55,400 --> 01:06:57,530 Hindi mo na kailangang banggitin na isang bagay ay isang int. 1423 01:06:57,530 --> 01:07:00,580 Ikaw lamang ipahayag ito ng isang dollar sign at ang pangalan ng variable. 1424 01:07:00,580 --> 01:07:01,430 Ngunit para sa isang loop ay pareho. 1425 01:07:01,430 --> 01:07:02,760 Ang isang habang loop ay pareho. 1426 01:07:02,760 --> 01:07:04,870 Ang isang gawin habang loop ay pareho. 1427 01:07:04,870 --> 01:07:06,170 >> Ito ay isang maliit na naiiba. 1428 01:07:06,170 --> 01:07:12,410 Kaya sa PHP, na may isang array, maaari mong statically magpahayag ng isang array, tulad ng sa C, 1429 01:07:12,410 --> 01:07:14,420 ngunit ginagamit mo ang mga square bracket. 1430 01:07:14,420 --> 01:07:17,060 Sa C, gagamitin mo kulot tirante, kung ka kahit na alam na. 1431 01:07:17,060 --> 01:07:20,910 Ngunit ito ay talagang napaka-pangkaraniwan sa PHP upang magpahayag ng isang array, sa kasong ito, 1432 01:07:20,910 --> 01:07:23,640 ng mga numero, at tawagan ang variable na numero. 1433 01:07:23,640 --> 01:07:25,300 >> Variable kanilang sarili magmukhang ganito. 1434 01:07:25,300 --> 01:07:28,710 Dito ay isang string, banggit magpanipi "kumusta mundo. "Maaari kang magkaroon ng isang backslash n. 1435 01:07:28,710 --> 01:07:30,950 Ko lang gawin hindi sa kasong ito. 1436 01:07:30,950 --> 01:07:32,640 >> Ngayon ito ay isang kagiliw-giliw na bumuo. 1437 01:07:32,640 --> 01:07:33,700 C ay walang ito. 1438 01:07:33,700 --> 01:07:34,700 Ngunit ito ay napaka-kapaki-pakinabang. 1439 01:07:34,700 --> 01:07:38,160 At makikita mo ito sa P set 7 spec - isang para sa bawat tayuan. 1440 01:07:38,160 --> 01:07:41,800 Kung gusto mong mag-ulit sa ibabaw ng lahat ng mga mga elemento ng isang array, hindi mo kailangang 1441 01:07:41,800 --> 01:07:45,500 humarap sa $ i $ at n, at + +, at lahat na. 1442 01:07:45,500 --> 01:07:47,640 Maaari mong literal na sinasabi, sa PHP, ito - 1443 01:07:47,640 --> 01:07:51,890 para sa bawat numero bilang numero, kaya Ako ipagpalagay na $ numero 1444 01:07:51,890 --> 01:07:53,380 ay isang hanay ng mga numero. 1445 01:07:53,380 --> 01:07:56,460 At kapag sinabi ko para sa bawat numero bilang numero, ito ay pagpunta sa 1446 01:07:56,460 --> 01:08:00,505 awtomatikong, bilang aking loop executes, update, sa bawat pag-ulit, ang halaga 1447 01:08:00,505 --> 01:08:03,260 sa loob ng dollar sign numero - 1448 01:08:03,260 --> 01:08:07,730 muli, at muli, at muli paglalakad para sa akin sa paglipas na array. 1449 01:08:07,730 --> 01:08:08,735 Kaya lang sini-save sa amin ang code. 1450 01:08:08,735 --> 01:08:12,250 Walang semicolons, walang + + 's, i walang kung, walang n ito, ito lamang ay magaling. 1451 01:08:12,250 --> 01:08:13,700 >> Ngunit PHP ay mayroon ding mga ito. 1452 01:08:13,700 --> 01:08:14,830 At ito ay sobrang malakas. 1453 01:08:14,830 --> 01:08:17,410 At makikita mo ito gamitin, mga kamay sa, sa P itakda 7. 1454 01:08:17,410 --> 01:08:21,990 At nag-uugnay array ay din ipinahayag may mga square bracket. 1455 01:08:21,990 --> 01:08:23,569 Ngunit mapansin ang syntax ngayon. 1456 01:08:23,569 --> 01:08:26,880 Ito ay nakapagpapaalaala ng kung ano ang nakita natin may print_r ng ilang sandali ang nakalipas. 1457 01:08:26,880 --> 01:08:31,810 Gaano karaming mga susi, bilang isang maliit na tseke kaliwanagan ng isip, ang array na ito ay tila mayroon. 1458 01:08:31,810 --> 01:08:32,689 >> Kaya ito ay may dalawang. 1459 01:08:32,689 --> 01:08:33,830 At tumawag ako ito isang array. 1460 01:08:33,830 --> 01:08:36,760 Ngunit kung ito ay tumutulong, maaari mong isipin ng mga ito bilang hash talahanayan, o bilang 1461 01:08:36,760 --> 01:08:37,930 nag-uugnay ng isang array. 1462 01:08:37,930 --> 01:08:39,580 Ngunit ito lamang ang iba't ibang uri ng array. 1463 01:08:39,580 --> 01:08:41,080 At muli, iba't ibang mga wika mayroon ang mga ito. 1464 01:08:41,080 --> 01:08:43,810 Susubukan naming makita ang isang bagay na katulad sa JavaScript pati na rin. 1465 01:08:43,810 --> 01:08:44,609 Mayroong dalawang mga susi. 1466 01:08:44,609 --> 01:08:48,390 Ang isa ay magpanipi quote, "simbolo," isa ay banggit magpanipi "presyo." At ang mga susi 1467 01:08:48,390 --> 01:08:49,250 bawat isa ay may halaga. 1468 01:08:49,250 --> 01:08:54,420 Sa kasong ito halaga simbolo ay FB, para Halaga Facebook, at presyo ay 49, 26, 1469 01:08:54,420 --> 01:08:56,899 na kung saan ay Facebook ni stock presyo ng bilang na ito umaga. 1470 01:08:56,899 --> 01:09:00,170 >> Kaya kung ano ay kapaki-pakinabang tungkol sa nag-uugnay ng isang array. 1471 01:09:00,170 --> 01:09:02,620 Maaari ko pa ay nagkaroon ng isang ayon sa bilang array index na may lamang 1472 01:09:02,620 --> 01:09:04,120 simpleng square bracket. 1473 01:09:04,120 --> 01:09:09,380 At maaari kong nagkaroon dollar sign quote ay katumbas lamang ito. 1474 01:09:09,380 --> 01:09:10,529 Hayaan akong talagang gawin ito. 1475 01:09:10,529 --> 01:09:14,796 Ipagpalagay ko sa halip lamang ipinahayag ito tulad ng array na. 1476 01:09:14,796 --> 01:09:17,590 Iyon ay ganap na wasto, syntactically. 1477 01:09:17,590 --> 01:09:20,569 Hindi nito mawala ang anumang impormasyon, per se. 1478 01:09:20,569 --> 01:09:24,760 Ko pa rin makita na ang simbolo ay fb, at na ang presyo ay 49, 26. 1479 01:09:24,760 --> 01:09:28,939 Kaya bakit ay nag-uugnay array na Nakakamangha? 1480 01:09:28,939 --> 01:09:30,189 >> Madla: Hindi mo kailangang tandaan kung saan mo inilagay ang mga bagay-bagay. 1481 01:09:30,189 --> 01:09:32,050 1482 01:09:32,050 --> 01:09:34,130 >> Tagapagsalita 1: Mismong, hindi mo kailangang upang tandaan kung saan mo inilagay ang mga bagay-bagay. 1483 01:09:34,130 --> 01:09:37,670 Hindi mo na kailangang mang matandaan na simbolo ng stock ay nasa bracket zero, 1484 01:09:37,670 --> 01:09:41,479 at stock presyo ay nasa bracket ng isa, na kung saan ay partikular na mapanganib kung ka 1485 01:09:41,479 --> 01:09:43,220 baguhin ang mga bagay, sa kalaunan. 1486 01:09:43,220 --> 01:09:46,399 Ito ay magkano nicer upang iugnay kung ano ang makikita namin tumawag metadata 1487 01:09:46,399 --> 01:09:48,340 ng iyong aktwal na data. 1488 01:09:48,340 --> 01:09:52,399 Gusto ko magtaltalan na kung ano ang aming talagang pakialam tungkol dito ay fb at 49, 26. 1489 01:09:52,399 --> 01:09:57,020 Ang mga simbolo at mga presyo ay metadata na naglalarawan ng data namin 1490 01:09:57,020 --> 01:09:58,180 talagang nagmamalasakit tungkol sa. 1491 01:09:58,180 --> 01:10:01,910 Ngunit ito lamang ang kaya magkano mas madaling i-access. 1492 01:10:01,910 --> 01:10:04,090 >> Ngayon, bilang isang tabi kung ano ang ang presyo na babayaran namin? 1493 01:10:04,090 --> 01:10:06,600 Kami ay ginagawa ito sa CS50 para sa linggo. 1494 01:10:06,600 --> 01:10:10,740 Ang tampok na ito ay dapat dumating sa ilang mga gastos. 1495 01:10:10,740 --> 01:10:11,350 Memory. 1496 01:10:11,350 --> 01:10:13,830 Kaya hindi ka lang ang pag-iimbak ng isang 32-bit integer, halimbawa. 1497 01:10:13,830 --> 01:10:17,980 Ikaw ay pag-iimbak simbolo / 0, marahil. 1498 01:10:17,980 --> 01:10:19,160 Kaya gumagamit ka ng mas memorya. 1499 01:10:19,160 --> 01:10:22,540 >> At ano ang pagganap ng naghahanap ng isang bagay sa loob ng isang 1500 01:10:22,540 --> 01:10:24,822 nag-uugnay array, marahil? 1501 01:10:24,822 --> 01:10:26,590 Marahil ay mas mabagal. 1502 01:10:26,590 --> 01:10:29,670 Random access ay magaling, lalo na kapag maaari mong gawin binary paghahanap. 1503 01:10:29,670 --> 01:10:33,380 Pero kung talaga ka ngayon hinahanap hindi para sa mga numero, ngunit para sa mga string, ito 1504 01:10:33,380 --> 01:10:37,630 tunay na ay ipinatupad sa ilalim ng hood, marahil bilang isang hash talahanayan, kung saan 1505 01:10:37,630 --> 01:10:42,950 gumamit ka ng alinman sa isang hash talahanayan may nakahiwalay na chaining. 1506 01:10:42,950 --> 01:10:46,040 O kaya gumamit ka ng isang Subukan upang aktwal na mag-imbak ang mga halaga. 1507 01:10:46,040 --> 01:10:50,550 Kaya marahil maaari mong gawin pare-pareho ang panahon, ngunit mayroon ka pa ring tumingin sa mga S-Y-M-B-O-L, 1508 01:10:50,550 --> 01:10:54,510 potensyal na, sa halip na lamang 32 bits upang tumingin ng isang bagay up. 1509 01:10:54,510 --> 01:10:58,430 Kaya muli, ang mga parehong mga ideya sa darating na upang i-back magbalik sa kontekstong ito. 1510 01:10:58,430 --> 01:11:02,120 >> Ngunit muli, PHP ngayon ay may ilang mga super globals na, ito lumiliko out, ay 1511 01:11:02,120 --> 01:11:02,900 nag-uugnay array. 1512 01:11:02,900 --> 01:11:05,590 Nakakita kami ng isa ng ilang sandali ang nakalipas, $ _POST. 1513 01:11:05,590 --> 01:11:08,400 At na super global May mga pindutan at halaga. 1514 01:11:08,400 --> 01:11:10,550 Sa partikular, ang mga pindutan ng pumila sa kung ano? 1515 01:11:10,550 --> 01:11:14,520 Saan nagpupunta ang mga key sa $ _POST nanggaling? 1516 01:11:14,520 --> 01:11:15,380 Lang sa paglalagom? 1517 01:11:15,380 --> 01:11:16,480 >> Madla: Pangalan. 1518 01:11:16,480 --> 01:11:17,900 >> Tagapagsalita 1: Name, saan? 1519 01:11:17,900 --> 01:11:19,860 >> Madla: [hindi marinig] 1520 01:11:19,860 --> 01:11:20,750 >> Tagapagsalita 1: Name ay ang katangian. 1521 01:11:20,750 --> 01:11:23,480 Well kung saan, kung saan ginawa nila Orihinal na nanggaling? 1522 01:11:23,480 --> 01:11:24,120 Ang form. 1523 01:11:24,120 --> 01:11:30,140 Kaya kung ang isang pahina ng HTML ay may form na tag, sa loob ng kung saan ang ilang mga input, tulad ng 1524 01:11:30,140 --> 01:11:34,760 suriin ang mga kahon, mga kahon ng teksto, i-drop down na menu, ang bawat isa ay may pangalan, mga 1525 01:11:34,760 --> 01:11:40,260 mga pangalan ng tapusin up bilang susi sa $ _POST, at, nang tapat, na para sa bagay na ito, $ _GET. 1526 01:11:40,260 --> 01:11:42,130 Kung ang pamamaraan ay get, parehong ideya. 1527 01:11:42,130 --> 01:11:43,830 Ito ay lamang sa isang iba't ibang mga super global. 1528 01:11:43,830 --> 01:11:47,620 At ang mga halaga, siyempre, nanggaling kahit anong user ang nag-type sa sa kanyang o 1529 01:11:47,620 --> 01:11:48,890 kanyang browser. 1530 01:11:48,890 --> 01:11:49,830 >> Subalit mayroong ilang mga iba pa. 1531 01:11:49,830 --> 01:11:52,140 Mayroong cookie, na kung saan bibigyan namin ng bumalik sa kalaunan. 1532 01:11:52,140 --> 01:11:56,050 Ngunit iyon ay ang mga bagay na alam mo web mga gumagamit para sa ilang mga magandang o masama. 1533 01:11:56,050 --> 01:11:57,420 Ngunit kami ay bumalik sa na. 1534 01:11:57,420 --> 01:12:01,720 Server at session, at mga dalawang may ilang mga espesyal na utility. 1535 01:12:01,720 --> 01:12:03,940 >> Ngunit sabihin tumingin sa ito. 1536 01:12:03,940 --> 01:12:13,330 Hayaan akong sige at buksan up ng isang halimbawa tinatawag mvc0.php Kaya MVC 1537 01:12:13,330 --> 01:12:14,900 ibig sabihin ay ang mga sumusunod. 1538 01:12:14,900 --> 01:12:19,390 At kami ipakilala ito nang mas maaga kaysa ay tipikal, talaga, upang mabigyan ka ng pagdidisenyo 1539 01:12:19,390 --> 01:12:22,180 Problema sa pag-set 7, at din ang huling proyekto, sa uri ng isang industriya 1540 01:12:22,180 --> 01:12:23,670 karaniwang paraan, at malinis na paraan. 1541 01:12:23,670 --> 01:12:24,820 Ito ay mahusay na disenyo. 1542 01:12:24,820 --> 01:12:29,090 >> Kaya ikaw ay tungkol sa upang makita, at bibigyan ka karanasan, sa P hanay 7, tularan, pag-uuri 1543 01:12:29,090 --> 01:12:32,260 ng isang mindset programming, na mukhang isang maliit na isang bagay na katulad nito. 1544 01:12:32,260 --> 01:12:35,570 M para sa Model, C para sa Controller, V para sa View. 1545 01:12:35,570 --> 01:12:39,690 Long kuwento maikli, MVC lamang ang uri ng isang pamamaraan, ang isang paraan ng paggawa ng 1546 01:12:39,690 --> 01:12:43,360 mga website, sa partikular, kung saan ka ilagay ang lahat ng iyong mga, bobo parirala - 1547 01:12:43,360 --> 01:12:44,970 logic negosyo - 1548 01:12:44,970 --> 01:12:49,710 lahat ng iyong mga intelektuwal na ari-arian sa ano ang tinatawag na isang controller, isang file 1549 01:12:49,710 --> 01:12:54,840 tulad ng index.php, o gagamitin namin makita, quote.php, o buy.php. 1550 01:12:54,840 --> 01:12:59,570 >> Sa konteksto ng Problema hanay 7, iyong mga modelong karaniwang naglalaman ng iyong data, 1551 01:12:59,570 --> 01:13:03,860 anumang bagay na may kaugnayan sa isang database, pati na bibigyan namin ng ay makakita, at ang iyong mga tanawin 1552 01:13:03,860 --> 01:13:07,510 maglaman ang aesthetics ng iyong site, sa HTML, ang CSS. 1553 01:13:07,510 --> 01:13:10,420 Kaya namin na nakita ito sa C ng kaunti bit sa pamamagitan ng paggamit. h file. 1554 01:13:10,420 --> 01:13:15,010 Kami ay talagang Nakita ito ng ilang sandali ang nakalipas sa CSS, sa pamamagitan ng factoring ang CSS estilisasyon 1555 01:13:15,010 --> 01:13:16,520 bagay-bagay sa labas ng aming HTML. 1556 01:13:16,520 --> 01:13:20,730 >> Kaya MVC ay talagang lamang tungkol sa pagguhit mga linya sa buhangin at sinasabi, ang 1557 01:13:20,730 --> 01:13:25,400 kawili-wiling mga programming code para sa iyong website nabibilang sa kung ano ang makikita namin tawagan ang 1558 01:13:25,400 --> 01:13:26,400 controller. 1559 01:13:26,400 --> 01:13:29,280 Bagay-bagay na may kaugnayan sa database ay karaniwang ay nagtatapos up sa isang modelo. 1560 01:13:29,280 --> 01:13:33,070 Ngunit makikita mo, Problema sa hanay 7, namin pagsamahin C at M upang panatilihin itong simple. 1561 01:13:33,070 --> 01:13:37,630 Ngunit tanawin ay kung saan ang lahat ng iyong HTML at aesthetics karaniwang pumunta. 1562 01:13:37,630 --> 01:13:39,160 >> Kaya kung ano ang ibig sabihin nito sa tunay na mga termino? 1563 01:13:39,160 --> 01:13:45,980 Well, hayaan mo akong pumunta sa aming MVC direktoryo tulad ng mga sumusunod. 1564 01:13:45,980 --> 01:13:48,880 At makikita mo ang higit pa sa mga nalibot sa pamamagitan ng sa spec. 1565 01:13:48,880 --> 01:13:53,200 Kaya sa mvc0, inaangkin ko na ito ay, tulad ng, 0 bersyon ng CS50 mga website. 1566 01:13:53,200 --> 01:13:56,670 >> Ang lahat ng mayroon kami ay ilang mga HTML, tulad ng isang malaking tag h1, tila. 1567 01:13:56,670 --> 01:13:57,800 At pagkatapos ay isang Naka-bullet na listahan. 1568 01:13:57,800 --> 01:13:59,860 Hindi ko nakita ang isang Naka-bullet na listahan bago, ngunit hindi sang-ayon. 1569 01:13:59,860 --> 01:14:01,590 Sabihin mabilis tingnan ang source code. 1570 01:14:01,590 --> 01:14:06,610 Lumiliko out ng unordered listahan na may bullet Bukas bracket ul na may isa o 1571 01:14:06,610 --> 01:14:09,065 higit pang mga listahan ng mga item, li. 1572 01:14:09,065 --> 01:14:10,650 Kaya notice dito ay isang anchor tag. 1573 01:14:10,650 --> 01:14:12,130 Nakita namin na ang isang sandali ang nakalipas. 1574 01:14:12,130 --> 01:14:13,810 >> Kaya ito ay kung paano naipatupad ko ang pahinang ito. 1575 01:14:13,810 --> 01:14:18,460 Mayroon akong dalawang mga link, dalawang mga listahan ng mga item, isa ul para unordered listahan, at sa dulo 1576 01:14:18,460 --> 01:14:22,700 resulta, aesthetically, ito ay napaka medyo website, bersyon 0 dito. 1577 01:14:22,700 --> 01:14:26,840 Ngunit kung ano ang mga kagiliw-giliw na ngayon ay kung paano ito ay ipinatupad sa ilalim ng hood. 1578 01:14:26,840 --> 01:14:33,590 >> Hayaan akong pumunta sa gedit at buksan up na ito napaka unang halimbawa upang magpinta ng isang larawan. 1579 01:14:33,590 --> 01:14:37,070 At titingnan namin kung ano ang flawed, potensyal na, in dito. 1580 01:14:37,070 --> 01:14:43,260 Ngayon kung pumunta ako sa localhost, pampubliko, MVC, mapansin ng ilang mga file. 1581 01:14:43,260 --> 01:14:45,780 Pupunta ako sa mga tawagan, para sa mga sandaling ito, ang lahat ng mga controllers. 1582 01:14:45,780 --> 01:14:48,640 Ngunit iyon lamang ang isang bit ng isang pang-aabuso dahil makikita mo ang lahat ng bagay ay commingled 1583 01:14:48,640 --> 01:14:49,620 sa loob ng mga ito. 1584 01:14:49,620 --> 01:14:52,330 >> At hayaan mo akong pumunta sa loob ng index.php. 1585 01:14:52,330 --> 01:14:54,700 At nakita namin, literal, ang parehong HTML. 1586 01:14:54,700 --> 01:14:57,970 Kaya kahit na ang file na ito ay nagtatapos sa . Php, Hindi ito nangangahulugan na ito ay may sa 1587 01:14:57,970 --> 01:14:59,500 magkakaroon ng anumang PHP code. 1588 01:14:59,500 --> 01:15:02,290 Maaari itong maging lamang raw HTML, bagaman na uri ng ulok. 1589 01:15:02,290 --> 01:15:07,650 Ngunit mapansin walang bukas bracket PHP tag, maliban sa ito, na kung saan, lantaran, 1590 01:15:07,650 --> 01:15:09,160 lamang ang may upang magsilbi bilang isang komento. 1591 01:15:09,160 --> 01:15:12,080 Ngunit iyon lamang ang pagtakbo hindi kahit na kawili-wili. 1592 01:15:12,080 --> 01:15:12,960 >> Ngunit mapansin ito. 1593 01:15:12,960 --> 01:15:15,400 Ano ang mga kagiliw-giliw na ngayon ay kung ano ang mga pagbabago sa pahinang ito. 1594 01:15:15,400 --> 01:15:16,650 Hayaan akong i-click ang aralin. 1595 01:15:16,650 --> 01:15:18,560 At mapansin ang URL ay tungkol sa upang baguhin. 1596 01:15:18,560 --> 01:15:20,930 Ngayon ako sa lectures.php. 1597 01:15:20,930 --> 01:15:22,630 Hayaan akong i-click ang zero. 1598 01:15:22,630 --> 01:15:27,200 Ngayon ako sa week0.php At ngayon hayaan buksan sa akin ang mga file na ito sa gedit. 1599 01:15:27,200 --> 01:15:30,120 Hindi lamang index, ngunit hayaan buksan up ako aralin. 1600 01:15:30,120 --> 01:15:33,900 At hayaan mo akong makakuha ng mapupuksa ang mga komento upang tumutok sa mga bahaging ito lamang. 1601 01:15:33,900 --> 01:15:37,680 >> At ngayon hayaan mo akong magbukas ng isa lamang sa higit pa, week0.php, itapon ang mga komento, 1602 01:15:37,680 --> 01:15:39,910 lamang upang linisin ito up. 1603 01:15:39,910 --> 01:15:41,720 At ngayon mapansin ang mga sumusunod na. 1604 01:15:41,720 --> 01:15:47,340 Iniisip ba talagang uri ng mabuti ang tungkol sa disenyo, at sabihin gawin itong linya 1605 01:15:47,340 --> 01:15:52,013 up ang parehong, kung ano ma-tapos mas mahusay na dito, sa tingin ninyo? 1606 01:15:52,013 --> 01:15:56,450 1607 01:15:56,450 --> 01:15:57,780 >> Paano ako makagawa ng isang linggo ng isa? 1608 01:15:57,780 --> 01:15:58,480 Paano tungkol sa mga ito. 1609 01:15:58,480 --> 01:16:00,450 Kaya ito ay kung paano ko ginawa linggo isa. 1610 01:16:00,450 --> 01:16:08,290 Pinuntahan ko hanggang sa File, New, I-paste, I-save, week1.php, at pagkatapos ay nagpunta ako sa dito. 1611 01:16:08,290 --> 01:16:09,875 At ako ay nagbago isa - 1612 01:16:09,875 --> 01:16:11,646 ano ay ito, isa sa Biyernes. 1613 01:16:11,646 --> 01:16:14,430 1614 01:16:14,430 --> 01:16:15,810 Ako ay nagbago ang mga zero sa isa. 1615 01:16:15,810 --> 01:16:17,150 Binago ko ito sa isa. 1616 01:16:17,150 --> 01:16:20,350 >> OK, kaya ngayon tumingin sa aking mga file. 1617 01:16:20,350 --> 01:16:22,100 Ano ma-tapos nang iba? 1618 01:16:22,100 --> 01:16:25,310 Nasaan ang pagkakataon, marahil? 1619 01:16:25,310 --> 01:16:28,330 Kaya may mga pagkakataon upang magsimula factoring ito bagay-bagay out. 1620 01:16:28,330 --> 01:16:32,950 Hayaan akong buksan up, bilang isang spoiler, para sa ano ang makikita mo sa P set 7. 1621 01:16:32,950 --> 01:16:38,750 Kung buksan ko up, ngayon, index.php sa bersyon limang ng mga ito, tinitingnan nito paraan 1622 01:16:38,750 --> 01:16:40,730 mas misteriyoso, tinatanggap na. 1623 01:16:40,730 --> 01:16:43,710 >> Ngunit ito, ngayon, ay kung ano ang Tatawag ako ng isang controller na pagkontrol sa 1624 01:16:43,710 --> 01:16:44,770 logic ng aking pahina. 1625 01:16:44,770 --> 01:16:48,510 At maaari mong uri ng itayong muli, intuitively, marahil, kung ano ang nangyayari sa. 1626 01:16:48,510 --> 01:16:50,630 Sa unang linya, ito ay isang maliit na misteriyoso. 1627 01:16:50,630 --> 01:16:54,040 Ngunit napansin ko na nangangailangan, na tulad sa matulis ay kinabibilangan ng, isang file na tinatawag na 1628 01:16:54,040 --> 01:16:55,930 helpers.php. 1629 01:16:55,930 --> 01:16:59,980 At pagkatapos ay ako sa pagtawag, tila, isang function, na tinatawag na pag-render, pagpasa sa 1630 01:16:59,980 --> 01:17:00,850 dalawang argumento. 1631 01:17:00,850 --> 01:17:02,440 >> Ang isa ay quote magpanipi, header. 1632 01:17:02,440 --> 01:17:04,800 At ang iba pa ay, kung anong uri ng sa uri ng data na ito ay, batay sa 1633 01:17:04,800 --> 01:17:07,180 sa aming syntax mas maaga? 1634 01:17:07,180 --> 01:17:08,160 Ito ay isang nauugnay na array. 1635 01:17:08,160 --> 01:17:11,730 Sa partikular, ito ay ang pagpasa sa pamagat may ilang mga metadata na reminds 1636 01:17:11,730 --> 01:17:13,430 sa akin kung ano ito ay at ang halaga nito. 1637 01:17:13,430 --> 01:17:16,340 Pagkatapos ko makita ang isang hard code ul, kaya ilang raw na HTML. 1638 01:17:16,340 --> 01:17:20,020 Ngunit pagkatapos ay ako pabalik sa PHP mode pagtawag ng isang function render. 1639 01:17:20,020 --> 01:17:24,390 Kaya kahit na hindi kailanman ginamit mo HTML o PHP bago, at kahit na ang hitsura 1640 01:17:24,390 --> 01:17:27,480 scarier, kung bakit ito ay marahil mas mahusay na disenyo? 1641 01:17:27,480 --> 01:17:31,310 Ano ang mas mahusay na tungkol dito, batay sa hinuha? 1642 01:17:31,310 --> 01:17:32,130 >> Madla: [hindi marinig] 1643 01:17:32,130 --> 01:17:35,750 >> Tagapagsalita 1: Mas mababa sa kalabisan na walang nalalaman HTML tag, wala nang 1644 01:17:35,750 --> 01:17:38,410 ulo na tag, wala nang body tag sa bawat sumpain file. 1645 01:17:38,410 --> 01:17:41,860 Sa halip, nag ko isinasali ang commonalities at siguro ilagay ang mga ito 1646 01:17:41,860 --> 01:17:45,150 sa isang file na may kaugnayan sa paanuman sa isang header. 1647 01:17:45,150 --> 01:17:48,500 At parehong bagay para sa malapit katawan tag, ang malapit na HTML tag. 1648 01:17:48,500 --> 01:17:52,165 Iyon ay marahil down na dito sa loob ng sa footer sa isang lugar. 1649 01:17:52,165 --> 01:17:57,050 At makikita mo, Problema sa hanay 7, isang maliit na paglilibot sa pamamagitan ng ito. 1650 01:17:57,050 --> 01:17:58,070 >> Kaya kung ano ay namamalagi nang maaga? 1651 01:17:58,070 --> 01:18:03,390 Ang isang bagay na mayroon kaming hindi ang kakayahan pa ay para sa aktwal na mag-imbak ng data. 1652 01:18:03,390 --> 01:18:06,110 At kaya kung ano ang makikita namin simulan upang makita ang Miyerkules, halimbawa, ay na ang iyong 1653 01:18:06,110 --> 01:18:08,450 lumang kaibigan Excel, o mga numero, ay nagbibigay-daan sa iyo upang mag-imbak ng maraming 1654 01:18:08,450 --> 01:18:10,060 data sa mga hanay at haligi. 1655 01:18:10,060 --> 01:18:12,570 Liko out ka maaaring gawin iyon sa kung ano ang tinatawag na isang database, programming. 1656 01:18:12,570 --> 01:18:16,620 isang buhok At ito lumiliko out, pagkatapos na, magagawa naming mag-imbak ng mga bagay tulad ng 1657 01:18:16,620 --> 01:18:20,550 ito, na kung saan makikita mo ang muli sa hanay P 7, ang maramihang mga username at mga 1658 01:18:20,550 --> 01:18:23,690 mga password, sa huli ng na kung saan ay talagang naka-encrypt, halos tulad nila 1659 01:18:23,690 --> 01:18:25,550 ay nasa Hacker edisyon P set 2 ni. 1660 01:18:25,550 --> 01:18:29,600 At sa huli, kakailanganin mong ipatupad ito, ang iyong sariling ETrade-tulad ng website na 1661 01:18:29,600 --> 01:18:32,220 ipinapatupad ng sama-sama CS50 pananalapi. 1662 01:18:32,220 --> 01:18:36,000 >> Panghuli, dahil ikaw nagtutulog dito kaya late ngayon, kung bumalik ka sa bahaging ito 1663 01:18:36,000 --> 01:18:41,120 ng campus, sa 04:00 ngayon, kami ay magbibigay sa iyo ng hindi lamang payo, sa SCES 1664 01:18:41,120 --> 01:18:44,200 Pagpapayo Fair, sa 16:00 sa Maxwell-Dworkin, bibigyan ka namin ng ilang 1665 01:18:44,200 --> 01:18:47,470 Americone Dream, Cherry Garcia, Chocolate gawing kalokohan brownies, tsokolate 1666 01:18:47,470 --> 01:18:50,840 Chip Cookie masa, at, kapag Google Chunky Monkey, makakakuha ka ng ito. 1667 01:18:50,840 --> 01:18:53,620 Kaya lahat ng na naghihintay sa 04:00 PM sa Maxwell-Dworkin. 1668 01:18:53,620 --> 01:18:56,736 Tingnan mo sa Miyerkules pati na rin. 1669 01:18:56,736 --> 01:18:59,960 >> Tagapagsalita 2: Sa susunod na CS50, RJ ay kayang tumanggap in 1670 01:18:59,960 --> 01:19:03,656 1671 01:19:03,656 --> 01:19:04,906 >> RJ: My seksyon! 1672 01:19:04,906 --> 01:19:07,727 1673 01:19:07,727 --> 01:19:08,977 Ha! 1674 01:19:08,977 --> 01:19:12,056 1675 01:19:12,056 --> 01:19:13,306 Oh, 1676 01:19:13,306 --> 01:19:16,374