1 00:00:00,000 --> 00:00:11,470 2 00:00:11,470 --> 00:00:12,764 >> ZVUČNI 1: Sve, desno dobrodošlicu natrag. 3 00:00:12,764 --> 00:00:14,140 Ovo je CS50. 4 00:00:14,140 --> 00:00:16,800 I ovo je početak tjedna devet. 5 00:00:16,800 --> 00:00:19,960 I ovo je početak ostatka vaš put u CS50, u kojoj smo 6 00:00:19,960 --> 00:00:23,170 Prijelaz je sada, konačno, na webu aspekt naravno, gdje ćete 7 00:00:23,170 --> 00:00:26,200 Ocjenjuju da se puno osnove koje smo bili izvoz tjednima 8 00:00:26,200 --> 00:00:29,270 Još uvijek se vratiti u posjet, ili proganjati, nas. 9 00:00:29,270 --> 00:00:33,440 Ali sada, vidjet ćete da je to red veličine lakše 10 00:00:33,440 --> 00:00:36,540 ostvariti određene zadatke i riješiti određene probleme - 11 00:00:36,540 --> 00:00:41,050 i to toliko da čak i ako ste mislili određeni problem setovi su zabavno u njihovom 12 00:00:41,050 --> 00:00:44,200 svojstven način, mislim da ćete naći da je p postavljena 7, p podesiti 8, a zatim 13 00:00:44,200 --> 00:00:47,990 konačnici, konačni projekt bit će sve više zadovoljavajuće jer ćete 14 00:00:47,990 --> 00:00:51,830 Ocjenjuju da se počnemo uzeti zdravo za gotovo Sada stvari kao upravljanje memorijom, a 15 00:00:51,830 --> 00:00:54,190 pokazivače, i što se događa na ispod haube. 16 00:00:54,190 --> 00:00:57,310 I opet, tematska, tijekom cijelog semestar je to raslojavanje 17 00:00:57,310 --> 00:00:58,030 i raslojavanje. 18 00:00:58,030 --> 00:01:00,530 I sad smo vrsta up Ovdje, stoji na 19 00:01:00,530 --> 00:01:01,930 ramena tjedana prošlosti. 20 00:01:01,930 --> 00:01:05,360 >> Sada, podsjećaju iz posljednji put da smo govorio o tome kako internet radio. 21 00:01:05,360 --> 00:01:08,120 I to je možda pretjerano, ali sjetite se da 22 00:01:08,120 --> 00:01:12,960 svako računalo na svijetu ima IP adresu, iako to je malo 23 00:01:12,960 --> 00:01:14,570 pojednostavljivanje dalje. 24 00:01:14,570 --> 00:01:18,180 A one adrese koriste se za jedinstveno identificiraju strojevi, tako da 25 00:01:18,180 --> 00:01:22,010 kad pošaljete podatke, ili paketa, da se tako izrazim, oni mogu imati podrijetlo 26 00:01:22,010 --> 00:01:24,000 adresa i adresa odredišta. 27 00:01:24,000 --> 00:01:27,830 A te iste IP adrese mogu se koristiti i za dobro i za zlo, 28 00:01:27,830 --> 00:01:29,270 da vas pratiti, primjerice. 29 00:01:29,270 --> 00:01:32,200 U stvari, svatko od vas s laptopa sada otvoriti, ili telefon u 30 00:01:32,200 --> 00:01:35,070 džep, ima IP adresu Na Harvardu mreži. 31 00:01:35,070 --> 00:01:39,120 I to nije sve što je teško koreliraju da se tko i gdje 32 00:01:39,120 --> 00:01:40,180 su ovih dana. 33 00:01:40,180 --> 00:01:42,090 No, više o tome možda u budućnosti. 34 00:01:42,090 --> 00:01:46,510 >> Sad sam mislila da ću se vratiti neke Sjećanja [? poboljšala?] i dati vam 35 00:01:46,510 --> 00:01:49,360 jedan isječak iz showa vas Možda će vam upoznati. 36 00:01:49,360 --> 00:01:52,710 Ako smo mogli dim svjetla za samo nekoliko sekundi. 37 00:01:52,710 --> 00:01:53,960 Predstava Numb3rs. 38 00:01:53,960 --> 00:01:57,510 39 00:01:57,510 --> 00:02:00,540 >> ZVUČNI 2: To je 32-bitni IPP4 adresa. 40 00:02:00,540 --> 00:02:01,610 >> ZVUČNI 3: IPP, kao u internetu? 41 00:02:01,610 --> 00:02:02,968 >> ZVUČNI 2: Privatni mreža. 42 00:02:02,968 --> 00:02:04,960 Za Amita privatnoj mreži. 43 00:02:04,960 --> 00:02:16,930 44 00:02:16,930 --> 00:02:19,602 Ona je tako nevjerojatna. 45 00:02:19,602 --> 00:02:21,030 >> ZVUČNI 3: Hajde, Charlie. 46 00:02:21,030 --> 00:02:21,490 >> ZVUČNI 2: To je. 47 00:02:21,490 --> 00:02:22,470 Adresa IP ogledala. 48 00:02:22,470 --> 00:02:27,680 Ona nam dopušta da gledaju ono ona radi u stvarnom vremenu. 49 00:02:27,680 --> 00:02:30,930 >> Zvučnik 1: U redu, tako da nekoliko stvari nije u redu s ovom slikom. 50 00:02:30,930 --> 00:02:32,920 Tako je jedan, a ovo je prihvatljivo, to je zapravo 51 00:02:32,920 --> 00:02:34,400 nije valjana IP adresa. 52 00:02:34,400 --> 00:02:38,190 Valjana IP adresa mora biti brojevi u obliku w.x.y.z, gdje je svaki od 53 00:02:38,190 --> 00:02:40,000 ta slova je 0-255. 54 00:02:40,000 --> 00:02:42,330 Ali to je u redu, jer baš kao i Filmovi u kojima oni lažni telefonski brojevi, 55 00:02:42,330 --> 00:02:43,520 im lažni IP adrese. 56 00:02:43,520 --> 00:02:45,230 Vi zapravo ne pogoditi pravi poslužiteljima. 57 00:02:45,230 --> 00:02:46,760 >> No, um vas, ovo je browser. 58 00:02:46,760 --> 00:02:50,760 I preglednici ne počnu izlaza Računalo kod ovako. 59 00:02:50,760 --> 00:02:54,230 A ako pogledamo malo dublje, primijetit da je jezik koji oni vide 60 00:02:54,230 --> 00:02:57,040 Na zaslonu se jezik zove Cilj C, što je jezik u 61 00:02:57,040 --> 00:02:59,520 iPhone aplikacije koje su napisane, osobito one koje uključuju 62 00:02:59,520 --> 00:03:03,540 bojice, kao što možete vidjeti iz izvorni kod ovdje. 63 00:03:03,540 --> 00:03:06,600 64 00:03:06,600 --> 00:03:07,560 >> OK, ja sam mislio da je to smiješno. 65 00:03:07,560 --> 00:03:12,240 Dakle, ovo je isječak koda nema apsolutno nema nikakve veze s bilo to 66 00:03:12,240 --> 00:03:13,940 Posebno je epizoda o tome. 67 00:03:13,940 --> 00:03:17,590 Dakle, šala je vrsta ljudi na uzimajući za to odobrena. 68 00:03:17,590 --> 00:03:20,220 No, to nije sve što je teško dobiti ove tehničke detalje pravo. 69 00:03:20,220 --> 00:03:21,980 I ja bih vas ohrabriti. 70 00:03:21,980 --> 00:03:25,530 A zapravo, možda 50 vrlo dobro plijena Puno TV emisije i filmove ili ste 71 00:03:25,530 --> 00:03:27,320 jer vidjet ćete da je to samo nije moguće ono što su oni 72 00:03:27,320 --> 00:03:28,630 radi na zaslonu. 73 00:03:28,630 --> 00:03:31,750 Ali doista, to je kod koji ste Možda ga vidjeti u iPhone aplikacija 74 00:03:31,750 --> 00:03:33,640 ili Mac OS aplikacija. 75 00:03:33,640 --> 00:03:35,685 To je ništa uopće veze s sigurnosti. 76 00:03:35,685 --> 00:03:38,610 Tako bi se za oko više takve stvari kao što je to zabava. 77 00:03:38,610 --> 00:03:42,720 >> No, danas smo početi roniti u stvarno Duboko se čitav niz jezika. 78 00:03:42,720 --> 00:03:45,410 Dapače, jedna od sveobuhvatni Zaključci ovog dijela 79 00:03:45,410 --> 00:03:51,815 tečaj nije naučiti programirati u PHP-u, ne učiti SQL po sebi, ne 80 00:03:51,815 --> 00:03:58,100 naučiti JavaScript sama po sebi, nego da se naučiti kako učiti 81 00:03:58,100 --> 00:04:02,030 sami za nove jezike, jer, doista, počinjemo se sada 82 00:04:02,030 --> 00:04:06,020 Trening kotači off, tako da nakon Naravno-a na kraju, ne očekivati ​​20 83 00:04:06,020 --> 00:04:08,890 Specifikacija stranica vam reći kako provesti neki program. 84 00:04:08,890 --> 00:04:12,970 Imate dovoljno sastojke u tvojoj, Um, i dovoljno alata u vašem alata 85 00:04:12,970 --> 00:04:15,750 kit, s kojom bi početi izgradnja rješenja za probleme od interesa za 86 00:04:15,750 --> 00:04:19,130 što za neke učenike skupine, za neke istraživački projekt, ili stvarno ništa 87 00:04:19,130 --> 00:04:20,140 od interesa za vas. 88 00:04:20,140 --> 00:04:24,150 >> Dakle, prema tom cilju, prisjetiti kako je to Slika mi je nacrtao ga posljednji put. 89 00:04:24,150 --> 00:04:27,620 A to je dva računala, klijenta i Sever, razgovarati jedna s drugom. 90 00:04:27,620 --> 00:04:31,130 I protokol, jezik, tako da govore, da su ta dva računala dogoditi 91 00:04:31,130 --> 00:04:33,220 da govori zove HTTP. 92 00:04:33,220 --> 00:04:37,730 A to je samo protokol korišten od strane računala za prijenos podataka preko 93 00:04:37,730 --> 00:04:38,710 World Wide Web. 94 00:04:38,710 --> 00:04:41,770 Web, naravno, samo jedan servis koji se izvodi na vrhu 95 00:04:41,770 --> 00:04:43,000 tzv internet. 96 00:04:43,000 --> 00:04:48,660 Ono što je još jedan servis dostupan na Najbolje od interneta ovih dana? 97 00:04:48,660 --> 00:04:51,600 Neki drugi protokol ili - što je to? 98 00:04:51,600 --> 00:04:52,300 >> PUBLIKA: FTP. 99 00:04:52,300 --> 00:04:52,790 >> ZVUČNI 1: FTP. 100 00:04:52,790 --> 00:04:54,630 Dakle, File Transfer Protocol je još jedan. 101 00:04:54,630 --> 00:04:56,050 Većina vas vjerojatno niste iskoristili. 102 00:04:56,050 --> 00:04:58,830 No, većina od vas vjerojatno su koristili stvari kao što su Gchat, ili instant 103 00:04:58,830 --> 00:05:00,970 poruka, općenitije, Sigurno e-mail. 104 00:05:00,970 --> 00:05:04,470 A oni, također, su usluge koje se izvode na Najbolje od interneta, jer u 105 00:05:04,470 --> 00:05:08,180 Kraj je dana, internet sama zapravo samo dobili podatke od točke A do 106 00:05:08,180 --> 00:05:12,480 točku B. I to koristi niz Čestice sama, jedan od njih ili dvije 107 00:05:12,480 --> 00:05:17,340 većina njih uopće zove TCP / IP, što će reći da je jedno računalo 108 00:05:17,340 --> 00:05:19,960 internet zapravo može raditi različite stvari, e-mail, 109 00:05:19,960 --> 00:05:20,980 i web, i tako dalje. 110 00:05:20,980 --> 00:05:22,220 Google ne puno toga. 111 00:05:22,220 --> 00:05:26,310 Pa kako su te usluge jedinstveno identificiran, nije mi rekao, na računalu 112 00:05:26,310 --> 00:05:29,080 koji zapravo može raditi više stvari? 113 00:05:29,080 --> 00:05:29,860 >> Broj priključka. 114 00:05:29,860 --> 00:05:34,180 A to su samo proizvoljna čovjeka konvencije kao što je web 80, 443 je 115 00:05:34,180 --> 00:05:36,580 kodiran web, 25 je e-mail. 116 00:05:36,580 --> 00:05:38,230 A tu je i trsovi drugima. 117 00:05:38,230 --> 00:05:41,860 A ti brojevi su jednostavno uključeni u ti paketi informacija, te 118 00:05:41,860 --> 00:05:46,230 virtualna omotnicu, koji zapravo sadržavao je zahtjev ili odgovor. 119 00:05:46,230 --> 00:05:51,300 >> Dakle, kad se vratiš odgovor na web, obično, ne vidim bilo 120 00:05:51,300 --> 00:05:54,780 Brojevi neurednosti u smislu Kod statusa od odgovora. 121 00:05:54,780 --> 00:05:56,770 Vi zapravo ne vide unutrašnjem djelovanju 122 00:05:56,770 --> 00:05:58,090 pakete koji dolaze natrag. 123 00:05:58,090 --> 00:05:59,860 No, 200 je doista znači OK. 124 00:05:59,860 --> 00:06:01,530 A to znači da je sve u redu. 125 00:06:01,530 --> 00:06:02,870 Možda ste vidjeli gomilu njih. 126 00:06:02,870 --> 00:06:05,710 Koji je vjerojatno najčešći da ste vidjeli na webu? 127 00:06:05,710 --> 00:06:05,980 >> 404. 128 00:06:05,980 --> 00:06:07,330 To samo znači da datoteka nije pronađena. 129 00:06:07,330 --> 00:06:08,270 To znači da je netko zabrljao. 130 00:06:08,270 --> 00:06:11,450 Ti si po mistyping URL, ili netko drugi učinio dajući vam 131 00:06:11,450 --> 00:06:15,100 valjan URL, ili oni brišu file i URL je još uvijek 132 00:06:15,100 --> 00:06:16,130 se koristi od strane ljudi. 133 00:06:16,130 --> 00:06:19,670 Dakle, bilo koji broj razloga može objasniti Zato datoteka nije pronađena. 134 00:06:19,670 --> 00:06:22,990 I vidjet ćete, u tjednima koji dolaze, ove druge kodove pogrešaka, a vi ćete 135 00:06:22,990 --> 00:06:24,195 iskoristiti neke od njih. 136 00:06:24,195 --> 00:06:25,760 Najgore je 500. 137 00:06:25,760 --> 00:06:29,820 Ako dobijete 500 pogrešku u kodu ste napisao, mislim da je kao svojevrsno 138 00:06:29,820 --> 00:06:33,290 analogni od SEG grešaka u Svijet web programiranja. 139 00:06:33,290 --> 00:06:34,560 To nije baš tako strašna. 140 00:06:34,560 --> 00:06:36,660 No, to samo znači da je, negdje, da zajebao. 141 00:06:36,660 --> 00:06:38,260 Dakle, veselimo se onima. 142 00:06:38,260 --> 00:06:39,910 >> No, da vidimo možemo li vidim ih u kontekst. 143 00:06:39,910 --> 00:06:43,460 Pusti me da ovdje pregledniku i učiniti sljedeće. 144 00:06:43,460 --> 00:06:45,710 Dakle, ovo je Chrome, koji se dogoditi da ugraditi u aparatu. 145 00:06:45,710 --> 00:06:49,410 No, većina ovih dana svaki preglednik ima Neki ekvivalentno funkcionalnosti. 146 00:06:49,410 --> 00:06:52,610 Ja ću ići gore Chromea izbornik, i idite na Alati, a ja ću otići 147 00:06:52,610 --> 00:06:53,990 Razvojni alati za. 148 00:06:53,990 --> 00:06:57,040 I vidjet ćete da je ova mala ploča Otvara se u dnu prozora. 149 00:06:57,040 --> 00:07:00,190 Još jedan prečac, da budem iskren, da sam najčešće koristite osobno je Desnim klikom miša 150 00:07:00,190 --> 00:07:04,370 Kontrola ili kliknite bilo gdje na webu poštom i samo ići na Pregledajte element. 151 00:07:04,370 --> 00:07:07,440 I to ne samo da će se otvoriti to imati za vas. 152 00:07:07,440 --> 00:07:10,230 Također će se otvoriti, konkretno, Elementi dio na 153 00:07:10,230 --> 00:07:11,430 lijeva strana. 154 00:07:11,430 --> 00:07:12,460 >> Tako smo, naravno, gledajući Google. 155 00:07:12,460 --> 00:07:13,930 Oni su promijenili svoj logo i danas. 156 00:07:13,930 --> 00:07:20,200 No, ako sam se pomaknite prema dolje do ovdje, primijetit da se pod elemenata, vidiš 157 00:07:20,200 --> 00:07:23,460 ono što se zove HTML, Hypertext Markup Jezik, a to je jezik 158 00:07:23,460 --> 00:07:26,000 da je to i sve web stranice, Stvarno, pišu u. 159 00:07:26,000 --> 00:07:28,950 No, to je zapravo formatiran za nas tako mnogo više readably 160 00:07:28,950 --> 00:07:29,970 nego što je normalno. 161 00:07:29,970 --> 00:07:34,810 U stvari, ako smanjivanje, a ja umjesto da Samo desni klik ili Control kliknite 162 00:07:34,810 --> 00:07:39,630 kliknite na stranicu, a zatim idite na Pregled Izvor stranice, to je doslovce ono što 163 00:07:39,630 --> 00:07:42,150 Google poslao dolje na moj pregledniku. 164 00:07:42,150 --> 00:07:46,480 >> Pa neka osoba ili osobe koje je napisao Google.com korištenja izvornog koda. 165 00:07:46,480 --> 00:07:47,790 Većina to nije HTML. 166 00:07:47,790 --> 00:07:49,340 To je zapravo jezik zove JavaScript, koji 167 00:07:49,340 --> 00:07:50,880 vratit ćemo se u srijedu. 168 00:07:50,880 --> 00:07:55,580 No, ono što Chrome, a što svaki preglednik može učiniti za nas, je vrsta vidjet 169 00:07:55,580 --> 00:07:59,610 Posljednjih sve ometanja luda sintakse, i ponovno bijeli prostor 170 00:07:59,610 --> 00:08:02,940 za nas, pa čak i sintakse, ili Colorize stvari za nas. 171 00:08:02,940 --> 00:08:06,470 Dakle, vidjet ćete da je to takozvani Razvojni alati ugrađeni u preglednicima 172 00:08:06,470 --> 00:08:10,830 učinit će vaš život, tako, tako mnogo lakše jer možete istraživati, putem ovog izbornika 173 00:08:10,830 --> 00:08:13,940 sučelje, upravo ono što je temeljni izvorni kod za 174 00:08:13,940 --> 00:08:15,750 bilo koju stranicu na internetu. 175 00:08:15,750 --> 00:08:19,070 I doista, ovo je jedan od najvažnijih učinkovite načine kako bi naučili kako to učiniti 176 00:08:19,070 --> 00:08:22,860 nešto novo, barem ako stranica nije tako složeno da dominiraju, je 177 00:08:22,860 --> 00:08:26,700 početi poking okolo to HTML, izgleda na svojoj tzv CSS, koji ćemo doći 178 00:08:26,700 --> 00:08:30,310 na malo, kao i, kako bi se razumijevanje o tome kako da programer 179 00:08:30,310 --> 00:08:33,480 provodi neke određene značajka stranici. 180 00:08:33,480 --> 00:08:36,530 >> No, više tehnički zanimljiva desnom Sada će to biti ovaj. 181 00:08:36,530 --> 00:08:39,429 Ako idem na karticu Network, neka je sada jasno ovo. 182 00:08:39,429 --> 00:08:43,429 Idem malo kliknite križ simbol ovog mjesta, a zatim 183 00:08:43,429 --> 00:08:45,630 ići na druge web stranice. 184 00:08:45,630 --> 00:08:48,430 A ja sam samo će se upisati u Facebook.com. 185 00:08:48,430 --> 00:08:51,940 Ne HTTP, HTTPS nema, nema WWW. 186 00:08:51,940 --> 00:08:53,850 Idemo vidjeti što se zapravo događa ovdje. 187 00:08:53,850 --> 00:08:55,030 >> Upišite. 188 00:08:55,030 --> 00:08:58,480 Sada primjetiti hrpu stvari jednostavno pojavio se u ovom donjem panelu, u 189 00:08:58,480 --> 00:09:00,285 Osim na web stranici pojavljuju u vrhu. 190 00:09:00,285 --> 00:09:04,890 Idem za pomicanje natrag gore u Mreža karticu ovdje, a ja ću 191 00:09:04,890 --> 00:09:06,080 kliknite na prvom redu. 192 00:09:06,080 --> 00:09:10,580 Ono što ovaj alat će nam otkrivaju je svaki od HTTP zahtjeva 193 00:09:10,580 --> 00:09:13,550 koja brzo jednostavno ode natrag i naprijed između moj preglednik 194 00:09:13,550 --> 00:09:14,930 Facebookov i poslužitelja. 195 00:09:14,930 --> 00:09:17,830 I tako svaki od tih redaka predstavlja jedan takav zahtjev ili 196 00:09:17,830 --> 00:09:20,970 odgovor, jedan ili više od one virtualne omotnicu. 197 00:09:20,970 --> 00:09:24,080 Ili više ležerno, to je kao osobu kao osoba, kupac u 198 00:09:24,080 --> 00:09:26,710 Restoran, tražeći nešto opet, i opet, i opet. 199 00:09:26,710 --> 00:09:29,400 A konobar drži dovođenje ga natrag jednu po jednu. 200 00:09:29,400 --> 00:09:33,850 >> Pa sad, ako ja uvećanje na to, primijetit a to će biti jedna od onih stvari 201 00:09:33,850 --> 00:09:36,600 da ste dobrodošli, a potiče igrati sa sami, jer smo 202 00:09:36,600 --> 00:09:38,150 neće proći kroz sve Potanko. 203 00:09:38,150 --> 00:09:40,070 No primijetite postoji Nekoliko sub Kartice ovdje - 204 00:09:40,070 --> 00:09:43,700 Zaglavlja, Pregled, odgovor, Kolačići, i vremena. 205 00:09:43,700 --> 00:09:48,280 Samo ću pogledati zaglavlja za sada, jer to su mala 206 00:09:48,280 --> 00:09:53,600 sastojci se nalaze unutar ovojnice toj pomogne doći do podataka i od mjesta. 207 00:09:53,600 --> 00:09:57,590 >> Tako je prvi, neka mi kliknete, Pregled Izvor pored zaglavlja zahtjeva. 208 00:09:57,590 --> 00:10:01,910 Postoji zahtjev da se moj browser, Chrome, u ovom slučaju, poslana unutar 209 00:10:01,910 --> 00:10:02,910 da su virtualne omotnicu. 210 00:10:02,910 --> 00:10:04,800 Vi ćete se prisjetiti prošlog tjedna sam Ručno upisali, dok je 211 00:10:04,800 --> 00:10:06,380 lažno se preglednik. 212 00:10:06,380 --> 00:10:09,980 Zatim je podsjetio na poslužitelj da je to u potrazi za domaćina zove 213 00:10:09,980 --> 00:10:10,835 Facebook.com. 214 00:10:10,835 --> 00:10:13,630 A tu je i malo više kompliciranih Informacije koje ćemo mahati 215 00:10:13,630 --> 00:10:14,830 naše ruke za sada. 216 00:10:14,830 --> 00:10:18,640 >> Ali, ako sam početi pomicati prema dolje sada ovaj prozor, neka mi se da 217 00:10:18,640 --> 00:10:19,980 odgovor zaglavlja. 218 00:10:19,980 --> 00:10:23,270 To je ono što je u virtualnom omotnici koja se vratila iz 219 00:10:23,270 --> 00:10:24,095 Facebook.com. 220 00:10:24,095 --> 00:10:27,390 I ako kliknete Vidi izvor jednostavno vidjeti sirovi tekst o tome, 221 00:10:27,390 --> 00:10:28,400 primijetiti nekoliko stvari. 222 00:10:28,400 --> 00:10:32,130 Jedan, Facebook također govori isto protokol, verzija 1.1 istih. 223 00:10:32,130 --> 00:10:33,390 Dakle, to je lijepo. 224 00:10:33,390 --> 00:10:36,820 Ali status kod 301, preselio trajno. 225 00:10:36,820 --> 00:10:38,880 >> Pa, gdje je pakao je Facebook ići? 226 00:10:38,880 --> 00:10:40,430 Što se to pokušava prenijeti i na nas? 227 00:10:40,430 --> 00:10:44,310 Pa, primijetit ovdje postoji još jedan header zove vez. 228 00:10:44,310 --> 00:10:51,050 Pa zašto je Facebook mi je reći da su trajno preseljena na tom URL-u 229 00:10:51,050 --> 00:10:53,580 uz Location? 230 00:10:53,580 --> 00:10:54,962 Zaboravio sam na www. 231 00:10:54,962 --> 00:10:56,250 >> Dakle, to je bio moj izbor. 232 00:10:56,250 --> 00:11:00,450 U stvari, većina nas rijetko, vjerojatno, upišite www.whatever.com ovih dana. 233 00:11:00,450 --> 00:11:03,390 No, ispostavilo se administratoru sustava, kao što su Facebook, može 234 00:11:03,390 --> 00:11:06,800 podesiti poslužitelja na način da je bilo Facebook.com radi, ili 235 00:11:06,800 --> 00:11:12,450 www.Facebook.com radi, ili, uistinu, bilo kao prefiks ispred svojih 236 00:11:12,450 --> 00:11:13,210 naziv domene. 237 00:11:13,210 --> 00:11:14,500 Dakle, što ste to učinili za nas. 238 00:11:14,500 --> 00:11:16,910 I oni su nam preusmjeravanje, vjerojatno za neke tehničke, 239 00:11:16,910 --> 00:11:18,100 neki od marketinških razloga. 240 00:11:18,100 --> 00:11:21,570 Oni samo žele canonicalize Na www.Facebook.com. 241 00:11:21,570 --> 00:11:24,040 >> Ali to nije sasvim je. 242 00:11:24,040 --> 00:11:28,560 Ako sam dođite ovdje, neka je vidjeti što se događa. 243 00:11:28,560 --> 00:11:30,810 Ovo je priča mi smo trajno preseljena 244 00:11:30,810 --> 00:11:33,450 http://www.Facebook.com. 245 00:11:33,450 --> 00:11:36,620 Pa pogledajmo drugom zahtjevu da moj browser šalje. 246 00:11:36,620 --> 00:11:40,070 Nažalost, to izgleda kao Facebook je preselila opet, jer drugi 247 00:11:40,070 --> 00:11:44,420 Zahtjev, odabirom taj URL, umjesto, , kaže da je, također, preselio 248 00:11:44,420 --> 00:11:45,010 trajno. 249 00:11:45,010 --> 00:11:48,140 I neka mi dođite ovdje na odgovor zaglavlja. 250 00:11:48,140 --> 00:11:51,530 Gdje je Facebook sada nestao? 251 00:11:51,530 --> 00:11:52,680 >> Dakle HTTPS. 252 00:11:52,680 --> 00:11:56,130 Tako sada Facebook je počeo, osobito u svjetlu tekuće 253 00:11:56,130 --> 00:11:59,750 događaji u posljednjih nekoliko mjeseci, a posebno i Također u posljednjih nekoliko godina 254 00:11:59,750 --> 00:12:03,670 da prisili sve svoje korisnike, u dobro način, da bi koristi HTTPS, što je više 255 00:12:03,670 --> 00:12:06,210 osigurali, iako nije posve siguran. 256 00:12:06,210 --> 00:12:10,000 I tako je sada moja stranica, moj preglednik će zatražiti ovaj treći URL. 257 00:12:10,000 --> 00:12:14,710 I sada, konačno, dobili smo inače nevidljivog 200 OK. 258 00:12:14,710 --> 00:12:18,830 >> Dakle, ono što se u svijetu sve ovi ostali reci ovdje. 259 00:12:18,830 --> 00:12:22,630 Doslovno sam upisali samo jednu stvar, i moj Preglednik izgleda kao da su zatražili 260 00:12:22,630 --> 00:12:23,840 20 neke čudne stvari. 261 00:12:23,840 --> 00:12:24,640 Što je to? 262 00:12:24,640 --> 00:12:25,810 >> PUBLIKA: Skripte? 263 00:12:25,810 --> 00:12:28,460 >> ZVUČNI 1: Skripte, pa drugi slika pisani jezikom zove 264 00:12:28,460 --> 00:12:30,780 JavaScripta, što, opet, mi ćemo pogledajte malo srijedu. 265 00:12:30,780 --> 00:12:32,760 Što još? 266 00:12:32,760 --> 00:12:33,390 Stil listova. 267 00:12:33,390 --> 00:12:36,350 Tako nešto u jeziku zove CSS, što ćemo vidjeti u malo. 268 00:12:36,350 --> 00:12:40,690 Animacije i JPEG i PNG datoteke, i slike, i filmskih datoteka - bez obzira na web stranicu 269 00:12:40,690 --> 00:12:43,280 je najvjerojatnije u oblik datoteke. 270 00:12:43,280 --> 00:12:46,750 I tako ono što smo vidjeli na lijevoj na desnoj strani nalazi se sve datoteke 271 00:12:46,750 --> 00:12:50,280 da je Chrome je imao za preuzimanje, rekurzivno, ako će, kako bi se 272 00:12:50,280 --> 00:12:52,430 sastaviti cjelinu stranici. 273 00:12:52,430 --> 00:12:56,210 >> Dakle, ono što smo vidjeli maloprije s Googleom, ako ja kliknite na elemenata 274 00:12:56,210 --> 00:13:00,470 kartici, ovaj, sigurno, je HTML, jezik koji sastavlja ovu stranicu. 275 00:13:00,470 --> 00:13:01,890 No, tu je trsovi ostalog. 276 00:13:01,890 --> 00:13:02,640 Tu je logo. 277 00:13:02,640 --> 00:13:04,680 Ima onih plavo-ish Ikone tamo. 278 00:13:04,680 --> 00:13:07,610 A tu je još uvijek na drugi elementi stranica koja se možda 279 00:13:07,610 --> 00:13:08,610 zasebne datoteke. 280 00:13:08,610 --> 00:13:11,860 >> Dakle, ono što je lijepo o pregledniku koji je to izgleda na jeziku idemo 281 00:13:11,860 --> 00:13:14,690 početi pisati, ili ste već počeo pisati u P skupa 7, likovima 282 00:13:14,690 --> 00:13:17,970 gdje su ti spisi živjeti, a odlazi i zgrabi ih kao dobro. 283 00:13:17,970 --> 00:13:21,010 A ja ne mogu dovoljno naglasiti, čak iako su neki to može izgledati malo 284 00:13:21,010 --> 00:13:24,820 kompliciranih ili neodoljiv na prvi pogled, učenje kako programirati 285 00:13:24,820 --> 00:13:28,500 aplikacija za web, to je neprocjenjiva je razumjeti kako to 286 00:13:28,500 --> 00:13:29,410 mali alat rade. 287 00:13:29,410 --> 00:13:33,830 To su otprilike kao GDB poput alata, ali mnogo jednostavnije, u konačnici, za korištenje - 288 00:13:33,830 --> 00:13:37,690 i stvarno daje vam oči u ono što uzimamo zdravo za gotovo za 289 00:13:37,690 --> 00:13:39,170 vrlo malo vremena sada. 290 00:13:39,170 --> 00:13:42,270 >> Dakle, što možemo učiniti sada s ova informacija? 291 00:13:42,270 --> 00:13:44,875 Pa, neka je zapravo pogledati pojmovi podlozi HTML. 292 00:13:44,875 --> 00:13:49,025 I mi ćemo odgoditi, kao što smo već, kako bi sekcije ovaj tjedan, do problema 293 00:13:49,025 --> 00:13:53,260 postavljanje 7 specifikaciju, za neke od više pojedinosti o tim jezicima. 294 00:13:53,260 --> 00:13:57,020 Ali neka je vidjeti ako mi se ne može slikati slika onoga što treba razumjeti 295 00:13:57,020 --> 00:13:57,940 Ukupna ovdje. 296 00:13:57,940 --> 00:14:02,280 >> Dakle, HTML, Hypertext Markup Language, nije programski jezik. 297 00:14:02,280 --> 00:14:03,520 Što to zapravo znači? 298 00:14:03,520 --> 00:14:05,690 Dakle HTML izgleda ovako. 299 00:14:05,690 --> 00:14:06,810 A neki od vas već znaju. 300 00:14:06,810 --> 00:14:08,130 Neki od vas su radili ovo za neko vrijeme. 301 00:14:08,130 --> 00:14:10,270 Ali neka je vidjeti ako ne možemo ispuniti u nekim praznine kao dobro. 302 00:14:10,270 --> 00:14:11,760 Dakle primijetiti par stvari ovdje. 303 00:14:11,760 --> 00:14:13,030 Jedna, to je samo tekst. 304 00:14:13,030 --> 00:14:15,960 Pa to je baš kao izvornog koda u C, ili neki drugi jezik. 305 00:14:15,960 --> 00:14:17,750 >> Uočite da se čini da se obrazac ovdje. 306 00:14:17,750 --> 00:14:20,870 Ima udubljenje, ali tehnički udubljenje je samo ljudsko 307 00:14:20,870 --> 00:14:21,205 konvencije. 308 00:14:21,205 --> 00:14:24,980 A preglednici ne zanima ima li novi linije i tabovi željeli smo vidjeti postoji. 309 00:14:24,980 --> 00:14:27,410 Ali primijetite da postoji simetrija ovdje. 310 00:14:27,410 --> 00:14:31,180 Tu je ono što ću nazvati, na vrhu ovu sliku, otvoren tag, odnosno početak 311 00:14:31,180 --> 00:14:33,030 tag, zove HTML. 312 00:14:33,030 --> 00:14:36,800 A onda, dolje, savršeno postrojilo up, baš kao što radimo s vitičastim zagradama, 313 00:14:36,800 --> 00:14:40,910 vidimo otvorenu nosač, naprijed slash, HTML, blizu nosač. 314 00:14:40,910 --> 00:14:44,610 Dakle, to je blizu odgovara tag, ili završna oznaka, za tu stvar. 315 00:14:44,610 --> 00:14:47,990 >> Zajedno, sve unutar takozvana otvorena tag i zatvoriti tag 316 00:14:47,990 --> 00:14:50,440 sastavite ono što ćemo nazvati element. 317 00:14:50,440 --> 00:14:53,910 A vidjet ćemo, u samo nekoliko trenutaka, to je Stvarno mi se sviđa čvor u stablima. 318 00:14:53,910 --> 00:14:57,470 Jer ako mislite o tome sada udubljenje koje se podrazumijeva ovdje, 319 00:14:57,470 --> 00:15:00,780 vrsta ima, kao, baka ili djed čvora zove HTML. 320 00:15:00,780 --> 00:15:06,870 Koliko je djece moglo reći, na temelju Na ovoj slici, HTML element ima? 321 00:15:06,870 --> 00:15:07,720 >> Dakle, vjerojatno dva. 322 00:15:07,720 --> 00:15:10,240 Jedan je glava elementa, očito. 323 00:15:10,240 --> 00:15:11,710 I jedno je tijelo elementa. 324 00:15:11,710 --> 00:15:12,555 A zašto dvoje djece? 325 00:15:12,555 --> 00:15:15,840 Pa, ja sam samo vrsta zaključiti da ako Imam otvorenu glavu oznaku, a zatim 326 00:15:15,840 --> 00:15:17,820 blizu glavu tag, to je element. 327 00:15:17,820 --> 00:15:21,200 A onda, ako postoji još jedan otvoreni tijela oznaku i blizu tijela tag, koji je kao 328 00:15:21,200 --> 00:15:22,340 još jedan element. 329 00:15:22,340 --> 00:15:26,000 Dakle, u smislu da ako ja vrsta rotirati Slika na svojoj strani, što je 330 00:15:26,000 --> 00:15:29,910 kao imati HTML oznaku, a zatim Glava tag, a potom je oznaka, a 331 00:15:29,910 --> 00:15:34,290 onda neki tekst, halo svijet, vise izvan tijela tag sama. 332 00:15:34,290 --> 00:15:36,620 >> Dakle, možemo stvoriti sliku da može izgledati ovako. 333 00:15:36,620 --> 00:15:38,020 Oblici su proizvoljna. 334 00:15:38,020 --> 00:15:40,870 Ali primijetite da sam koristio neku vrstu Elipsa na vrhu za zastupanje 335 00:15:40,870 --> 00:15:41,860 se dokumentirati. 336 00:15:41,860 --> 00:15:45,980 Ispada ne može biti druge stvari unutar web stranice koje sam ne 337 00:15:45,980 --> 00:15:46,940 izvučeni ovdje. 338 00:15:46,940 --> 00:15:50,800 Tako ćemo i družiti HTML čvora off tzv čvor dokumenta. 339 00:15:50,800 --> 00:15:53,730 I onda imamo glavu i Tijelo i titula, obavijest, 340 00:15:53,730 --> 00:15:55,360 koje je smješteno dalje. 341 00:15:55,360 --> 00:15:58,650 Ja se ne zamaram stavljanjem dodatne linije pauze unutrašnjost oznaka. 342 00:15:58,650 --> 00:16:02,710 To samo osjetio kao da je dobivanje malo previše rječit. 343 00:16:02,710 --> 00:16:07,000 Tako sam ga ostavio u jednom retku se, s otvoren naslov, halo svijet, blizu naslovu. 344 00:16:07,000 --> 00:16:09,380 I onda imamo neki tekst vise off ovdje. 345 00:16:09,380 --> 00:16:12,200 >> Dakle, ova slika će se vratiti nas kad smo zaroniti u JavaScriptu. 346 00:16:12,200 --> 00:16:15,110 A razumijevanje da kada pisati HTML ovako, ono 347 00:16:15,110 --> 00:16:16,250 je browser radi? 348 00:16:16,250 --> 00:16:19,290 Pa, ne moramo se brinuti o kako ovo radi, ili s kojim 349 00:16:19,290 --> 00:16:23,090 algoritam, ali na kraju dana, kada je preglednik primi kao HTML 350 00:16:23,090 --> 00:16:27,510 da, iz Facebooka ili Googlea, ona analizira je, da se tako izrazim, što ga čita, 351 00:16:27,510 --> 00:16:31,160 s nešto poput fread, na gornjem dna, s lijeva na desno, i kao što je to 352 00:16:31,160 --> 00:16:36,300 shvaća, oh, otvoreno oznaku, a zatim zatvorite tag, ona počinje da malloc, da tako kažemo, 353 00:16:36,300 --> 00:16:37,800 čvor u stablu. 354 00:16:37,800 --> 00:16:41,130 A kad naiđe, kao što smo implicira ovdje s uvale, 355 00:16:41,130 --> 00:16:45,400 čvor dijete, to mallocs čvor za to i dodaju da se na stablo. 356 00:16:45,400 --> 00:16:49,150 >> Tako da je stablo strukture, binarna stabla, ternarnom stabala, a veća stabla, kako 357 00:16:49,150 --> 00:16:53,380 smo pogled na tjedan ili dva prije, obavijest da je isti princip je 358 00:16:53,380 --> 00:16:54,220 vraća nas. 359 00:16:54,220 --> 00:16:57,590 A tko provodi, Chrome god Tim je to učinio, vjerojatno je 360 00:16:57,590 --> 00:17:00,800 provesti neku vrstu stabla strukture ispod poklopca motora. 361 00:17:00,800 --> 00:17:05,329 I to samo po sebi vjerojatno u jezik kao što je C ili C + +, ili niži 362 00:17:05,329 --> 00:17:08,540 jezik više razine da ćemo sada koristite vrhu webu. 363 00:17:08,540 --> 00:17:11,200 >> Tako sada, možda, to će više smisla. 364 00:17:11,200 --> 00:17:15,420 Stvarni tetovaža s nekim tipom koji je možda požaliti na kraju, kakve. 365 00:17:15,420 --> 00:17:17,359 U redu, u redu, tako da puno web humor. 366 00:17:17,359 --> 00:17:18,599 To nije stvarno događa više, tako i danas. 367 00:17:18,599 --> 00:17:19,560 Tako ćemo krenuti dalje. 368 00:17:19,560 --> 00:17:20,180 U redu. 369 00:17:20,180 --> 00:17:22,760 >> Tako ćemo pogledati sada na nekoliko primjera. 370 00:17:22,760 --> 00:17:24,660 Najjednostavniji mogući što bi moglo biti to. 371 00:17:24,660 --> 00:17:29,170 Ja ću ići naprijed i otvoriti u gedit datoteku pod nazivom hello.php. 372 00:17:29,170 --> 00:17:31,730 373 00:17:31,730 --> 00:17:36,330 I unutrašnjost ovdje, ja ću se brzo Upravo to, printf, citiram 374 00:17:36,330 --> 00:17:38,590 završen citat, "Hello World". 375 00:17:38,590 --> 00:17:42,460 >> Dakle, obavijest, a ja ću raditi svoj obrnute kose n, Nisam potrudio da se proglasi glavna. 376 00:17:42,460 --> 00:17:45,310 Ispada, u PHP-u, a puno jezici, ne morate glavna 377 00:17:45,310 --> 00:17:46,090 Funkcija po sebi. 378 00:17:46,090 --> 00:17:47,720 Vi samo možete početi pisati vaš program. 379 00:17:47,720 --> 00:17:51,210 Sada, kad sam spremiti ovu datoteku, primijetit sam ćete morati učiniti sljedeće. 380 00:17:51,210 --> 00:17:55,360 Neću koristiti napraviti, a ja nisam će koristiti Dong, jer PHP, za razliku od 381 00:17:55,360 --> 00:17:57,400 C, nije sastaviti jezik. 382 00:17:57,400 --> 00:18:01,400 To je ono što se zove tumače jezik, što znači da ga pokrenuti 383 00:18:01,400 --> 00:18:04,650 kao ulaz preko drugog programa zove tumača. 384 00:18:04,650 --> 00:18:08,150 A taj program ga čita, odozgo prema dna, s lijeva na desno, a ne 385 00:18:08,150 --> 00:18:09,290 što god to da napraviti. 386 00:18:09,290 --> 00:18:12,920 >> Dakle, u ovom slučaju ovdje imam jedan redak koji kaže printf. 387 00:18:12,920 --> 00:18:17,990 Dakle, kad sam pokrenuti ovaj izvorni kod, hello.php, iako je program koji 388 00:18:17,990 --> 00:18:22,830 dogodi, povoljno, zvati PHP, taj program PHP će čitati 389 00:18:22,830 --> 00:18:26,120 ovu sliku, od vrha do dna, s lijeva na desno, i to će učiniti ono što sam 390 00:18:26,120 --> 00:18:30,110 reći mu da to učinite - izvršavanje koda, a ako on ne priznaje nešto, samo 391 00:18:30,110 --> 00:18:31,320 to pljuvanje iz. 392 00:18:31,320 --> 00:18:34,940 Dakle, ja ću ići naprijed i pokrenuti PHP hello.php. 393 00:18:34,940 --> 00:18:37,110 Upišite. 394 00:18:37,110 --> 00:18:39,690 >> I to nije dosta što sam namjeravao. 395 00:18:39,690 --> 00:18:40,530 Pa, zašto je to? 396 00:18:40,530 --> 00:18:43,910 Pa, PHP je jezik koji je zapravo osmišljen kako bi biti prilično 397 00:18:43,910 --> 00:18:46,150 isprepleteni s weba. 398 00:18:46,150 --> 00:18:50,460 Prilikom izrade web stranice s ovom jeziku PHP, kao što ćemo uskoro vidjeti, mi ćemo 399 00:18:50,460 --> 00:18:54,560 Želite učiniti nešto poput tiska iz linije kao što je ovaj. 400 00:18:54,560 --> 00:18:55,940 >> Dakle, ja ću to učiniti. 401 00:18:55,940 --> 00:19:00,810 Otvoreno nosač, upitnik, PHP, i sada sam samo ide alineje samo da bi 402 00:19:00,810 --> 00:19:01,960 stvari lijepe. 403 00:19:01,960 --> 00:19:04,910 A sada ću napraviti pitanje obilježiti bliski nosač. 404 00:19:04,910 --> 00:19:06,270 Dakle, ima malo asimetrije ovdje. 405 00:19:06,270 --> 00:19:07,490 Vi to ne rade. 406 00:19:07,490 --> 00:19:10,530 I to ne učinite kosu crtu, tako da PHP je malo drugačiji. 407 00:19:10,530 --> 00:19:14,610 >> Ali sada, ako sam reprizu ovaj program, PHP hello.php, sada sam 408 00:19:14,610 --> 00:19:16,090 zapravo dobili Hello World. 409 00:19:16,090 --> 00:19:17,750 I vidjet ćemo zašto je to vrijedno. 410 00:19:17,750 --> 00:19:20,960 Jedan, to mi omogućuje da odredite, super izrijekom, ovo je 411 00:19:20,960 --> 00:19:22,480 broj, izvršiti ovu. 412 00:19:22,480 --> 00:19:25,480 I to je istina ono što ti posebne oznake znače ovdje. 413 00:19:25,480 --> 00:19:30,330 >> No, to također znači da ako sam samo učiniti nešto kao cilj sam ovdje, da 414 00:19:30,330 --> 00:19:34,000 znači da je, doslovno, da će samo biti otisnuti bez potrebe za 415 00:19:34,000 --> 00:19:36,850 printf zovu, ili ispis, ili bilo koji sličan funkciju. 416 00:19:36,850 --> 00:19:39,445 Dakle, mi ćemo se vratiti na to u samo trenutak. 417 00:19:39,445 --> 00:19:40,470 >> Prvo, neka je to učiniti. 418 00:19:40,470 --> 00:19:43,950 Unutar uređaja, imamo katalog zove Vhosts, za virtualni 419 00:19:43,950 --> 00:19:47,000 Domaćini, slash lokalni domaćin, slash javnosti. 420 00:19:47,000 --> 00:19:50,240 Dakle, to je malo preopširan, ali duga priča Ukratko, uređaj namijenjen ne 421 00:19:50,240 --> 00:19:53,770 Samo za podršku C. Također dizajniran da podržava PHP. 422 00:19:53,770 --> 00:19:57,440 Ali također je osmišljen kako bi se web poslužitelja i poslužitelja baze podataka. 423 00:19:57,440 --> 00:20:00,230 I to je dizajniran, i doista konfigurirati, da podsjeća na bilo 424 00:20:00,230 --> 00:20:04,230 komercijalna web hosting tvrtka koja možda ćete platiti $ 5 mjesečno za, 425 00:20:04,230 --> 00:20:05,040 100 dolara mjesečno za. 426 00:20:05,040 --> 00:20:08,200 Što god je usluga, to je konfiguriran biti vrlo slična 427 00:20:08,200 --> 00:20:10,170 stvarni svijet proizvodnje poslužitelja. 428 00:20:10,170 --> 00:20:13,485 >> A što to znači da je pokrenut na Aparat je web poslužitelj softver. 429 00:20:13,485 --> 00:20:15,060 To se događa da se zove Apache. 430 00:20:15,060 --> 00:20:17,790 To je samo besplatno, i open source, i vrlo popularna. 431 00:20:17,790 --> 00:20:23,260 I mi smo konfigurirati Apache znati da ako sam posjetiti određenu URL, s 432 00:20:23,260 --> 00:20:28,060 Krom ili bilo kojeg preglednika unutar aparata, gledati u ovaj direktorij 433 00:20:28,060 --> 00:20:31,030 za datoteke koje korisnik traži. 434 00:20:31,030 --> 00:20:32,790 >> Drugim riječima, mi ćemo ići naprijed i učiniti. 435 00:20:32,790 --> 00:20:36,890 Unutar mog javnog telefonskog imenika, idem ići naprijed i stvoriti datoteku 436 00:20:36,890 --> 00:20:39,580 zove index.html. 437 00:20:39,580 --> 00:20:41,000 To mi daje karticu ovdje. 438 00:20:41,000 --> 00:20:44,210 I ja ću ići jako brzo i ići naprijed i prasak iz 439 00:20:44,210 --> 00:20:45,010 ovaj program ovdje. 440 00:20:45,010 --> 00:20:48,410 DOCTYPEhtml, koji za sada, samo Pretpostavimo da imate upisati. 441 00:20:48,410 --> 00:20:53,490 To je samo tajanstvena tag, to nije doista HTML tag, koji određuje da 442 00:20:53,490 --> 00:20:55,050 Ovdje dolazi neki HTML. 443 00:20:55,050 --> 00:20:57,400 >> Ja ću ići naprijed i ponovno ono što smo vidjeli maloprije. 444 00:20:57,400 --> 00:20:58,650 Evo šef stranici. 445 00:20:58,650 --> 00:21:01,170 Unutar glave bio je - 446 00:21:01,170 --> 00:21:01,890 tako naslov. 447 00:21:01,890 --> 00:21:04,340 Tako ćemo pozdraviti svijet. 448 00:21:04,340 --> 00:21:06,570 I onda ovdje je tijelo tag. 449 00:21:06,570 --> 00:21:08,580 Dopustite mi zatvoriti tijelo oznaku. 450 00:21:08,580 --> 00:21:12,280 A onda je ovdje i ja ću reći, samo za jasnoću, Hello World. 451 00:21:12,280 --> 00:21:14,770 >> Tako je to, vjerojatno, najjednostavnije Moguće web stranica koju 452 00:21:14,770 --> 00:21:15,770 može učiniti da je valjana. 453 00:21:15,770 --> 00:21:17,030 To je sintaktički vrijedi. 454 00:21:17,030 --> 00:21:18,620 Sve što je otvorila je zatvorena. 455 00:21:18,620 --> 00:21:20,910 Sve je lijepo u stilizirana i razvedena. 456 00:21:20,910 --> 00:21:23,600 Pa da vidimo sad kako sam mogu pristupiti ovoj datoteku. 457 00:21:23,600 --> 00:21:25,540 >> Pa, dopustite mi da odem u Chrome ovdje. 458 00:21:25,540 --> 00:21:35,050 I neka mi ići na http://localhost/index.html. 459 00:21:35,050 --> 00:21:36,200 Dakle, ono što je lokalni domaćin? 460 00:21:36,200 --> 00:21:39,400 Pa, većina bilo kojeg računala u svijetu, Linux, Mac OS, Windows, ima nadimak 461 00:21:39,400 --> 00:21:40,680 zove lokalni domaćin. 462 00:21:40,680 --> 00:21:42,900 Dakle, ako ste ikada željeli razgovarati na svoje računalo - 463 00:21:42,900 --> 00:21:45,140 doduše, čudno refleksno - 464 00:21:45,140 --> 00:21:47,080 ti sebe nazivaš lokalni domaćin. 465 00:21:47,080 --> 00:21:50,390 Bez obzira što vaš stvarni računalo zove, bilo da je Davidov MacBook 466 00:21:50,390 --> 00:21:52,490 Klima, ili nešto više rječit kao što je to. 467 00:21:52,490 --> 00:21:57,760 >> Dakle, ovaj URL očito namjerava koristiti HTTP razgovarati s lokalnom računalu, 468 00:21:57,760 --> 00:22:00,800 isto računalo, aparat, i to će se pitati za, samo se 469 00:22:00,800 --> 00:22:02,570 pogodite, što je datoteka? 470 00:22:02,570 --> 00:22:04,460 Index.html. 471 00:22:04,460 --> 00:22:08,650 Tako je aparat podešen u unaprijed znati da ako sam traži 472 00:22:08,650 --> 00:22:13,460 za nešto kao index.html, potražite u mapu pod nazivom Vhosts, u 473 00:22:13,460 --> 00:22:17,950 mapa pod nazivom localhost, u mapi u njemu se zove javnosti. 474 00:22:17,950 --> 00:22:20,400 To je mjesto gdje sve moje javnost Datoteke će biti. 475 00:22:20,400 --> 00:22:22,610 Tako sam sada ću pogoditi Enter. 476 00:22:22,610 --> 00:22:27,100 >> I prokleto, tu je zabranjeno da Poruka, inače poznat kao 403, u 477 00:22:27,100 --> 00:22:28,490 brojčani kod za njega. 478 00:22:28,490 --> 00:22:30,130 Dakle, ono što je ovdje krivo? 479 00:22:30,130 --> 00:22:33,210 Pa, to nije dovoljno samo staviti file unutar moje mape. 480 00:22:33,210 --> 00:22:35,790 Trebam zapravo učiniti sljedeće. 481 00:22:35,790 --> 00:22:40,210 >> Pustite me da idem u moj Vhosts imeniku, u localhost, u javnosti, i neka 482 00:22:40,210 --> 00:22:41,680 ja to ls crtica l. 483 00:22:41,680 --> 00:22:44,510 A postoji nekoliko drugih stvari Ovdje za današnje potrebe. 484 00:22:44,510 --> 00:22:50,540 No primijetite na lijevoj strani, pored na index.html, vidimo samo jedan RW. 485 00:22:50,540 --> 00:22:53,560 I u prošlosti, što RW je stajao? 486 00:22:53,560 --> 00:22:54,240 >> Samo čitati ni pisati. 487 00:22:54,240 --> 00:22:58,000 Činjenica da je riječ RW lijevo znači da, vlasnik ove datoteke, može li 488 00:22:58,000 --> 00:22:59,020 čitati ni pisati ga. 489 00:22:59,020 --> 00:23:05,010 Ali moram da svi ljudi u Svijet pročitati ovo, iako ne pisati. 490 00:23:05,010 --> 00:23:09,650 Dakle, ja ću mijenjati način file, chmod, sve plus r dati 491 00:23:09,650 --> 00:23:13,910 svi pročitali dozvolu na file zove index.html. 492 00:23:13,910 --> 00:23:18,040 >> A ako sada Ponovite li crtica l, obavijest da, ovamo, neki više 493 00:23:18,040 --> 00:23:19,160 R-a su popped up. 494 00:23:19,160 --> 00:23:21,090 A za sada, spec. ide u više detalja. 495 00:23:21,090 --> 00:23:24,450 Za P skupa 7, to samo znači svima Sada možete pročitati ovu datoteku. 496 00:23:24,450 --> 00:23:27,790 Ako sam se vratiti u pregledniku Sada i ponovno, voila. 497 00:23:27,790 --> 00:23:28,750 Pozdrav svijetu. 498 00:23:28,750 --> 00:23:32,260 >> A ja čak mogu otvoriti svoje Chrome alate i vidjeti, baš kao s Googleom i 499 00:23:32,260 --> 00:23:34,590 Facebook da mi je HTML, formatiran malo 500 00:23:34,590 --> 00:23:35,930 različito, a colorized. 501 00:23:35,930 --> 00:23:40,450 Ako idem na mrežnoj kartici i ponovno poštom, primijetiti da je dobili 502 00:23:40,450 --> 00:23:42,900 zatražiti da se Chrome slanje na aparatu. 503 00:23:42,900 --> 00:23:46,020 Ima 200 za to Konkretno sliku. 504 00:23:46,020 --> 00:23:49,340 Dakle, ukratko, to je kako sve to razni dijelovi dolaze zajedno. 505 00:23:49,340 --> 00:23:53,530 To samo tako dogodi da web poslužitelj mi smo koristeći upravo sada nije daljinski, 506 00:23:53,530 --> 00:23:54,210 kao što je Facebook. 507 00:23:54,210 --> 00:23:58,330 To je doslovno na istom računalu, što je sasvim u redu. 508 00:23:58,330 --> 00:24:00,590 >> Dakle, što više možemo učiniti na web stranici? 509 00:24:00,590 --> 00:24:03,110 Pa, jednostavno, neka je povjetarac kroz Nekoliko tih stvari. 510 00:24:03,110 --> 00:24:07,860 No, dopustite mi da ide naprijed i ponovno Gedit sa index.html. 511 00:24:07,860 --> 00:24:13,980 I neka mi ići naprijed i pozdraviti CS50, spremiti ovu datoteku, vratite se na 512 00:24:13,980 --> 00:24:16,260 preglednik, stvarno underwhelming promjena. 513 00:24:16,260 --> 00:24:19,130 >> No, što ako želimo da se zapravo link na nešto danas? 514 00:24:19,130 --> 00:24:23,480 Tako ispada da možemo imati poveznice u HTML-a koji su samo oznake 515 00:24:23,480 --> 00:24:24,140 sami. 516 00:24:24,140 --> 00:24:27,320 To se događa da se zove sidro tag. href jednaka 517 00:24:27,320 --> 00:24:33,190 https://www.cs50.net, www.cs50.net citat blizu, blizu nosač. 518 00:24:33,190 --> 00:24:35,230 A sada da vidimo što ostalo dolazi sljedeći. 519 00:24:35,230 --> 00:24:36,500 >> Ja sam otvorio oznaku. 520 00:24:36,500 --> 00:24:38,990 I sada treba dati fraze poput CS50. 521 00:24:38,990 --> 00:24:40,600 Dopustite mi zatvoriti oznaku. 522 00:24:40,600 --> 00:24:42,010 I primijetiti nekoliko stvari. 523 00:24:42,010 --> 00:24:45,270 Iako je ovo zagonetna stvar ovdje, nisam ga ponoviti kada 524 00:24:45,270 --> 00:24:46,010 zatvoriti oznaku. 525 00:24:46,010 --> 00:24:48,230 Vi samo zatvoriti oznaku sa svojim imenom samo. 526 00:24:48,230 --> 00:24:50,940 I to je ono što je poznato kao atribut s vrijednošću. 527 00:24:50,940 --> 00:24:56,070 Značajke jednostavno promijeniti ponašanje neke oznake unutar jedne stranice. 528 00:24:56,070 --> 00:24:59,150 >> Dakle, ovo je navodeći da je hyper Referentna, fancy način govoreći 529 00:24:59,150 --> 00:25:03,660 URL za ovu sidro, za to vezu, treba biti CS50.net. 530 00:25:03,660 --> 00:25:07,440 I tekst koji želimo pokazati Korisnik nije da sirovo URL, nego 531 00:25:07,440 --> 00:25:08,730 Riječ CS50. 532 00:25:08,730 --> 00:25:13,710 >> Dakle, ako sada sam ponovno učitavanje, neka mi zumiranje za Jasnoća, neka mi se ponovno učitati stranicu, 533 00:25:13,710 --> 00:25:16,460 primijetiti da imamo tu staru školu plavi podcrtani vezu. 534 00:25:16,460 --> 00:25:20,000 I ako prelazite preko njega, a to se događa biti teško vidjeti, u dnu lijevo 535 00:25:20,000 --> 00:25:23,690 u gornjem lijevom kutu ekrana, primijetit kako ona kaže URL na koji 536 00:25:23,690 --> 00:25:24,430 Ja ću ići. 537 00:25:24,430 --> 00:25:27,940 A ako kliknem tamo, voila, Sada sam izradu web stranice. 538 00:25:27,940 --> 00:25:30,140 I mi smo sami doveli na početnoj stranici. 539 00:25:30,140 --> 00:25:32,670 >> No, ono što primijetite potencijal to nam nudi. 540 00:25:32,670 --> 00:25:34,890 Sigurnost je jako puno u modi ovih dana. 541 00:25:34,890 --> 00:25:41,210 Što ako sam umjesto toga reći nešto poput to, a ja umjesto da ide na, recimo, neka je 542 00:25:41,210 --> 00:25:42,460 vidi, fakeCS50.net. 543 00:25:42,460 --> 00:25:44,660 544 00:25:44,660 --> 00:25:46,360 Osvježi ovu stranicu. 545 00:25:46,360 --> 00:25:50,180 >> U redu, tako da primjetiti to još uvijek izgleda kao da sam ide na CS50, ako lukav oka 546 00:25:50,180 --> 00:25:51,560 Primijetit ćete da ću lažni CS50. 547 00:25:51,560 --> 00:25:54,550 Pretpostavljam da je ovaj domene ne uzima. 548 00:25:54,550 --> 00:25:55,960 U redu, tako da to nije dostupan. 549 00:25:55,960 --> 00:25:56,600 Dakle, to je dobro. 550 00:25:56,600 --> 00:25:57,900 Nitko zapravo ima tu domenu. 551 00:25:57,900 --> 00:26:00,380 >> No, budimo malo više zlonamjerni jer je to glupo. 552 00:26:00,380 --> 00:26:02,240 Što ako smo promijeniti to Paypal. 553 00:26:02,240 --> 00:26:09,960 A što ako mi to nazivamo, kao, www.paypal.badguy.com, 554 00:26:09,960 --> 00:26:12,070 što je domena. 555 00:26:12,070 --> 00:26:13,700 To vjerojatno postoji. 556 00:26:13,700 --> 00:26:16,260 Pa sad neka mi se ponovno učitati stranicu. 557 00:26:16,260 --> 00:26:22,890 I ovdje imamo svojevrsnu phishing napada, P-H-I-S-H-I-N-G, koji je 558 00:26:22,890 --> 00:26:26,760 glupo riječi dao za napad koji pokušava ribe informacija, ili, bolje 559 00:26:26,760 --> 00:26:30,450 ipak, novac, od naroda tricking ih u pružanju informacija koje 560 00:26:30,450 --> 00:26:31,990 inače ne bi mogli učiniti. 561 00:26:31,990 --> 00:26:33,500 Ovo izgleda sasvim čitljiv, zar ne? 562 00:26:33,500 --> 00:26:34,930 Moram imati link ovdje da Paypal.com. 563 00:26:34,930 --> 00:26:37,700 564 00:26:37,700 --> 00:26:40,430 U pravednosti, ako sam ga sexed se s nekim grafike, možemo napraviti da izgleda 565 00:26:40,430 --> 00:26:41,310 više poput PayPala. 566 00:26:41,310 --> 00:26:41,510 Točno? 567 00:26:41,510 --> 00:26:43,815 Zato što sam mogao, kao na stranu, Mogao bih otići na Paypal.com. 568 00:26:43,815 --> 00:26:47,110 A upravo smo vidjeli kako ja mogu vidi sve svoje HTML. 569 00:26:47,110 --> 00:26:50,560 Upravo sam ga mogao kopirati i ponovno Estetika Paypal, nego ići 570 00:26:50,560 --> 00:26:51,490 stara škola ovdje. 571 00:26:51,490 --> 00:26:55,010 Ali primjetiti, naravno, i to je nešto malo dalje, samo u dnu 572 00:26:55,010 --> 00:26:59,190 lijevom kutu, kao u točki 10. font, vidiš li što si URL 573 00:26:59,190 --> 00:27:01,310 zapravo će biti dovelo do. 574 00:27:01,310 --> 00:27:06,580 >> I tako, ako ste ikada stečen spam govoreći ići naprijed, a vi ste račun 575 00:27:06,580 --> 00:27:07,420 je ugrožena. 576 00:27:07,420 --> 00:27:10,615 Molimo kliknite ovaj link i javite nam vaša lozinka, tako da možemo osigurati da ste 577 00:27:10,615 --> 00:27:13,010 da, nikada ne učiniti. 578 00:27:13,010 --> 00:27:14,180 Te stvari bi trebao ići bez rekavši. 579 00:27:14,180 --> 00:27:17,670 No, to je predivno zabavno, a tragična, kako je svake godine to čini 580 00:27:17,670 --> 00:27:19,660 dogoditi da neki ne-nula broj ljudi. 581 00:27:19,660 --> 00:27:21,400 >> I to je ljepota phishing napada. 582 00:27:21,400 --> 00:27:23,160 Možete poslati e-mail milijuna. 583 00:27:23,160 --> 00:27:27,720 A čak i ako je 0,01% ljudi zapravo kliknite na Paypal i dajete 584 00:27:27,720 --> 00:27:31,040 lozinku, to je još uvijek nule broj ljudi koji su upravo dajući 585 00:27:31,040 --> 00:27:32,200 da njihov novac. 586 00:27:32,200 --> 00:27:36,170 A slanje e-pošte, naravno, sasvim je jednostavno i, u biti, bez 587 00:27:36,170 --> 00:27:36,970 ovih dana. 588 00:27:36,970 --> 00:27:40,410 >> Pa ne duljimo, predivno lijepa ideja, zar ne? 589 00:27:40,410 --> 00:27:44,620 Prije mnogo godina, to je bio najraniji web, omogućujući mrežu 590 00:27:44,620 --> 00:27:46,330 hiperveze među resursa. 591 00:27:46,330 --> 00:27:49,520 Ali tako brzo bi to moglo biti koristi se za bolesne svrhe. 592 00:27:49,520 --> 00:27:54,100 A e, dovoljno je reći, to dana, HTML imaju ugrađen unutra. 593 00:27:54,100 --> 00:27:55,410 >> Pa, neka mi samo jedna stvar. 594 00:27:55,410 --> 00:27:58,640 I mi ćemo odgoditi uglavnom odjeljak u Problem postavili sedam kako bi se omogućilo da 595 00:27:58,640 --> 00:28:00,000 istražiti pojedinosti. 596 00:28:00,000 --> 00:28:01,990 No, dopustite mi da ide naprijed i učiniti nekoliko stvari ovdje. 597 00:28:01,990 --> 00:28:04,840 Ja ću otići i proglasi ono što se naziva div, ili 598 00:28:04,840 --> 00:28:06,080 Podjela, na stranici. 599 00:28:06,080 --> 00:28:07,770 Dopustite mi zatvoriti taj div tag. 600 00:28:07,770 --> 00:28:11,460 >> A ja ću reći up Ovdje vrhu stranice. 601 00:28:11,460 --> 00:28:14,940 A onda u nastavku ove, ja ću učiniti nešto kao neki drugi div, i ovu 602 00:28:14,940 --> 00:28:17,800 tag, i to na dnu stranice. 603 00:28:17,800 --> 00:28:18,840 I neka ga spasi. 604 00:28:18,840 --> 00:28:21,040 >> Pa sad idemo natrag u moj dosje. 605 00:28:21,040 --> 00:28:22,120 Vrlo underwhelming. 606 00:28:22,120 --> 00:28:25,520 No, ono što se koristi za podjelu, ispod poklopca motora, je to je zapravo 607 00:28:25,520 --> 00:28:26,920 Lijepo strukturni element. 608 00:28:26,920 --> 00:28:30,300 To nema nikakve estetike tako daleko možemo vidjeti, osim, očito, 609 00:28:30,300 --> 00:28:31,890 stavljajući stvari na novim linijama. 610 00:28:31,890 --> 00:28:36,290 >> No, obavijest, kao na stranu, samo udaranje Unesite ne to cut u HTML kao što je to 611 00:28:36,290 --> 00:28:39,840 nema u C. Vi možda mislite da je to će staviti lijep veliki jaz između 612 00:28:39,840 --> 00:28:41,300 vrhu i na dnu stranice. 613 00:28:41,300 --> 00:28:43,420 No, to je ignorirao. 614 00:28:43,420 --> 00:28:48,040 Bijeli prostor suštini je zanemarena u web-stranice, osim prvi 615 00:28:48,040 --> 00:28:51,530 razmak znakova, ili prijevozu vratiti, da ste hit na tipkovnici. 616 00:28:51,530 --> 00:28:55,370 Ako želite više redaka, što morate odrediti sami. 617 00:28:55,370 --> 00:28:59,080 >> Tako ću učiniti nekoliko stvari ovdje pokazati što se događa. 618 00:28:59,080 --> 00:29:02,700 Ja ću dodati atribut koji postoji I opet, način da naučite 619 00:29:02,700 --> 00:29:07,110 Koje osobine postoje, ono oznake postoje, Stvarno je online reference. 620 00:29:07,110 --> 00:29:09,750 HTML je vrsta jezika - to je nije programski jezik. 621 00:29:09,750 --> 00:29:12,460 To je jezik za označavanje - da je nakon dobro pola sata, možda, sat vremena s 622 00:29:12,460 --> 00:29:15,930 je, sigurno ćete shvatiti, većina vjerojatno, osnovna ideja. 623 00:29:15,930 --> 00:29:20,350 A onda Google search daleko je sve mogući oznake koje bi mogle biti 624 00:29:20,350 --> 00:29:21,170 zanima 625 00:29:21,170 --> 00:29:24,290 I po spec., to je sasvim dobrodošli i poticati ovdje. 626 00:29:24,290 --> 00:29:26,120 >> Pa sad neka mi ići naprijed i učiniti nešto ovako. 627 00:29:26,120 --> 00:29:28,690 Pozadine-boja. 628 00:29:28,690 --> 00:29:32,060 I sada, ja ću učiniti nešto kao što su crvena, zarez. 629 00:29:32,060 --> 00:29:33,970 A možete to učiniti u nekoliko različitih načina. 630 00:29:33,970 --> 00:29:36,770 Ja sam samo vrsta je tipkanje kao super izrijekom moguće. 631 00:29:36,770 --> 00:29:41,960 >> No, ispostavilo se da je ova vrijednost je ovdje ono što se zove CSS, Cascading Style 632 00:29:41,960 --> 00:29:43,700 Listovi, što je još jedan jezik uopce. 633 00:29:43,700 --> 00:29:46,770 CSS nema veze s otvaranje i zatvaranje tagova oznake. 634 00:29:46,770 --> 00:29:48,230 To ima veze s svojstvima. 635 00:29:48,230 --> 00:29:52,660 >> A osobine su jednostavno ključ vrijednost parova, što samo znači neku riječ, 636 00:29:52,660 --> 00:29:54,680 debelog crijeva, a zatim neke druge riječi. 637 00:29:54,680 --> 00:29:57,940 A ako imate više one, ili samo ovdje, možete ga završiti 638 00:29:57,940 --> 00:29:59,390 zarez, samo za jasnoću. 639 00:29:59,390 --> 00:30:01,370 Ali i to, također, će raditi ovdje. 640 00:30:01,370 --> 00:30:02,500 >> Sada što se to učiniti? 641 00:30:02,500 --> 00:30:03,610 Vjerojatno možete pogoditi. 642 00:30:03,610 --> 00:30:05,930 Dopustite mi da ide naprijed i učitajte ovu stranicu. 643 00:30:05,930 --> 00:30:07,300 I sad je stvarno dolazi zajedno. 644 00:30:07,300 --> 00:30:09,150 Dakle vrhu moje stranice je crvena. 645 00:30:09,150 --> 00:30:12,380 No, ono što je ključno je da, sam spomenuo ranije, da je div vam daje 646 00:30:12,380 --> 00:30:13,220 podjela na stranici. 647 00:30:13,220 --> 00:30:14,410 I to je zapravo ono što čini. 648 00:30:14,410 --> 00:30:17,920 To u osnovi dijeli stranicu u pravokutnik koji možete onda 649 00:30:17,920 --> 00:30:18,720 manipulirati. 650 00:30:18,720 --> 00:30:22,330 >> I ovaj pojam pravokutnika je vrsta uvjerljiv u tome, ako misle 651 00:30:22,330 --> 00:30:26,410 najviše bilo koju web stranicu, tu je vjerojatno Neki struktura na njega. 652 00:30:26,410 --> 00:30:29,620 Većina vas vjerojatno se rijetko viđa Facebookov stranica, ako ste prijavljeni 653 00:30:29,620 --> 00:30:30,440 u sve vrijeme. 654 00:30:30,440 --> 00:30:33,920 >> No, na početnoj stranici Facebooka, postoji nekakav div uz vrh. 655 00:30:33,920 --> 00:30:36,140 I to se ne bi moglo biti kao jednostavan kao jedan div, ali postoji 656 00:30:36,140 --> 00:30:37,560 pravokutno područje koje ima. 657 00:30:37,560 --> 00:30:40,290 Ostatak stranice je kao veliki div, kao što je mnogo 658 00:30:40,290 --> 00:30:41,910 Veći pravokutno područje. 659 00:30:41,910 --> 00:30:44,540 Pa ne duljimo, samo što ovi mali izgrađeni su, 660 00:30:44,540 --> 00:30:49,250 sposobnost modela stvari što su pravokutnici, jesu li široki ili uski, također možete 661 00:30:49,250 --> 00:30:53,680 bi potencijalno stupce, omogućuje vam da nokautirati stranice, stvarno, no vi 662 00:30:53,680 --> 00:30:54,100 Željeli. 663 00:30:54,100 --> 00:30:56,170 Mi uistinu samo grebanje površine ovdje. 664 00:30:56,170 --> 00:30:59,820 >> Doista, ako sam napraviti jedan drugoga, neka mi ići naprijed i učiniti stil, 665 00:30:59,820 --> 00:31:05,410 pozadine-boja, mi ćemo učiniti nešto kao i plava, bliski citati. 666 00:31:05,410 --> 00:31:06,620 Idemo to reload. 667 00:31:06,620 --> 00:31:08,260 Dakle, sada je sve još ružnije. 668 00:31:08,260 --> 00:31:11,520 Ali sada sam može vrsta pokaže moj P postavili pet vještine, zar ne? 669 00:31:11,520 --> 00:31:12,690 Red. 670 00:31:12,690 --> 00:31:15,640 To me podsjeća na RGB, Crvena Zeleni Plavi trojke. 671 00:31:15,640 --> 00:31:19,330 Pa, ispada u web programiranju, ili web dizajn, što je to, mi smo 672 00:31:19,330 --> 00:31:21,650 još nije programiran ništa po sebi, što može zapravo 673 00:31:21,650 --> 00:31:22,880 ima heksadecimalni kod. 674 00:31:22,880 --> 00:31:26,480 Tako nešto nešto, nešto nešto, nešto nešto. 675 00:31:26,480 --> 00:31:30,650 Tako možete imati šest heksadecimalnim likovi, ili tri, u nekim slučajevima, 676 00:31:30,650 --> 00:31:33,480 a svaki od tih upitnicima mora biti heksadecimalni znamenki, 677 00:31:33,480 --> 00:31:34,985 nula do f. 678 00:31:34,985 --> 00:31:41,000 >> Ako želim imati puno crvene boje, a ne zeleni, a ne plava, što je 679 00:31:41,000 --> 00:31:43,740 suprotno od nule kada se koristi hex? 680 00:31:43,740 --> 00:31:44,480 To je f. 681 00:31:44,480 --> 00:31:51,130 Dakle, ja mogu učiniti FF, nula nula, zero, nula spremiti to, a sada dolaze ovamo. 682 00:31:51,130 --> 00:31:52,700 A ja stvarno ne vidim promjenu. 683 00:31:52,700 --> 00:31:56,230 Dakle, citat završen citat "crvenih" je očito sinonim za sve crveno, 684 00:31:56,230 --> 00:31:57,610 nema zeleni, nema plave. 685 00:31:57,610 --> 00:31:59,960 U međuvremenu, neka je namjerno promijeniti ovo bi biti nešto 686 00:31:59,960 --> 00:32:01,210 slučajna, kao što ABCDF. 687 00:32:01,210 --> 00:32:03,790 688 00:32:03,790 --> 00:32:05,860 >> Da vidimo što je to. 689 00:32:05,860 --> 00:32:08,530 To je jako lijepo plava, Zapravo, Baby Blue. 690 00:32:08,530 --> 00:32:11,820 U redu, tako da su tek sada Nešto slučajne kombinacije 691 00:32:11,820 --> 00:32:12,210 likovi. 692 00:32:12,210 --> 00:32:13,410 Pa nećemo zamarajte se ovdje. 693 00:32:13,410 --> 00:32:15,930 Ali opet, to govori o preciznosti da možete početi 694 00:32:15,930 --> 00:32:19,090 podnijeti zahtjev - čak i ako ste vrlo osvaja prema estetici. 695 00:32:19,090 --> 00:32:21,750 U stvari, ako doista želite biti impresioniran, neka mi ići naprijed i promijeniti 696 00:32:21,750 --> 00:32:23,500 veličinu fonta, primjerice. 697 00:32:23,500 --> 00:32:25,960 I primijetiti zarez, koji se potrebno je tu. 698 00:32:25,960 --> 00:32:29,570 >> Veličina slova, možemo biti samo smiješna Ovdje, 96 bod. 699 00:32:29,570 --> 00:32:31,280 Spremi to. 700 00:32:31,280 --> 00:32:33,670 Wow, to je velika slova. 701 00:32:33,670 --> 00:32:35,490 U redu, tako da je vrlo jednostavno. 702 00:32:35,490 --> 00:32:38,260 I zapravo, u suštini vidite Prva web stranica sam napravio 703 00:32:38,260 --> 00:32:40,060 godina, kada sam prvi put naučili ove stvari. 704 00:32:40,060 --> 00:32:42,190 To je vrlo lako napraviti vrlo odvratne stvari brzo. 705 00:32:42,190 --> 00:32:46,115 >> A ako ste upoznati s Wayback Stroj se na archive.org, što 706 00:32:46,115 --> 00:32:48,210 možete pronaći sve moje grozni preddiplomske web stranice. 707 00:32:48,210 --> 00:32:50,090 Jedan je Kermit žaba na prednjoj strani. 708 00:32:50,090 --> 00:32:53,150 Prošao sam kroz fazu u kojoj sam mislio bilo je dobro uzeti pozadinu 709 00:32:53,150 --> 00:32:56,320 Crvena zavjesa, kad sam saznao kako vam Može li pločica slike opet, i opet, i 710 00:32:56,320 --> 00:32:59,540 opet, ispuniti stranicu s Veliki neukusno crvena zavjesa. 711 00:32:59,540 --> 00:33:03,120 A onda, na sve se to, bio je simbol koju je morao kliknite ući u moj dom 712 00:33:03,120 --> 00:33:04,960 poštom jer je to bila jako u modi. 713 00:33:04,960 --> 00:33:08,870 >> I onda mi je prvi program koji sam ikada napisao nije bio u PHP-u, ali u jeziku 714 00:33:08,870 --> 00:33:12,260 Pearl se zove, napisao knjigu gostiju, koji je stvarno cool stvar koja 715 00:33:12,260 --> 00:33:14,250 Puno ljudi vas očekuju imati na početnoj stranici. 716 00:33:14,250 --> 00:33:17,510 Kada dođete na stranicu, oni žele da za prijavu, i reći tko ste, 717 00:33:17,510 --> 00:33:18,720 i zašto ste tamo. 718 00:33:18,720 --> 00:33:21,320 To je vrlo 1990s stilu web dizajn. 719 00:33:21,320 --> 00:33:24,130 >> No, ovih dana, sigurno, mi smo doći puno dalje. 720 00:33:24,130 --> 00:33:27,560 I vidjet ćete, u sekciji, pa čak i u problemu postavili sedam, prema 721 00:33:27,560 --> 00:33:31,570 utjecati knjižnice ovih dana, to je puno lakše napraviti 722 00:33:31,570 --> 00:33:33,400 ljepše stvari brzo. 723 00:33:33,400 --> 00:33:36,550 Stvarno ovdje, mi smo samo grebanje površina što možete učiniti 724 00:33:36,550 --> 00:33:37,400 stilski. 725 00:33:37,400 --> 00:33:41,660 >> A u stvari, već, neka mi istaknuti da je ovo već postaje ružna, ne 726 00:33:41,660 --> 00:33:46,030 samo estetski, ali u smislu stila mog koda, odnosno 727 00:33:46,030 --> 00:33:47,260 dizajn moj broj. 728 00:33:47,260 --> 00:33:52,350 Ja trenutno imaju comingled HTML, koji je zelenkaste otvorenih oznake tamo, s 729 00:33:52,350 --> 00:33:55,160 CSS svojstva, koja je potpuno čitljiv. 730 00:33:55,160 --> 00:33:57,200 Ovo je stvarno, gdje jezik imala svoje korijene. 731 00:33:57,200 --> 00:34:01,030 >> No, u interesu čist dizajn, baš kao što smo počeli faktoring stvari 732 00:34:01,030 --> 00:34:05,370 iz datoteke u C h. datoteka, neka ja zapravo vježba takvu vrst 733 00:34:05,370 --> 00:34:07,990 Princip i početi raditi ovaj umjesto. 734 00:34:07,990 --> 00:34:13,280 Dopustite mi staviti oznaku stil ovdje, koji Također postoji u HTML-u, a mi ćemo 735 00:34:13,280 --> 00:34:15,330 navesti sljedeće. 736 00:34:15,330 --> 00:34:16,360 Dopustite mi da ovo izbrisati. 737 00:34:16,360 --> 00:34:18,110 Osnovna boja će biti crvena. 738 00:34:18,110 --> 00:34:19,800 Idem ovo izbrisati cijelosti. 739 00:34:19,800 --> 00:34:22,580 Idem da biste dobili osloboditi od stila atribut, a ja idem za jedinstveno 740 00:34:22,580 --> 00:34:24,620 prepoznati ovaj div sa riječju - 741 00:34:24,620 --> 00:34:28,750 proizvoljno, ali opravdano, citat završen citat "top". A id je posebna 742 00:34:28,750 --> 00:34:32,530 atributa koji jedinstveno definira sigurno HTML element 743 00:34:32,530 --> 00:34:33,850 kao da taj id. 744 00:34:33,850 --> 00:34:37,969 >> Ako ja sada želim stiliziranim njega, ovdje u Šef moje stranice, unutar 745 00:34:37,969 --> 00:34:41,730 style tag, primijetiti da Ja mogu napraviti hash vrh. 746 00:34:41,730 --> 00:34:45,300 I onda mogu staviti par kovrčavom aparatić, koji podsjeća na C, a zatim neka 747 00:34:45,300 --> 00:34:47,130 ja zalijepite u tom stilizacije. 748 00:34:47,130 --> 00:34:49,929 I neka mi ići naprijed ovdje i predvidjeti gdje idem s ovim. 749 00:34:49,929 --> 00:34:53,380 Dopustite mi također stvaraju jedan za dno div. 750 00:34:53,380 --> 00:34:58,010 Dopustite mi da zgrabite tu odvratnu kod odozdo ovdje, stavit ću je ovdje, a ja ću biti 751 00:34:58,010 --> 00:35:00,770 malo više analni sada i stilizirana je po samo staviti stvari na svoje vlastite 752 00:35:00,770 --> 00:35:02,540 linije, završava točkom-zarezom. 753 00:35:02,540 --> 00:35:04,430 Dopustite mi da riješi u stilu oznaku. 754 00:35:04,430 --> 00:35:05,320 >> Ali nisam još gotov. 755 00:35:05,320 --> 00:35:07,406 Moram učiniti još jednu stvar. 756 00:35:07,406 --> 00:35:10,070 Da, id jednak citat završen citat, "dno" ili što god id želim 757 00:35:10,070 --> 00:35:11,740 dali taj element. 758 00:35:11,740 --> 00:35:13,420 Sada, neka mi se vratiti ovamo. 759 00:35:13,420 --> 00:35:14,360 A ovo je grozno. 760 00:35:14,360 --> 00:35:15,805 Ja se ne mogu nositi s 96 točke. 761 00:35:15,805 --> 00:35:16,960 Učinimo 24 bod. 762 00:35:16,960 --> 00:35:18,320 Ili što bi mogao biti precizniji. 763 00:35:18,320 --> 00:35:21,800 Vi zapravo možete koristiti piksela, PX, tako da ste stvarno dobili finije zrno 764 00:35:21,800 --> 00:35:23,220 kontrolu nad svoju stranicu. 765 00:35:23,220 --> 00:35:26,860 >> Kao na stranu, to nije nužno najbolja stvar ako korisnici, za 766 00:35:26,860 --> 00:35:29,650 Pristupačnost razloga, žele biti u mogućnosti da se poveća veličina. 767 00:35:29,650 --> 00:35:32,650 Dakle shvatiti da postoje načini radi stvari koje ne moraju nužno 768 00:35:32,650 --> 00:35:34,230 Teško je sve koda. 769 00:35:34,230 --> 00:35:37,220 >> U redu, tako da je veći, 24 bod, nego što je zadano. 770 00:35:37,220 --> 00:35:38,630 No, sada je malo čišći. 771 00:35:38,630 --> 00:35:40,230 I neka mi se ovaj jedan korak dalje. 772 00:35:40,230 --> 00:35:47,220 Baš kao i ideje o header datotekama, primijetiti da smo jedan korak bliže tome. 773 00:35:47,220 --> 00:35:52,000 Imam factoring out, ali još uvijek lijevo, unutar moje stranice, te CSS pravila. 774 00:35:52,000 --> 00:35:56,200 Zašto bi ja želim da se ovo jedan korak dalje, maknuti ovaj uopce, a 775 00:35:56,200 --> 00:35:59,860 staviti ga u zasebnu datoteku? 776 00:35:59,860 --> 00:36:01,070 >> Dakle, ja mogu ponovno koristiti, zar ne? 777 00:36:01,070 --> 00:36:03,155 Ovo je samo vrsta intuicije upravo sada. 778 00:36:03,155 --> 00:36:06,340 Prije sam tvrdio da je to samo uzimajući ružna ima stila 779 00:36:06,340 --> 00:36:08,480 atributi unutrašnjost DIVs sebe. 780 00:36:08,480 --> 00:36:09,750 Ali samo vrsta mislim da kroz. 781 00:36:09,750 --> 00:36:13,560 Kao što je vaša stranica dobiva duže i duže, ako je ste stavljajući ovdje, i ovdje, i 782 00:36:13,560 --> 00:36:18,350 ovdje, i ovdje, sve ove različite Boje i veličine fontova, i druge takve 783 00:36:18,350 --> 00:36:22,550 atribute, na stranici je vrlo brzo će postati upravljati za vas. 784 00:36:22,550 --> 00:36:24,570 >> Ako netko dođe do tebe i kaže, oh, znaš što? 785 00:36:24,570 --> 00:36:28,070 Stvarno bih voljela promijeniti veličinu fonta dva dodatna boda, što 786 00:36:28,070 --> 00:36:31,275 Možda ćete morati otići i pronaći i zamijeniti Veliki broj linija koda. 787 00:36:31,275 --> 00:36:35,170 To je puno uvjerljiviji centralizirati svi takvi estetike ovdje. 788 00:36:35,170 --> 00:36:38,850 No, ako želite ponovno koristiti onima estetike u više web-stranica, svi 789 00:36:38,850 --> 00:36:41,100 uvjerljiviji da, za primjerice, stvoriti datoteku 790 00:36:41,100 --> 00:36:45,290 zove s tim sadržajima. 791 00:36:45,290 --> 00:36:46,680 >> I neka mi to učinili. 792 00:36:46,680 --> 00:36:51,150 793 00:36:51,150 --> 00:36:51,920 Spremi ovu datoteku. 794 00:36:51,920 --> 00:36:55,580 Kažem styles.css, proizvoljna, ali konvencionalno. 795 00:36:55,580 --> 00:36:58,770 Ja ću ga staviti u Johna Harvarda kuće Katalog sada radi jednostavnosti. 796 00:36:58,770 --> 00:37:03,880 A što ja mogu učiniti u mojoj web stranici je dobiti osloboditi od stila oznaku uopce, 797 00:37:03,880 --> 00:37:08,270 i pomalo unintuitively, koristite vezu tag, koji ne daje vam link na 798 00:37:08,270 --> 00:37:13,140 hiperveze, kliknuti smisla, ali gdje sam rekao vezu, href jednaka 799 00:37:13,140 --> 00:37:15,120 styles.css. 800 00:37:15,120 --> 00:37:20,050 A odnos koji taj element je s web stranice je da služi kao 801 00:37:20,050 --> 00:37:21,280 njegov stil list. 802 00:37:21,280 --> 00:37:22,670 >> Pa kako ja znam to? 803 00:37:22,670 --> 00:37:25,950 Jedan, možete samo pročitati priručnik, ili Google okolo, a vi 804 00:37:25,950 --> 00:37:27,000 pogledajte raznih izvora. 805 00:37:27,000 --> 00:37:30,520 Mislim, da je doista je, kako se pokupiti Tehnike kao što je ovaj, i, dosljedno 806 00:37:30,520 --> 00:37:34,720 s ovom idejom da nas učeći nove jezici, opet, vidjet ćete da 807 00:37:34,720 --> 00:37:38,830 postoji samo konačan broj stvari na bilo kojem jeziku koji, jednom kada se 808 00:37:38,830 --> 00:37:41,310 ih, vidjet ćete da ga dobije brže i brže pisati. 809 00:37:41,310 --> 00:37:44,180 Doista, učenje novog programiranja Jezik je tako puno brže nego novi 810 00:37:44,180 --> 00:37:47,380 govornog jezika, jer ove stvari su puno manji i puno više 811 00:37:47,380 --> 00:37:48,820 precizno definiran. 812 00:37:48,820 --> 00:37:51,590 >> Ali sam naglasio malo anomalije ovdje. 813 00:37:51,590 --> 00:37:57,750 Zašto sam istaknuo ovo kosu crtu ovdje? 814 00:37:57,750 --> 00:37:59,420 Jer moram zatvoriti oznaku. 815 00:37:59,420 --> 00:38:00,530 Ja bi trebao zatvoriti oznaku. 816 00:38:00,530 --> 00:38:02,750 A vi ćete naći bezbroj resurse on-line koje ne 817 00:38:02,750 --> 00:38:04,080 nužno bliske oznake. 818 00:38:04,080 --> 00:38:08,770 I realno, to nije strogo potrebne za tehničke i postoje 819 00:38:08,770 --> 00:38:11,950 Razlozi stvarnosti, preglednici su samo prilično tolerantni pogrešaka u webu 820 00:38:11,950 --> 00:38:14,360 Stranice, za bolje ili lošije, ali uglavnom još gore. 821 00:38:14,360 --> 00:38:18,830 >> Dakle, ovo ovdje je samo čišći način kaže nešto glupo kao što je ovaj, 822 00:38:18,830 --> 00:38:22,330 gdje ako želite otvoriti vezi oznaku , ali ga zatvorili, da stvarno nema pojma 823 00:38:22,330 --> 00:38:23,720 sadržaja za vezu oznaku. 824 00:38:23,720 --> 00:38:26,000 To samo znači učitati podnijeti i staviti ga ovdje. 825 00:38:26,000 --> 00:38:30,610 To je kao oštar uključiti u C. Možete otvoriti i zatvoriti oznaku odjednom 826 00:38:30,610 --> 00:38:31,660 u istom oznakom. 827 00:38:31,660 --> 00:38:33,520 I tu je drugi primjeri za to. 828 00:38:33,520 --> 00:38:37,280 To nije način za to, ali br tag, za prijelome redaka, ako sam 829 00:38:37,280 --> 00:38:41,780 stvarno htjela postići ono što sam bio pokušavajući prije udarajući Enter, ako 830 00:38:41,780 --> 00:38:45,380 Ja izričito kažu prijelom retka, prijelom retka, prijelom retka, prijelom retka, a 831 00:38:45,380 --> 00:38:49,100 zatim ponovno ovu stranicu, sada ćete primjetiti da je na dnu stranice je, 832 00:38:49,100 --> 00:38:51,940 Doista, mnogo dalje prema dolje u na dnu stranice. 833 00:38:51,940 --> 00:38:55,840 No, ni to se može učiniti mnogo više čisto sa CSS, te s margine, 834 00:38:55,840 --> 00:38:58,120 i zajedno s drugim takvim estetikom tehnike. 835 00:38:58,120 --> 00:38:59,940 >> Dakle, za sada su Zaključci su to. 836 00:38:59,940 --> 00:39:02,320 U HTML-u, mi smo to stvari zove oznake. 837 00:39:02,320 --> 00:39:04,830 U CSS, imamo te stvari zove svojstva. 838 00:39:04,830 --> 00:39:08,700 Možemo comingle ta dva jezika, bilo pomoću stil atribut, 839 00:39:08,700 --> 00:39:14,240 ili stil tag, ili najbolje još, faktoring to se uopce, kao i mi 840 00:39:14,240 --> 00:39:17,270 u problemu postavili sedam. 841 00:39:17,270 --> 00:39:23,820 Pitanja, onda, o konceptualne osnove ovdje? 842 00:39:23,820 --> 00:39:24,740 >> PUBLIKA: Imam pitanje. 843 00:39:24,740 --> 00:39:25,630 >> ZVUČNI 1: Oh, ispričavam se. 844 00:39:25,630 --> 00:39:28,880 >> PUBLIKA: Zašto ne boji - 845 00:39:28,880 --> 00:39:31,410 >> ZVUČNI 1: Oh, u drugoj kartici? 846 00:39:31,410 --> 00:39:32,232 Ovo ovdje? 847 00:39:32,232 --> 00:39:33,482 >> PUBLIKA: Ne, to je kao - 848 00:39:33,482 --> 00:39:35,330 849 00:39:35,330 --> 00:39:39,480 >> ZVUČNI 1: Oh, to je zato što Bio sam mokar. 850 00:39:39,480 --> 00:39:41,350 Stavio sam sliku na krivom mjestu. 851 00:39:41,350 --> 00:39:47,840 Dakle, ako ja zapravo ga staviti ovdje, a ja chmod je, sve + r za styles.css i 852 00:39:47,840 --> 00:39:52,050 Sada se ponovno učitati stranicu, sad mi dobiti natrag stilizaciju. 853 00:39:52,050 --> 00:39:54,530 I zato što su veličina slova drugačija, ne vidimo sasvim jednako 854 00:39:54,530 --> 00:39:55,010 bijeli prostor. 855 00:39:55,010 --> 00:39:58,240 Umjesto toga vidjeti što je Zadana je umjesto toga. 856 00:39:58,240 --> 00:40:00,050 Dobro pitanje. 857 00:40:00,050 --> 00:40:00,846 Da? 858 00:40:00,846 --> 00:40:02,630 >> PUBLIKA: Zašto je link tag unutar napadača? 859 00:40:02,630 --> 00:40:06,270 >> ZVUČNI 1: Zašto su linkovi tag unutar zaglavlja - 860 00:40:06,270 --> 00:40:07,650 Kratak odgovor, samo zato. 861 00:40:07,650 --> 00:40:08,930 To je ono što je odlučio. 862 00:40:08,930 --> 00:40:10,720 To je mjesto gdje su poveznica oznake ići kada imate ono što se zove 863 00:40:10,720 --> 00:40:13,650 vanjski list stila. 864 00:40:13,650 --> 00:40:16,430 Ostala pitanja? 865 00:40:16,430 --> 00:40:17,770 >> U redu, i neka je to učiniti. 866 00:40:17,770 --> 00:40:20,500 Imamo toliko zabavno Danas nas očekuje. 867 00:40:20,500 --> 00:40:22,480 To je samo grebanje površina CSS. 868 00:40:22,480 --> 00:40:23,010 Učinimo to. 869 00:40:23,010 --> 00:40:25,980 Idemo uzeti pauzu od pet minuta ovdje jer, po mom e-mail, neka je objesiti u 870 00:40:25,980 --> 00:40:27,200 tamo do 02:30-ish danas. 871 00:40:27,200 --> 00:40:28,540 Ali ako moram otići, to je u redu. 872 00:40:28,540 --> 00:40:30,380 No, mi ćemo se kretati nakon što Pet minuta pauze. 873 00:40:30,380 --> 00:40:35,930 I mi ćemo naučiti nešto malo u PHP, MySQL, i još mnogo toga. 874 00:40:35,930 --> 00:40:44,520 >> U redu, tako da ćemo pokušati, sada, vezati Neke od tih ideja zajedno i čine, 875 00:40:44,520 --> 00:40:46,180 kažu, vlastitu tražilicu. 876 00:40:46,180 --> 00:40:48,570 Primijetio sam, a začudo, sljedeće. 877 00:40:48,570 --> 00:40:52,610 Kada ste na Google.com, ti si obično na URL poput ove ovdje 878 00:40:52,610 --> 00:40:54,870 s ništa nakon dot com. 879 00:40:54,870 --> 00:40:59,760 Ali, ako sam potražiti nešto glupo kao mačke, i pritisnite Enter, mi ćemo doći - ne 880 00:40:59,760 --> 00:41:01,300 glupo, ali znate. 881 00:41:01,300 --> 00:41:05,410 >> U redu, tako primijetiti, na vrhu stranice, Sada, URL je, dakako, promijenilo. 882 00:41:05,410 --> 00:41:07,190 A to nije ništa novi u bilo koji od nas. 883 00:41:07,190 --> 00:41:09,290 Vi kliknite na linkove i stvari se događa na webu. 884 00:41:09,290 --> 00:41:11,420 No, ono što je zanimljivo ovdje je sljedeće. 885 00:41:11,420 --> 00:41:14,500 Postoji puno nereda, ali neka mi bacaju stvari koje ja ne 886 00:41:14,500 --> 00:41:16,600 sasvim razumijem ili ne Stvarno izgleda relevantno. 887 00:41:16,600 --> 00:41:18,490 >> Dopustite mi da riješi to. 888 00:41:18,490 --> 00:41:20,030 Dopustite mi da riješi to. 889 00:41:20,030 --> 00:41:22,630 I neka mi samo riješi svega toga. 890 00:41:22,630 --> 00:41:28,840 A sada primijetiti da mačke je u URL, slijedio sa q, a zatim jednako 891 00:41:28,840 --> 00:41:29,710 prijavite se ispred njega. 892 00:41:29,710 --> 00:41:32,110 Tako ispada kako je to način na koji to radi kad je u pitanju 893 00:41:32,110 --> 00:41:33,360 za ulaz i izlaz. 894 00:41:33,360 --> 00:41:37,510 >> Mi smo dugo razgovarali o crne kutije, zar ne? 895 00:41:37,510 --> 00:41:41,650 Dakle, ako je to funkcija provodi Ovdje kao crnu kutiju, to traje unos 896 00:41:41,650 --> 00:41:45,290 i proizvodi izlaz, dobro, znači prema kojima omogućavaju ulaz 897 00:41:45,290 --> 00:41:49,270 Web stranica je putem, često, svoje URL-ova. 898 00:41:49,270 --> 00:41:52,850 Vi jednostavno stavite upitnika a zatim tipku iznosi vrijednost. 899 00:41:52,850 --> 00:41:56,740 A onda možda znak za struju, a zatim još jedan ključni jednaka vrijednost, onda možda 900 00:41:56,740 --> 00:41:58,810 jedan znak za struju, ključna jednaka vrijednost. 901 00:41:58,810 --> 00:42:03,030 Tako se prođe u ključevima i vrijednosti, para ulaza. 902 00:42:03,030 --> 00:42:07,050 >> Dakle, ako sam pogodio Upišite se sada, što je Zanimljivo o Googleu je da sve 903 00:42:07,050 --> 00:42:10,420 Izbrisao sam da nereda ne pojavljuje biti strogo potrebno. 904 00:42:10,420 --> 00:42:15,120 Sve što trebate poslati na Googleu je pitanje Mark q jednako mačke dobiti 905 00:42:15,120 --> 00:42:16,160 natrag neke mačke. 906 00:42:16,160 --> 00:42:20,160 Pa, implikacija da je, onda, Ako se sam povući se gedit, ja sam počeo 907 00:42:20,160 --> 00:42:24,360 što moj vlastitu tražilicu ovdje u datoteci pod nazivom seach0.html. 908 00:42:24,360 --> 00:42:26,750 >> I neka mi ići naprijed i izbrisati još jedna linija koja ste 909 00:42:26,750 --> 00:42:27,910 nisu trebali vidjeti. 910 00:42:27,910 --> 00:42:31,070 I sad, pusti me u mom vlastitom pregledniku, pa ne bi Googleu, i idite na 911 00:42:31,070 --> 00:42:34,900 http://localhost. 912 00:42:34,900 --> 00:42:36,220 I to će stati na put. 913 00:42:36,220 --> 00:42:43,240 Tako ćemo morati reći zbogom da je za sada, pomaknite to ovdje, 914 00:42:43,240 --> 00:42:46,270 Oh, sad ćemo morati reći zbogom do te datoteke. 915 00:42:46,270 --> 00:42:51,700 >> Kad god imate datoteku pod nazivom index.html ili index.php u 916 00:42:51,700 --> 00:42:54,980 katalog, ako web poslužitelj konfiguriran na taj način, što ćete 917 00:42:54,980 --> 00:42:59,600 vidi, po defaultu, je sadržaj koji file a ne popis 918 00:42:59,600 --> 00:43:02,330 katalog, kao što sam htio ovdje. 919 00:43:02,330 --> 00:43:03,750 Više o tome u spec.. 920 00:43:03,750 --> 00:43:04,610 Niste vidjeli kako. 921 00:43:04,610 --> 00:43:06,360 >> Dakle, to je ono što sam zapravo htjela. 922 00:43:06,360 --> 00:43:08,810 No, trenutak prije, nije bilo datoteku u mapu tog naziva 923 00:43:08,810 --> 00:43:11,290 index.html i index.php. 924 00:43:11,290 --> 00:43:13,380 I tako je web poslužitelj pokazujući mi te datoteke. 925 00:43:13,380 --> 00:43:15,900 Umjesto toga, želim ovaj imenik popis ovdje. 926 00:43:15,900 --> 00:43:18,340 >> Tako da ću ići u CSS i ići na search0. 927 00:43:18,340 --> 00:43:21,770 A ja tvrdim da je to što će biti početak moje vlastite konkurentnosti 928 00:43:21,770 --> 00:43:22,490 tražilicu. 929 00:43:22,490 --> 00:43:27,630 A za to, ja ću ići u Ovdje, u CSS i otvoriti sa 930 00:43:27,630 --> 00:43:30,190 gedit, traži 0. 931 00:43:30,190 --> 00:43:32,280 No, na žalost, postoji ne mnogo događa ovdje. 932 00:43:32,280 --> 00:43:35,690 Sve sam učinio je koristiti zaglavlje oznaku, što se događa da se zove h1, koji 933 00:43:35,690 --> 00:43:38,180 u osnovi znači velik i bold, i to je to. 934 00:43:38,180 --> 00:43:40,810 No, način na koji možemo pružaju ulazi se preko njih 935 00:43:40,810 --> 00:43:42,180 stvari zove oblike. 936 00:43:42,180 --> 00:43:46,040 >> Zato mi dopustite da ići naprijed i otvoriti i zatvoriti, preventivno, oblik oznaka postoji. 937 00:43:46,040 --> 00:43:48,060 I neka mi ići naprijed i učiniti nešto poput ovoga. 938 00:43:48,060 --> 00:43:51,430 Ulazni, putovanja jednak tekst. 939 00:43:51,430 --> 00:43:56,320 A onda ćemo zatvoriti oznaku unutar zagrade sami. 940 00:43:56,320 --> 00:43:58,800 Ne treba početi tekstualno polje i prestati tekstualno polje. 941 00:43:58,800 --> 00:44:01,080 To jednostavno će biti tu ili ne. 942 00:44:01,080 --> 00:44:06,210 >> I onda ispod toga, idemo napraviti input type jednako podnijeti. 943 00:44:06,210 --> 00:44:06,870 Spremi to. 944 00:44:06,870 --> 00:44:08,630 I sada neka je samo napraviti brzo razum ček. 945 00:44:08,630 --> 00:44:09,820 Idemo ponovno napuniti. 946 00:44:09,820 --> 00:44:10,890 >> U redu, tako da to nije loše. 947 00:44:10,890 --> 00:44:13,260 Nije Googleov ime, , ali to je prilično blizu. 948 00:44:13,260 --> 00:44:13,920 Tu je polje za tekst. 949 00:44:13,920 --> 00:44:17,190 Ja mogu upisati neke stvari u, pritisnite Enter, , ali ništa se ne događa još. 950 00:44:17,190 --> 00:44:21,090 A to je zato što niste naveli Akcija za taj oblik, da se tako izrazim. 951 00:44:21,090 --> 00:44:23,860 Dakle, ako sam se vratiti u obliku elementa, ispostavilo se, i znam da je ovo samo 952 00:44:23,860 --> 00:44:27,460 na što je pročitao dokumentaciju, koja Obrazac za tag traje atribut 953 00:44:27,460 --> 00:44:31,880 zove akcija koja je URL na web stranici na koju 954 00:44:31,880 --> 00:44:34,790 želite poslati obrazac. 955 00:44:34,790 --> 00:44:37,610 >> Ja stvarno ne mislim da imamo vremena provesti cijeli stražnji kraj za 956 00:44:37,610 --> 00:44:38,570 tražilice danas. 957 00:44:38,570 --> 00:44:41,900 Dakle, samo ćemo reći, eh, ići na google.com / search. 958 00:44:41,900 --> 00:44:43,450 I sad neka mi zatvorim citati. 959 00:44:43,450 --> 00:44:46,070 I neka mi dodatno navesti da Postupak za korištenje ide 960 00:44:46,070 --> 00:44:47,120 da se zove doći. 961 00:44:47,120 --> 00:44:50,650 >> Da ne duljimo, postoji dva načina, na Barem, da možete poslati podatke 962 00:44:50,650 --> 00:44:51,880 iz preglednika na poslužitelju. 963 00:44:51,880 --> 00:44:55,340 Jedan je dobili, i, za današnje potrebe, to samo znači u URL-u. 964 00:44:55,340 --> 00:44:58,730 Vidite točno upitnike, u iznosi znakove i znakove za da 965 00:44:58,730 --> 00:44:59,780 smo ranije vidjeli. 966 00:44:59,780 --> 00:45:02,890 Ili postoji alternativa zove post. 967 00:45:02,890 --> 00:45:06,490 Za sada, znamo da je nakon često koristi kada želite prenijeti datoteke, kao što su 968 00:45:06,490 --> 00:45:09,820 slike i tako dalje, ili kad želite dostaviti podatke o kreditnoj kartici, ili 969 00:45:09,820 --> 00:45:13,810 lozinke, bilo da se to ne stvarno smisla, konceptualno, ili 970 00:45:13,810 --> 00:45:18,020 sigurnosni mudar, da bi na kraju u URL-u preglednika, gdje je njuškao roditelji, 971 00:45:18,020 --> 00:45:21,520 ili cimera, ili bilo tko s pristupom na vaše računalo moglo vidjeti. 972 00:45:21,520 --> 00:45:23,110 >> Tako ćemo uštedjeti da je ovdje. 973 00:45:23,110 --> 00:45:24,480 I moram napraviti jednu drugu stvar. 974 00:45:24,480 --> 00:45:27,250 To nije dovoljno samo kažu mi tekstualno polje. 975 00:45:27,250 --> 00:45:29,850 Moram dati tom području je Cijenimo ime. 976 00:45:29,850 --> 00:45:34,500 Pa neka mi posuditi Googleov izbor imena, q, i odrediti da drugi 977 00:45:34,500 --> 00:45:38,150 pripisuju Ja ne stvarno stalo naziv submit gumb. 978 00:45:38,150 --> 00:45:40,890 Sve mi je stalo podnošenja Ono što korisnik upiše u. 979 00:45:40,890 --> 00:45:41,940 >> I sada je to vrsta ružno. 980 00:45:41,940 --> 00:45:42,820 To samo govori podnijeti. 981 00:45:42,820 --> 00:45:46,350 Ispada, a ja znam iz dokumentacije, ja zapravo mogu reći 982 00:45:46,350 --> 00:45:51,710 vrijednost jednaka citat završen citat "CS50 Seach, "blizu citat. 983 00:45:51,710 --> 00:45:53,030 Tada ćemo ponovno učitati. 984 00:45:53,030 --> 00:45:57,020 Tako sam držati udarajući Command-R ili Kontrola-R na moje tipkovnice za ponovno učitavanje. 985 00:45:57,020 --> 00:45:58,605 >> Sada imamo više zanimljiv tražilicu. 986 00:45:58,605 --> 00:46:00,340 To ne izgleda kao sasvim Google još uvijek, iako. 987 00:46:00,340 --> 00:46:04,100 Dakle, idemo naprijed u ovdje i napraviti malu pauzu linija. 988 00:46:04,100 --> 00:46:06,066 >> U redu, tako da sada imamo Googleu. 989 00:46:06,066 --> 00:46:08,260 Mi zapravo gotovo nemate Google. 990 00:46:08,260 --> 00:46:10,460 Dakle, sada što će se dogoditi? 991 00:46:10,460 --> 00:46:12,220 Ja ću upisati nešto poput mačke. 992 00:46:12,220 --> 00:46:16,570 I preglednik će se analizirati da je obrazac koji sam definirao. 993 00:46:16,570 --> 00:46:19,470 I to će poslati Korisnik na taj URL. 994 00:46:19,470 --> 00:46:23,420 Dakle, ovaj put, iz nekog razloga znatiželjnika, Imam više informacija o dionicama 995 00:46:23,420 --> 00:46:24,410 nego o stvarnim mačkama. 996 00:46:24,410 --> 00:46:30,580 Ali to je u redu jer smo primijetili još završio ovdje, q jednako mačke. 997 00:46:30,580 --> 00:46:35,200 >> Pa ne duljimo, čini se prilično trivijalna dobiti informacije od korisnika. 998 00:46:35,200 --> 00:46:38,190 I da bude fer, postoji kitice drugih vrsta polja obrasca. 999 00:46:38,190 --> 00:46:41,510 Postoji potvrdne okvire, a malo međusobno ekskluzivne gumbe, i 1000 00:46:41,510 --> 00:46:42,960 padajući izbornici i još mnogo toga. 1001 00:46:42,960 --> 00:46:46,160 No, svi oni su relativno lako provesti kao 1002 00:46:46,160 --> 00:46:48,040 ovaj tekst je polje. 1003 00:46:48,040 --> 00:46:52,050 I u konačnici, samo moramo napraviti da netko sluša na druge 1004 00:46:52,050 --> 00:46:56,490 kraju linije kako bi se da Informacije obrađuju, nekako, 1005 00:46:56,490 --> 00:46:58,440 da nam vrati naše mačke. 1006 00:46:58,440 --> 00:47:00,840 >> Pogledajmo malo više uključeni primjer. 1007 00:47:00,840 --> 00:47:06,020 Pusti me na moje Vhost u imeniku, u lokalni domaćin, javnosti, i gdje sam 1008 00:47:06,020 --> 00:47:06,980 stavi današnju izvornog koda. 1009 00:47:06,980 --> 00:47:09,800 Sve to će biti na golf-a Web stranica za vas da prtljati sa. 1010 00:47:09,800 --> 00:47:15,420 A ako idem u froshims, neka mi otvorili do sada ove datoteke, froshim0.php. 1011 00:47:15,420 --> 00:47:18,460 Ovaj je malo više rječit, tako nećemo pisati ovo od nule. 1012 00:47:18,460 --> 00:47:21,970 Ali samo primijetiti sada malo pomalo upoznati obilježja. 1013 00:47:21,970 --> 00:47:24,550 >> Jedan, oblik tag, različite akcije. 1014 00:47:24,550 --> 00:47:25,670 Nije cijeli URL. 1015 00:47:25,670 --> 00:47:29,930 Sada, to je očito da podnese pod nazivom register0.php jer je, u ovom trenutku, 1016 00:47:29,930 --> 00:47:32,660 Idem učiti sebi malo nešto o PHP, programiranje 1017 00:47:32,660 --> 00:47:37,360 jezik, jer PHP se može koristiti za provesti ono što su Google provodi 1018 00:47:37,360 --> 00:47:39,650 stražnji dio njihove tražilice. 1019 00:47:39,650 --> 00:47:42,890 >> Google, u stvarnosti, vjerojatno koristi Neki Python, neki C + +, a 1020 00:47:42,890 --> 00:47:44,230 trsovi drugim jezicima. 1021 00:47:44,230 --> 00:47:48,230 Ali mi sigurno mogao provesti pretragu Rezultati koristeći PHP, ako smo htjeli. 1022 00:47:48,230 --> 00:47:49,610 Ali za sada, mi ćemo ga zadržati jednostavan. 1023 00:47:49,610 --> 00:47:53,320 A to je zapravo podsjeća na jedan od ostalih prvih web stranica sam 1024 00:47:53,320 --> 00:47:54,490 je godina. 1025 00:47:54,490 --> 00:47:58,160 >> Povratak u moje vrijeme, što registrirana za intramuralnog sporta kao brucoš po 1026 00:47:58,160 --> 00:48:00,880 ispunjavanjem komad papira, hodanja kroz dvorište i bacaju u 1027 00:48:00,880 --> 00:48:04,890 spremnik od Proctor u Wigglesworthovom, a to je kako se 1028 00:48:04,890 --> 00:48:05,460 registrirana. 1029 00:48:05,460 --> 00:48:09,650 I tako moj projekt ubrzo nakon CS50, bio je to staviti, što ga čini savršenim 1030 00:48:09,650 --> 00:48:13,460 razum, na webu, koji nije bio kao u modi onda kao što je sada. 1031 00:48:13,460 --> 00:48:17,510 No, sve što smo morali napraviti je stvoriti, suštini, HTML oblik. 1032 00:48:17,510 --> 00:48:19,640 >> I taj oblik izgledao otprilike ovako. 1033 00:48:19,640 --> 00:48:22,480 Imao sam ulaz za Freshman ime. 1034 00:48:22,480 --> 00:48:27,780 Imao sam još jedan okvir za li ili ili ne žele biti kapetan, ono 1035 00:48:27,780 --> 00:48:30,400 njihova je spol, a što im je spavaonica. 1036 00:48:30,400 --> 00:48:33,370 A onda sam teško kodirano u stvari kao Apley suda, i Canaday, 1037 00:48:33,370 --> 00:48:34,880 Sivi, i tako dalje. 1038 00:48:34,880 --> 00:48:36,300 >> Pa opet, nove oznake. 1039 00:48:36,300 --> 00:48:39,820 Nisu vidjeli ove prije, nova atributi, ali prilično dostupni. 1040 00:48:39,820 --> 00:48:42,360 Kada vidite primjer, možete vrsta pozaj tu ideju i napraviti pad 1041 00:48:42,360 --> 00:48:43,820 prema dolje izbornika za većinu ništa. 1042 00:48:43,820 --> 00:48:46,350 No, ono što je ključno je da svatko od te stvari imaju imena. 1043 00:48:46,350 --> 00:48:49,720 A na dnu ovog obrasca, postoji submit gumb čijoj label, 1044 00:48:49,720 --> 00:48:51,510 ili vrijednosti, je registar. 1045 00:48:51,510 --> 00:48:52,670 >> Dakle, idemo na ovu stranicu. 1046 00:48:52,670 --> 00:48:55,050 Pusti me natrag u imeniku. 1047 00:48:55,050 --> 00:48:59,410 Pusti me u froshims, i otići na froshim0.php. 1048 00:48:59,410 --> 00:49:01,150 Dakle, to je odvratno, da bude fer. 1049 00:49:01,150 --> 00:49:03,950 Tako sam definitivno mogao stilizira ove s nekim CSS, mogao sam napraviti neke 1050 00:49:03,950 --> 00:49:06,890 grafike, možda dodati neke boje, i napraviti ovo ljepše. 1051 00:49:06,890 --> 00:49:10,530 No, funkcionalno, ja bih tvrditi da je to je zapravo prilično potpun. 1052 00:49:10,530 --> 00:49:15,190 >> Nažalost, kad sam ispunite ovo, David, kapetane, Muško, mi ćemo odabrati, 1053 00:49:15,190 --> 00:49:20,510 recimo Matthews, Registracija, sve što se događa je to. 1054 00:49:20,510 --> 00:49:21,910 Ali primijetiti nekoliko ponijeti sa sobom. 1055 00:49:21,910 --> 00:49:27,130 Jedan, što je datoteka vratio onima Rezultati, očito? 1056 00:49:27,130 --> 00:49:29,470 Dakle, to je, doista, register0.php. 1057 00:49:29,470 --> 00:49:34,570 Dakle, činjenica da smo vidjeli tu akciju Vrijednost maloprije za register0, ovaj 1058 00:49:34,570 --> 00:49:37,500 potvrđuje da smo doista završio se u tom datoteku. 1059 00:49:37,500 --> 00:49:39,040 >> A ovo je samo ružna tekst. 1060 00:49:39,040 --> 00:49:42,810 Ali primijetite da je ovaj tekst dolaze iz lokalne domaćina, 1061 00:49:42,810 --> 00:49:44,170 koji je iz aparata. 1062 00:49:44,170 --> 00:49:46,350 Razmislite o aparatu sada kao samo web server koji bi mogao biti u 1063 00:49:46,350 --> 00:49:46,910 Science Center. 1064 00:49:46,910 --> 00:49:48,060 To bi mogla biti o stvarnoj webu. 1065 00:49:48,060 --> 00:49:49,850 Dakle, to je javno dostupan. 1066 00:49:49,850 --> 00:49:55,480 >> Dakle, jasno, postoji neki način prolazi formirati terenske ulaza na poslužitelj 1067 00:49:55,480 --> 00:49:56,840 tako da se može učiniti nešto s njima. 1068 00:49:56,840 --> 00:49:59,020 Nažalost, register0 je prilično glupo. 1069 00:49:59,020 --> 00:50:01,870 Sve je to ipak ispisati niz koja izgleda ovako. 1070 00:50:01,870 --> 00:50:04,790 I to ne u polje Osjećaj da smo to znali. 1071 00:50:04,790 --> 00:50:08,760 Ispostavilo se da je PHP, i puno jezici, imaju ne samo brojčano 1072 00:50:08,760 --> 00:50:12,350 indeksiranih polja čiji prvi indeks je nuli, onda, zatim dva, a zatim dot, 1073 00:50:12,350 --> 00:50:13,780 dot, dot, n minus jedan. 1074 00:50:13,780 --> 00:50:16,400 >> To je ono što se zove asocijativne matrice. 1075 00:50:16,400 --> 00:50:21,150 Asocijativne matrice u kojoj je jedna možete pohraniti ključnih parova vrijednosti u kojem 1076 00:50:21,150 --> 00:50:23,160 Ključ nije nužno broj. 1077 00:50:23,160 --> 00:50:25,580 To bi u stvari biti niz riječi. 1078 00:50:25,580 --> 00:50:28,230 I tako se to može provesti, ispod poklopca motora, što se ispostavilo, 1079 00:50:28,230 --> 00:50:31,896 korištenjem podatkovne strukture poznat kao? 1080 00:50:31,896 --> 00:50:33,600 Misao nešto dramatično će se dogoditi - 1081 00:50:33,600 --> 00:50:34,840 hash tablicu. 1082 00:50:34,840 --> 00:50:38,955 >> Dakle hash tablicu, podsjetimo, one od vas tko je to učinio za P set 6, ili čak i prisjetiti 1083 00:50:38,955 --> 00:50:44,110 je, barem čak i ako je probati, hash tablicu, u našem korištenju, korišten je za 1084 00:50:44,110 --> 00:50:45,090 Samo pohraniti riječi. 1085 00:50:45,090 --> 00:50:47,980 Ali stvarno, što su spremanje Ključevi i vrijednosti. 1086 00:50:47,980 --> 00:50:51,940 Ako provodi hash tablicu za P postavili šest rječnika, a tipke su 1087 00:50:51,940 --> 00:50:56,890 Riječi su sami, a vrijednosti bile učinkovitije istina ili laž. 1088 00:50:56,890 --> 00:51:00,190 Da, ovdje, ili implicitno, Ne, nije ovdje. 1089 00:51:00,190 --> 00:51:02,140 >> Pa, možemo generalizirati tu ideju. 1090 00:51:02,140 --> 00:51:06,230 A dobro bi nam vrlo slične podatke Struktura za pohranu ne string 1091 00:51:06,230 --> 00:51:10,180 Sama sam u svoj hash tablici, ali Pretpostavljam da u svakoj od tvoj jeftin 1092 00:51:10,180 --> 00:51:11,130 stol je čvorovi. 1093 00:51:11,130 --> 00:51:14,210 A čak mogu to učiniti u pokušaju nego samo bool. 1094 00:51:14,210 --> 00:51:15,350 Ti bi mogao imati nešto drugo. 1095 00:51:15,350 --> 00:51:19,590 Što ako ključ nije bio Maxwell, za instanca, ali citat završen citat "ime", ili 1096 00:51:19,590 --> 00:51:22,900 citiram "završen citat kapetana." A unutar Vaš C strukture podataka, što mu 1097 00:51:22,900 --> 00:51:26,170 vrijednost, ne samo Boolean, ali od vrijednosti kao citat završen citat "Davida", ili 1098 00:51:26,170 --> 00:51:28,690 "M" ili "Matthews," i tako dalje. 1099 00:51:28,690 --> 00:51:33,170 >> Dakle, one iste strukture podataka koje smo koristili očito postoje u drugim jezicima. 1100 00:51:33,170 --> 00:51:37,650 I ja bih tvrditi da su zapravo mnogo, mnogo jednostavnije za pristup ovdje. 1101 00:51:37,650 --> 00:51:40,300 Idemo u stvari pogledati sada na nekom takvom sintakse. 1102 00:51:40,300 --> 00:51:43,120 >> Ja ću ići u PHP direktoriju. 1103 00:51:43,120 --> 00:51:48,390 A ja ću otvoriti bolja verzija Hello-0 otprije. 1104 00:51:48,390 --> 00:51:50,270 Obavijest da je sve što sam učinio bilo dodati neke komentare. 1105 00:51:50,270 --> 00:51:52,530 Tako možemo riješiti taj distrakcije. 1106 00:51:52,530 --> 00:51:57,610 >> I ovaj program zapravo i ispisuje Pozdrav jer sam naveden između 1107 00:51:57,610 --> 00:52:01,420 oznake koje želim izvršiti taj kod. 1108 00:52:01,420 --> 00:52:03,380 Sada, vidjet ćemo za koji trenutak zašto je to korisno. 1109 00:52:03,380 --> 00:52:05,630 Ali Otvorimo jedan drugi primjer ovdje. 1110 00:52:05,630 --> 00:52:10,430 Dopustite mi da ići naprijed i otvoriti kažu, gedit uvjeta jednom. 1111 00:52:10,430 --> 00:52:12,970 >> To je put natrag u vrijeme sada. 1112 00:52:12,970 --> 00:52:16,320 No, prije nekoliko tjedana, mislim, u jednom tjednu ili tjedan dva, imali smo primjer zove 1113 00:52:16,320 --> 00:52:18,470 conditions1.c. 1114 00:52:18,470 --> 00:52:22,050 I odlučio sam da ga reimplement u PHP, Samo se vrsta naglasiti da 1115 00:52:22,050 --> 00:52:26,500 PHP, sintaktički, gotovo je identična do C. To nije veliki skok 1116 00:52:26,500 --> 00:52:27,840 od prošlog tjedna na to. 1117 00:52:27,840 --> 00:52:31,230 >> Uočava na vrhu ovog programa, koji počinje, kao i prije, s nekim 1118 00:52:31,230 --> 00:52:34,260 komentari, koje ću dobiti osloboditi kao o ometanja. 1119 00:52:34,260 --> 00:52:37,410 Obavijest da sam u PHP Način na ovu datoteku. 1120 00:52:37,410 --> 00:52:40,160 Dakle, ovaj kod, vidjet ćemo, će se izvršiti. 1121 00:52:40,160 --> 00:52:42,670 Uočite da postoji readline, što je vjerojatno 1122 00:52:42,670 --> 00:52:46,230 Analogni u PHP-u getstring. 1123 00:52:46,230 --> 00:52:47,390 Obavijest je to malo drugačije. 1124 00:52:47,390 --> 00:52:51,410 Vi zapravo odrediti obavijest da Funkcija se zove pročitati linije, a to je 1125 00:52:51,410 --> 00:52:52,180 ono što korisnik vidi. 1126 00:52:52,180 --> 00:52:53,520 Dakle, ne morate se printf ručno. 1127 00:52:53,520 --> 00:52:54,860 No, to nije velika stvar. 1128 00:52:54,860 --> 00:52:59,150 Idem za pohranu, unutar $ n, vrati vrijednost ove, pa što god 1129 00:52:59,150 --> 00:53:00,490 korisnik upiše u njihova int. 1130 00:53:00,490 --> 00:53:01,660 I ovdje je još jedan kuriozitet. 1131 00:53:01,660 --> 00:53:05,810 Ispada, u PHP-u, bilo varijablu Samo mora biti ispred broja 1132 00:53:05,810 --> 00:53:06,970 s dolarskim znakom. 1133 00:53:06,970 --> 00:53:08,110 To je malo neugodno. 1134 00:53:08,110 --> 00:53:10,870 Ali primijetiti što nisam učinio u PHP. 1135 00:53:10,870 --> 00:53:13,980 Ono što nedostaje s lijeve strane strana znaka jednakosti? 1136 00:53:13,980 --> 00:53:15,430 >> Nema spomena o vrsti. 1137 00:53:15,430 --> 00:53:19,400 Dakle, ovo je drugačiji od C. Za bolje ili još gore, PHP je djelomično 1138 00:53:19,400 --> 00:53:20,550 upisali jezik. 1139 00:53:20,550 --> 00:53:22,010 Ona ima brojeve. 1140 00:53:22,010 --> 00:53:23,240 Ona ima konce. 1141 00:53:23,240 --> 00:53:24,015 Ona ima Booleovih varijabli. 1142 00:53:24,015 --> 00:53:26,220 I ona ima neke druge vrste podataka. 1143 00:53:26,220 --> 00:53:30,570 Ali, programer, obično ne moraju brinuti o njima. 1144 00:53:30,570 --> 00:53:34,010 Naopako je da to čini je malo lakše programa. 1145 00:53:34,010 --> 00:53:35,380 Možete misliti malo manje. 1146 00:53:35,380 --> 00:53:39,840 Loša strana je ona također vam se otvara potencijalni bugovi, ako ste slučajno 1147 00:53:39,840 --> 00:53:43,080 liječenje broj kao string, string kao broj, potencijalno, ali čak i 1148 00:53:43,080 --> 00:53:46,150 zatim, PHP, i puno jezika, su prilično tolerantni. 1149 00:53:46,150 --> 00:53:49,050 Oni će koristiti ono što se zove implicitno lijevanje. 1150 00:53:49,050 --> 00:53:55,220 A ako pokušate koristiti n u kontekstu o brojčanom stanju, to će 1151 00:53:55,220 --> 00:53:58,040 pretvoriti u ono što ovdje će biti string, jer ako korisnik upiše 1152 00:53:58,040 --> 00:54:01,570 nešto, a vi dobiti rezultat, kao i sa readline, ili dobiti niz, 1153 00:54:01,570 --> 00:54:02,910 da će se vratiti niz. 1154 00:54:02,910 --> 00:54:07,360 >> No, obavijest, par redaka kasnije, sam provjeriti ako je n veći od nule. 1155 00:54:07,360 --> 00:54:13,370 Dakle, PHP će se prešutno dao svoj "String" 123, ili što god korisnik 1156 00:54:13,370 --> 00:54:14,860 vrste u, u int. 1157 00:54:14,860 --> 00:54:18,730 Tako je u kratkom, stvari samo radi Puno više intuitivno. 1158 00:54:18,730 --> 00:54:23,410 Tako smo sada početi da se opustite malo stvari koje smo učinili u prošlosti. 1159 00:54:23,410 --> 00:54:24,780 >> Puno je stvari isto, iako. 1160 00:54:24,780 --> 00:54:26,340 Još uvijek su jednako jednako. 1161 00:54:26,340 --> 00:54:30,350 Kao na stranu PHP također je jednako jednako jednak, ali više o tome, možda, u 1162 00:54:30,350 --> 00:54:30,850 Budućnost. 1163 00:54:30,850 --> 00:54:31,150 To je bilo. 1164 00:54:31,150 --> 00:54:35,660 Pogreška pri upisu, ali dva jednako znakove znači isto stvar kao i prije, za usporedbu. 1165 00:54:35,660 --> 00:54:37,060 printf znači isto kao i prije. 1166 00:54:37,060 --> 00:54:39,160 Obrnuta kosa crta n znači isto stvar kao i prije. 1167 00:54:39,160 --> 00:54:40,390 >> Pa kako sam pokrenuti ovaj program? 1168 00:54:40,390 --> 00:54:44,400 Pa, kao i prije, ako ja to PHP, conditions1.php, i tip u 1169 00:54:44,400 --> 00:54:46,560 broj kao 123. 1170 00:54:46,560 --> 00:54:47,720 To je pozitivan broj. 1171 00:54:47,720 --> 00:54:49,510 Ako sam upisati 0, 0 sam pokupiti. 1172 00:54:49,510 --> 00:54:53,700 A ako mi tip u negativnom 123, dobijem natrag negativan broj, što je samo 1173 00:54:53,700 --> 00:54:59,050 reći, sintaktički, PHP je super, super slično. 1174 00:54:59,050 --> 00:55:03,250 >> Pa zašto je to sad korisno u web kontekstu? 1175 00:55:03,250 --> 00:55:06,710 Pa, idemo natrag u ovoj froshims Primjer, koja je izgledala, 1176 00:55:06,710 --> 00:55:08,600 Ponovno, kao što je to ovdje. 1177 00:55:08,600 --> 00:55:11,580 I neka je zapravo podići web stranicu opet, koja je izgledala ovako. 1178 00:55:11,580 --> 00:55:14,930 Što možemo učiniti s podatke koje je podnio? 1179 00:55:14,930 --> 00:55:18,770 >> Pa, neka mi se otvaraju novije verzija ovoga. 1180 00:55:18,770 --> 00:55:20,920 I vidjet ćete da je problem setovi podataka provest će vas 1181 00:55:20,920 --> 00:55:22,850 kroz neke od njih. 1182 00:55:22,850 --> 00:55:29,610 Umjesto početi s nulom, pogledajmo froshims3, 1183 00:55:29,610 --> 00:55:31,410 koji radi malo više. 1184 00:55:31,410 --> 00:55:34,780 >> Obavijest prva, zapravo, neka je otvaranje ono što je 0, pa vidite 1185 00:55:34,780 --> 00:55:37,170 Registracija što je 0. 1186 00:55:37,170 --> 00:55:40,040 Obavijest ono registar 0 učinio. 1187 00:55:40,040 --> 00:55:41,730 Jedan, imam primjedbe na vrhu. 1188 00:55:41,730 --> 00:55:43,900 Obrišite one i usredotočiti se samo na to. 1189 00:55:43,900 --> 00:55:48,730 Većina sadržaja register0.php Očito, ono jezik? 1190 00:55:48,730 --> 00:55:49,980 Samo sirovo PHP. 1191 00:55:49,980 --> 00:55:53,430 >> Dakle najave, ova datoteka se ne pokreće sa, u ovom trenutku, otvorene zagrade, 1192 00:55:53,430 --> 00:55:54,970 Upitnik, PHP. 1193 00:55:54,970 --> 00:55:59,800 PHP ne dopušta da se miješaju PHP kod u HTML tagova. 1194 00:55:59,800 --> 00:56:04,130 Ali ja sam to učinio ovdje u na stranici ovamo. 1195 00:56:04,130 --> 00:56:08,180 >> Sada, opet, samo bih znam iz nakon što je pogledao u priručniku. print_r, 1196 00:56:08,180 --> 00:56:13,410 ispostavilo se, je print_recursive. _recursive A to je samo zgodan 1197 00:56:13,410 --> 00:56:16,780 komunalnih funkcija koja samo ispisuje, rekurzivno, što god ga predati. 1198 00:56:16,780 --> 00:56:18,760 Ako strane niz, to će ispisati niz. 1199 00:56:18,760 --> 00:56:20,180 Ako ste strane to je broj, to će ispisati broj. 1200 00:56:20,180 --> 00:56:21,570 Strane, niz, to će ispisati string. 1201 00:56:21,570 --> 00:56:24,500 Ako ste strane to hash tablicu, što će ispisati hash tablicu. 1202 00:56:24,500 --> 00:56:26,730 Vi ne morate pisati sve te kod sebe. 1203 00:56:26,730 --> 00:56:29,490 >> Sada primjetiti da sam ulaska PHP mode ovamo. 1204 00:56:29,490 --> 00:56:32,070 Ja sam izlaska PHP način ovamo. 1205 00:56:32,070 --> 00:56:35,950 Dakle, kada web poslužitelja čita ovu datoteku vrha do dna, s lijeva na desno, jer je 1206 00:56:35,950 --> 00:56:40,750 završava u ime datoteke zove. php, što nije unutar PHP oznakama 1207 00:56:40,750 --> 00:56:42,820 Samo će biti pljuvanja se, kao što je sirovo HTML. 1208 00:56:42,820 --> 00:56:43,630 No big deal. 1209 00:56:43,630 --> 00:56:49,280 No, čim je web poslužitelj obavijesti ovo, to će reći, ja ne bi 1210 00:56:49,280 --> 00:56:51,850 ispljune, doslovno, print_r post. 1211 00:56:51,850 --> 00:56:54,910 Ja bi trebao izvršiti sljedeće linija koda. 1212 00:56:54,910 --> 00:56:59,850 >> Dakle, na posljednje pitanje, onda, ove datoteke je, dobro, što je ovo? 1213 00:56:59,850 --> 00:57:00,530 Uzmi pogodak. 1214 00:57:00,530 --> 00:57:04,230 Što je $ _POST, vjerojatno? 1215 00:57:04,230 --> 00:57:07,070 >> PUBLIKA: [nečujno] 1216 00:57:07,070 --> 00:57:08,830 >> ZVUČNI 1: Da, objavljenih podataka. 1217 00:57:08,830 --> 00:57:11,350 Podsjetimo, neka je pomicanje natrag u Vrijeme je za samo trenutak. 1218 00:57:11,350 --> 00:57:13,165 froshim0, opet, izgledao ovako. 1219 00:57:13,165 --> 00:57:15,640 Super većina to je samo HTML. 1220 00:57:15,640 --> 00:57:18,410 Opet, neke oznake imate ne još vidjeli, ili s kojima 1221 00:57:18,410 --> 00:57:19,360 vi ste već upoznati. 1222 00:57:19,360 --> 00:57:21,990 Ali zanimljiva stvar je to. 1223 00:57:21,990 --> 00:57:27,270 Ovo je jedna crta je ono što stvarno povezuje da naše register0.php datoteku. 1224 00:57:27,270 --> 00:57:29,200 Ja podnošenja putem metoda vratnicu. 1225 00:57:29,200 --> 00:57:33,130 A to znači da parametri korisnik upiše u nisu 1226 00:57:33,130 --> 00:57:35,150 će završiti tamo gdje. 1227 00:57:35,150 --> 00:57:36,175 >> Oni se ne ide na pojaviti u URL-u. 1228 00:57:36,175 --> 00:57:39,020 Oni su još uvijek će biti poslan na klijent, iz preglednika, kako bi se 1229 00:57:39,020 --> 00:57:42,080 poslužitelja, ali samo preko neke druge Mehanizam da ćemo se odreći naših ruku 1230 00:57:42,080 --> 00:57:44,330 na za danas, ali to nije u URL-u. 1231 00:57:44,330 --> 00:57:47,630 No primijetite odnos sada s Pošta, koji je, po konvenciji, je 1232 00:57:47,630 --> 00:57:49,160 mala slova ovdje. 1233 00:57:49,160 --> 00:57:54,090 >> Ali, ako sam otvoriti register0.php, Ja sam očito ispisuje ovo. 1234 00:57:54,090 --> 00:57:56,450 Dakle, ovo je vrsta čudno konvenciju imenovanja. 1235 00:57:56,450 --> 00:58:01,430 No, ono što je lijepo u PHP-u je da kada koristeći PHP u web kontekstu, a ne na 1236 00:58:01,430 --> 00:58:04,480 naredbenog retka kao što sam učinio prije nekoliko trenutaka, kad ste zapravo ga koristite na webu 1237 00:58:04,480 --> 00:58:10,580 poštom, u Vhost imeniku kakvi jesmo, automatski će popuniti ove PHP 1238 00:58:10,580 --> 00:58:15,560 stvar, što je asocijativne matrice, da se tako izrazim, hash tablicu, s 1239 00:58:15,560 --> 00:58:17,290 sve što korisnik unese 1240 00:58:17,290 --> 00:58:22,000 >> U kratkom, $ _POST u svim kape je Globalna varijabla koja PHP jednostavno 1241 00:58:22,000 --> 00:58:25,050 magično stvara za vas kada koristeći PHP u web kontekstu. 1242 00:58:25,050 --> 00:58:29,160 I to stavlja unutar nje sve Nazivi parametara u obliku koji 1243 00:58:29,160 --> 00:58:33,200 podnesen na ovu sliku i sve vrijednosti koje korisnik unese 1244 00:58:33,200 --> 00:58:37,790 Tako da pruži vam ono što je korisnik upisali u tom obliku. 1245 00:58:37,790 --> 00:58:42,210 >> Dakle, prije nego što smo dobili jako glupo izlaz da samo vidim jer sve što sam učinio 1246 00:58:42,210 --> 00:58:44,400 je rekurzivno ispisati niz. 1247 00:58:44,400 --> 00:58:46,060 Ključ je ime, vrijednost je David. 1248 00:58:46,060 --> 00:58:46,980 Ključ je kapetan. 1249 00:58:46,980 --> 00:58:47,970 Vrijednost je uključen. 1250 00:58:47,970 --> 00:58:52,300 I dvostruke strelice i kut Nosač postoji, to je samo proizvoljna. 1251 00:58:52,300 --> 00:58:53,270 To nije broj. 1252 00:58:53,270 --> 00:58:57,690 Ovo je samo PHP je način prikazuje što je vrijednost nekog ključa je. 1253 00:58:57,690 --> 00:59:03,000 >> Ali sada neka mi predložiti da se u froshIMs3, što je gotovo identično 1254 00:59:03,000 --> 00:59:04,950 osim što podnosi na ovu sliku. 1255 00:59:04,950 --> 00:59:08,570 I opet, idemo vrsta samo pogled na ovo, samo da vidim neke 1256 00:59:08,570 --> 00:59:12,040 sintakse, ali ono obavijest ovu sliku ne. 1257 00:59:12,040 --> 00:59:14,930 Uzmite samo pogodak temelji na linijama broj, koji se vjerojatno ne izgledaju kao 1258 00:59:14,930 --> 00:59:17,410 Grčka, u određenoj mjeri, se očito radi. 1259 00:59:17,410 --> 00:59:20,580 1260 00:59:20,580 --> 00:59:23,110 >> Ova datoteka je nekako povezana na mail, e-mail. 1261 00:59:23,110 --> 00:59:24,770 Dakle, što je ovaj program radi? 1262 00:59:24,770 --> 00:59:28,740 U ovoj verziji, ako su se zapravo ispunite ovaj obrazac - i pustiti me da 1263 00:59:28,740 --> 00:59:30,760 froshIMs3, ne froshIMs0 - 1264 00:59:30,760 --> 00:59:33,280 1265 00:59:33,280 --> 00:59:34,540 oblik izgleda isto. 1266 00:59:34,540 --> 00:59:37,980 David, kapetan, muški, spavaonica, Matthews. 1267 00:59:37,980 --> 00:59:42,980 Ali, ako sam podnijeti ovu, ovu sliku je ići u register3.php. 1268 00:59:42,980 --> 00:59:46,330 >> A ja tvrdim, gledajući je izvornog koda, to će 1269 00:59:46,330 --> 00:59:47,650 nekako uključuju e-mail. 1270 00:59:47,650 --> 00:59:49,620 Dopustite mi da ide naprijed i otvoriti ovo se u većem prozoru, pa smo 1271 00:59:49,620 --> 00:59:51,030 Možete ga vidjeti više čisto. 1272 00:59:51,030 --> 00:59:57,220 Mi smo u Vhosts, lokalni domaćin, javnosti, froshims. 1273 00:59:57,220 --> 00:59:58,680 Idem otvoriti različita Program, samo tako ćemo 1274 00:59:58,680 --> 01:00:00,160 Možete vidjeti više odjednom. 1275 01:00:00,160 --> 01:00:03,100 >> Tako sada ovdje, primijetiti nekoliko stvari. 1276 01:00:03,100 --> 01:00:06,530 Na vrhu datoteke je otvoren nosač, upitnik, PHP. 1277 01:00:06,530 --> 01:00:08,920 Zatim tu je hrpa komentara, koje možemo zanemariti, je 1278 01:00:08,920 --> 01:00:10,450 nezanimljivo za sada. 1279 01:00:10,450 --> 01:00:11,300 >> Sada je to. 1280 01:00:11,300 --> 01:00:14,200 Ispada PHP ima puno koda naziva zahtijevaju. 1281 01:00:14,200 --> 01:00:19,110 To je vrlo sličan u duhu Cs su, ljestve uključuju, koji 1282 01:00:19,110 --> 01:00:21,980 u biti dočepa sadržaja nekih druge datoteke i samo ih plops ovdje, 1283 01:00:21,980 --> 01:00:22,930 tako da ih možete koristiti. 1284 01:00:22,930 --> 01:00:27,060 U ovom slučaju, uređaj ima, unaprijed instaliran, knjižnica, besplatan i 1285 01:00:27,060 --> 01:00:29,900 open source knjižnica zove PHP okružnice da svatko može 1286 01:00:29,900 --> 01:00:30,770 skinuti s interneta. 1287 01:00:30,770 --> 01:00:32,000 Upravo smo to učinili za vas. 1288 01:00:32,000 --> 01:00:36,130 A to znači da ja sada imam e-mail Funkcionalnost na mom raspolaganju. 1289 01:00:36,130 --> 01:00:38,170 >> Sada, primijetiti nekoliko stvari. 1290 01:00:38,170 --> 01:00:41,120 Idem provjeriti obrasca predaju. 1291 01:00:41,120 --> 01:00:45,980 Ispada PHP, jedina, ima uzvik bodovi za ne operatora, baš kao 1292 01:00:45,980 --> 01:00:49,810 C. No, PHP također ima funkciju zove prazna. 1293 01:00:49,810 --> 01:00:53,920 >> Prazan jednostavno vraća true ako je vrijednost od stvar što ga predati 1294 01:00:53,920 --> 01:00:57,190 zagrade je prazna, kao što je korisnik nije tip ništa u. 1295 01:00:57,190 --> 01:01:02,680 Dakle, ovo je rekao, i primjetiti sintakse, jako podsjeća na C, ako je 1296 01:01:02,680 --> 01:01:07,730 Naziv ključ, tako da naziv polja u obliku, koji je dostavljen poštom, prema 1297 01:01:07,730 --> 01:01:13,010 Korisnik, nije se isprazniti, a njihova spol nije prazan u obliku 1298 01:01:13,010 --> 01:01:15,980 dobro, a njihova spavaonica nije prazan - 1299 01:01:15,980 --> 01:01:19,980 ali sam primijetio nije stalo do kapetana, Pa što ćemo učiniti? 1300 01:01:19,980 --> 01:01:21,990 >> Idem za izvršavanje ova linija koda. 1301 01:01:21,990 --> 01:01:24,100 I možete sjetiti ove vrste kao malloc, ali to je malo 1302 01:01:24,100 --> 01:01:24,800 uzgajivač od toga. 1303 01:01:24,800 --> 01:01:29,200 No, za sada to mi daje posebnu struct tipa PHP-om. 1304 01:01:29,200 --> 01:01:31,410 Ali ignorirati novu ključnu riječ za danas. 1305 01:01:31,410 --> 01:01:35,670 >> Sada ću pozvati funkciju pod nazivom IsSMTP, koji kaže, koristiti SMTP. 1306 01:01:35,670 --> 01:01:39,380 Ovo je port 25, baš kao i na videu prošlog tjedna, kada je stvar povraćala 1307 01:01:39,380 --> 01:01:40,710 e-mailove u firewall. 1308 01:01:40,710 --> 01:01:42,440 Port 25 je SMTP. 1309 01:01:42,440 --> 01:01:44,410 SMTP znači koristiti mail server. 1310 01:01:44,410 --> 01:01:46,215 Koji, možemo koristiti Harvarda SMTP.fas.harvard.edu. 1311 01:01:46,215 --> 01:01:48,850 1312 01:01:48,850 --> 01:01:51,590 >> Možemo postaviti na adresu da je John Harvard. 1313 01:01:51,590 --> 01:01:55,090 Ako sam se pomaknite prema dolje i dalje, ja mogu postaviti adresa primatelja, samo 1314 01:01:55,090 --> 01:01:56,840 samovoljno, da se John Harvard je kao dobro. 1315 01:01:56,840 --> 01:01:59,210 Dakle, on će se sam e-mailom. 1316 01:01:59,210 --> 01:02:01,600 >> Sada mogu postaviti temu da se prijava. 1317 01:02:01,600 --> 01:02:03,700 I ja mogu postaviti tijelo E-mail kako slijedi. 1318 01:02:03,700 --> 01:02:06,500 Ova linija izgleda malo više zagonetan, ali to je samo zato jer ima puno 1319 01:02:06,500 --> 01:02:07,450 od informacija u njemu. 1320 01:02:07,450 --> 01:02:10,670 Jedan, postoji točka operatora. 1321 01:02:10,670 --> 01:02:14,510 Netko mora znati što je već dot operater ne. 1322 01:02:14,510 --> 01:02:15,436 To je lančana. 1323 01:02:15,436 --> 01:02:19,240 Dakle, ako želite uzeti niz u PHP-u, i dodati, ili upotrijebiti nesto, kako bi se 1324 01:02:19,240 --> 01:02:23,500 jedan string u PHP, hvala Bogu ne morate koristiti strcopy i malloc, 1325 01:02:23,500 --> 01:02:25,490 i sve to više. 1326 01:02:25,490 --> 01:02:28,765 >> Ako želite da spojite dvije žice, tko brine o memoriji. 1327 01:02:28,765 --> 01:02:30,850 Neka PHP podatak da se za vas. 1328 01:02:30,850 --> 01:02:35,200 Ono što PHP će učiniti s dot operatera ovdje je samo napraviti veliku rečenicu 1329 01:02:35,200 --> 01:02:37,900 ove linije, ova linija, ova linija, ova linija. 1330 01:02:37,900 --> 01:02:40,460 A sad obavijest, to će da se uključivanjem u vrijednostima. 1331 01:02:40,460 --> 01:02:43,680 Tako e-mail da je John Harvard ide primati doslovno reći 1332 01:02:43,680 --> 01:02:49,450 Naziv, debelog crijeva, nešto, a onda smo zatvoriti niz i spojite se na 1333 01:02:49,450 --> 01:02:52,220 što je korisnik upisao u, a zatim nova linija. 1334 01:02:52,220 --> 01:02:54,570 >> Onda, u sljedećem retku od John Harvard e, to će reći: 1335 01:02:54,570 --> 01:02:55,910 Kapetan, na ili ništa. 1336 01:02:55,910 --> 01:02:57,810 To će reći spol, muško ili žensko. 1337 01:02:57,810 --> 01:02:59,680 Spavaonica će biti Matthews u mom slučaju. 1338 01:02:59,680 --> 01:03:03,400 A onda primjetiti poznato zarezom na samom kraju. 1339 01:03:03,400 --> 01:03:07,830 A onda, ovdje dolje, obavijest, nešto zagonetan dalje, ali opet, nakon 1340 01:03:07,830 --> 01:03:12,730 uzorak koji će postati više upoznat nakon P postavili 7, ako slanje pošte 1341 01:03:12,730 --> 01:03:16,610 false, a zatim ići naprijed i umrijeti. 1342 01:03:16,610 --> 01:03:19,610 >> Dakle, PHP ima funkciju pod nazivom umrijeti, koji se, doslovce, jednostavno ubija 1343 01:03:19,610 --> 01:03:22,830 web stranice i samo isprinta god što reći - njegova umire 1344 01:03:22,830 --> 01:03:24,280 Riječi, da tako kažemo. 1345 01:03:24,280 --> 01:03:28,310 I da, u slučaju, to će ispisati što je za pogreške info 1346 01:03:28,310 --> 01:03:29,860 što god se dogodilo pogriješiti. 1347 01:03:29,860 --> 01:03:34,490 Pa ne duljimo ovdje, ono što imamo je primjer kada korisnik 1348 01:03:34,490 --> 01:03:39,150 podnosi obrazac, froshim0, froshims3.php, to ide na 1349 01:03:39,150 --> 01:03:40,760 register3.php. 1350 01:03:40,760 --> 01:03:45,290 Ali register3.php zatim nastavlja za izvršavanje svih tih linija. 1351 01:03:45,290 --> 01:03:46,620 >> Dakle, postoji nekoliko Uzmi prospekti ovdje. 1352 01:03:46,620 --> 01:03:50,380 Jedna, to je očito prilično jednostavan, programatski, slati e-mailove, 1353 01:03:50,380 --> 01:03:50,830 što je dobro. 1354 01:03:50,830 --> 01:03:53,500 Kada se korisnik prijaviti za svoje stranice, u ovaj slučaj, kada su registrirali za 1355 01:03:53,500 --> 01:03:56,220 šport, možete e-mail brucoš Proctor, ili Ivan 1356 01:03:56,220 --> 01:03:57,650 Harvard, u ovom slučaju. 1357 01:03:57,650 --> 01:04:01,630 >> No, to također znači da možete raditi što? 1358 01:04:01,630 --> 01:04:03,970 Pošaljite e-poštu s bilo tko bilo kome. 1359 01:04:03,970 --> 01:04:05,430 I ovo je vrlo istinito. 1360 01:04:05,430 --> 01:04:08,580 To nije tako lako učiniti ako što ste navikli koristiti Gmail. 1361 01:04:08,580 --> 01:04:11,310 Ali, ako ste ikada koristiti Eudora ili Outlook, možete prilično mnogo reći 1362 01:04:11,310 --> 01:04:13,720 mail poslužitelj koji ste tko god želiš. 1363 01:04:13,720 --> 01:04:16,450 I ovo je mjesto gdje trebam staviti na da je šešir i reći, to ne rade. 1364 01:04:16,450 --> 01:04:21,140 No, to je samo dokaz kako je lako je izvesti phishing napada i 1365 01:04:21,140 --> 01:04:24,310 slati anonimne e-mailove, i spam, općenito. 1366 01:04:24,310 --> 01:04:27,330 I to stvarno svodi na Činjenica da je sve što je potrebno je neko 1367 01:04:27,330 --> 01:04:28,500 programski pristup. 1368 01:04:28,500 --> 01:04:31,940 >> Kao na stranu, moj najbliži susret sa ad odbora, moja prve godine, 1369 01:04:31,940 --> 01:04:34,320 Tada sam otkrio ovaj cool trik da, wow, možete 1370 01:04:34,320 --> 01:04:36,850 slanje e-pošte s bilo tko. 1371 01:04:36,850 --> 01:04:39,770 I tako smo imali neke glupe Argument, doslovno, u Matthews, 1372 01:04:39,770 --> 01:04:40,790 Među mojim Proctor skupini. 1373 01:04:40,790 --> 01:04:42,470 Ja se ni ne sjećam što je problem. 1374 01:04:42,470 --> 01:04:44,970 Ali sam htjela probati staviti završiti na ovu glupu raspravu. 1375 01:04:44,970 --> 01:04:48,580 >> Tako sam odlučio sam će poslati e-mail na moj Proctor skupine, pretvarajući se da 1376 01:04:48,580 --> 01:04:52,000 onaj drugi, s čijim mišljenju mislim složio, te su ga se pomiriti 1377 01:04:52,000 --> 01:04:54,680 bez obzira na moje mišljenje je u ovaj raspravu. 1378 01:04:54,680 --> 01:04:59,320 I tako sam krivotvorio ovu e-pošte pomoću Tehnika slični u duhu toga. 1379 01:04:59,320 --> 01:05:01,256 No, to je zapravo lakše u tom trenutku. 1380 01:05:01,256 --> 01:05:02,435 Hit slanje. 1381 01:05:02,435 --> 01:05:06,660 On nije bio zadovoljan, niti bi bio je oglas za glačanje. 1382 01:05:06,660 --> 01:05:10,280 >> I bio sam vrlo brzo uhvaćen u roku sekunde, jer, kao što znate, ja potpisujem 1383 01:05:10,280 --> 01:05:11,420 moja e-mail na određeni način. 1384 01:05:11,420 --> 01:05:14,200 I iako sam to učiniti ručno, u velikim dio, 15 godina kasnije, jer sam bio 1385 01:05:14,200 --> 01:05:15,080 traumatizirani da. 1386 01:05:15,080 --> 01:05:16,960 Nemam potpis na moj e-pošte sada. 1387 01:05:16,960 --> 01:05:20,440 No, u 1995, upravo sam imao sig, Potpis na moj e-mail. 1388 01:05:20,440 --> 01:05:24,630 Dakle, bilo je to na umu govoreći: Dragi Proctor skupine, sam pristati moje mišljenje 1389 01:05:24,630 --> 01:05:31,240 i slažem se s Davidom, potpisan, tako i Dakle, nova linija, nova linija, DJM. 1390 01:05:31,240 --> 01:05:36,220 >> Dakle, to ne rade ili, općenito, donositi Prednost ove tehnike. 1391 01:05:36,220 --> 01:05:39,950 No, prilikom izrade web stranica, kao i za Vaš konačni projekt, prilikom 1392 01:05:39,950 --> 01:05:43,460 Web stranica za nešto poduzetničke, ovo je kako, pragmatično, možete 1393 01:05:43,460 --> 01:05:47,000 poluge ostale usluge na internetu kao što je poštom i onda zapravo 1394 01:05:47,000 --> 01:05:49,440 slanje stvari pomoću koda. 1395 01:05:49,440 --> 01:05:51,240 >> Pa kako možemo poboljšati na to? 1396 01:05:51,240 --> 01:05:54,370 Pa, prvo ćemo uzeti brzi obilazak neke od stvari koje ćete vidjeti, 1397 01:05:54,370 --> 01:05:56,170 a zatim se pogled na par primjera. 1398 01:05:56,170 --> 01:05:59,500 Dakle, jedan, uvjeriti, jer mi leti kroz PHP. 1399 01:05:59,500 --> 01:06:02,470 I znam, u nekom trenutku, imat ćete da se zapravo početi pisati ovo ako 1400 01:06:02,470 --> 01:06:03,460 već niste učinili. 1401 01:06:03,460 --> 01:06:06,220 Shvatite da, jednom, glavna je vrsta mjesta kroz prozor s PHP. 1402 01:06:06,220 --> 01:06:09,420 Ako želite pisati kod koji dobiva izvršen, samo ga početi pisati u 1403 01:06:09,420 --> 01:06:13,970 file zove. php tako dugo dok imate otvorenu nosač 1404 01:06:13,970 --> 01:06:15,620 Upitnik PHP tag. 1405 01:06:15,620 --> 01:06:19,730 >> Ali primjetiti to su uvjeta u PHP-u. 1406 01:06:19,730 --> 01:06:22,610 Obavijest, to je isti slajd imali smo u jednom tjednu kada smo imali 1407 01:06:22,610 --> 01:06:25,670 Uvjeti u C. Uvjeti u PHP su strukturno i 1408 01:06:25,670 --> 01:06:27,140 sintaktički isti. 1409 01:06:27,140 --> 01:06:30,290 Jedina stvarna razlika je ako imaš uključenih varijabli, imate onima 1410 01:06:30,290 --> 01:06:31,600 Dolaru znakove. 1411 01:06:31,600 --> 01:06:33,970 >> U međuvremenu, Boolean izraza izgledaju ovako 1412 01:06:33,970 --> 01:06:35,725 ili-ing ili ing.-a zajedno. 1413 01:06:35,725 --> 01:06:37,780 Prekidači izgledati jednako. 1414 01:06:37,780 --> 01:06:42,180 Što je lijepo u PHP-u, dok je u C, sklopke moraju biti slučajeva na 1415 01:06:42,180 --> 01:06:46,380 primitivci kao Ints ili pougljeniti, u PHP-u vaši izvještaji slučaja zapravo može biti 1416 01:06:46,380 --> 01:06:48,430 na cijeli žice, što je zapravo vrsta lijepo. 1417 01:06:48,430 --> 01:06:49,480 Štedi vam neko vrijeme. 1418 01:06:49,480 --> 01:06:50,820 Ne mogu to učiniti u C. 1419 01:06:50,820 --> 01:06:52,880 >> Evo za petlju u PHP-u. 1420 01:06:52,880 --> 01:06:53,740 To je identična. 1421 01:06:53,740 --> 01:06:55,400 Možda imaju neke znakove dolara za varijable. 1422 01:06:55,400 --> 01:06:57,530 Ne moram spomenuti da je nešto što je int. 1423 01:06:57,530 --> 01:07:00,580 Vi samo ga proglasi s znak za dolar , a ime varijable. 1424 01:07:00,580 --> 01:07:01,430 Ali za petlje je isti. 1425 01:07:01,430 --> 01:07:02,760 Dok je petlja je isti. 1426 01:07:02,760 --> 01:07:04,870 Učiniti, a petlja je isti. 1427 01:07:04,870 --> 01:07:06,170 >> Ovo je malo drugačiji. 1428 01:07:06,170 --> 01:07:12,410 Tako je s PHP, s nizom, možete statički proglasi niz, kao u C, 1429 01:07:12,410 --> 01:07:14,420 ali koristiti uglate zagrade. 1430 01:07:14,420 --> 01:07:17,060 U C, koju će koristiti vitičastim zagradama, ako nije znao da je. 1431 01:07:17,060 --> 01:07:20,910 No, to je zapravo vrlo uobičajena u PHP deklarirati niz, u ovom slučaju, 1432 01:07:20,910 --> 01:07:23,640 brojeva, i pozvati promjenjivi brojevi. 1433 01:07:23,640 --> 01:07:25,300 >> Varijable same izgledati ovako. 1434 01:07:25,300 --> 01:07:28,710 Ovdje je string, citiram završen citat "Pozdrav svijet. "Možete imati obrnute kose n. 1435 01:07:28,710 --> 01:07:30,950 Ja jednostavno ne u ovom slučaju. 1436 01:07:30,950 --> 01:07:32,640 >> Sada je to zanimljiva konstrukt. 1437 01:07:32,640 --> 01:07:33,700 C nema to. 1438 01:07:33,700 --> 01:07:34,700 No, to je super pomogla. 1439 01:07:34,700 --> 01:07:38,160 A to ćete vidjeti u P setu 7 spec. - za svaki konstrukt. 1440 01:07:38,160 --> 01:07:41,800 Ako želite ponoviti nad svim Elementi matrice, nemate 1441 01:07:41,800 --> 01:07:45,500 da se bave $ ja i $ n, i + +, i sve to. 1442 01:07:45,500 --> 01:07:47,640 Vi doslovno možete reći, u PHP-u, ovaj - 1443 01:07:47,640 --> 01:07:51,890 za svaki brojevima kao broj, tako Ja sam uz pretpostavku da $ brojevi 1444 01:07:51,890 --> 01:07:53,380 je niz brojeva. 1445 01:07:53,380 --> 01:07:56,460 A kad kažem za svaki brojeva kao broj, to će se 1446 01:07:56,460 --> 01:08:00,505 automatski, kao što je moje petlje izvršava, ažurirati, na svakoj iteraciji, vrijednost 1447 01:08:00,505 --> 01:08:03,260 unutar znak dolara broja - 1448 01:08:03,260 --> 01:08:07,730 opet, i opet, i opet hodanje za mene tijekom tog niza. 1449 01:08:07,730 --> 01:08:08,735 Pa to samo kod nas spašava. 1450 01:08:08,735 --> 01:08:12,250 Nema zarezom, nema + + 's, no ja je, Ne N-ih, to je samo lijepa. 1451 01:08:12,250 --> 01:08:13,700 >> Ali PHP također ima ova. 1452 01:08:13,700 --> 01:08:14,830 A to je iznimno moćan. 1453 01:08:14,830 --> 01:08:17,410 I vi ćete koristiti ovaj, ruke na, u P postavili sedam. 1454 01:08:17,410 --> 01:08:21,990 I asocijativne matrice je također proglasio sa četvrtastim zagradama. 1455 01:08:21,990 --> 01:08:23,569 Ali primjetiti sintaksu sada. 1456 01:08:23,569 --> 01:08:26,880 To podsjeća na ono što smo vidjeli s print_r maloprije. 1457 01:08:26,880 --> 01:08:31,810 Koliko tipke, kao malo razum ček, to polje izgleda da je. 1458 01:08:31,810 --> 01:08:32,689 >> Tako da ima dva. 1459 01:08:32,689 --> 01:08:33,830 I ja zovem ovaj niz. 1460 01:08:33,830 --> 01:08:36,760 No, ako to pomaže, možete misliti ove kao hash tablicu, ili kao 1461 01:08:36,760 --> 01:08:37,930 asocijativne matrice. 1462 01:08:37,930 --> 01:08:39,580 Ali, to je samo drugačiji vrsta polja. 1463 01:08:39,580 --> 01:08:41,080 I opet, različiti jezici ima tih. 1464 01:08:41,080 --> 01:08:43,810 Mi ćemo vidjeti nešto slično u JavaScriptu i. 1465 01:08:43,810 --> 01:08:44,609 Ima dvije tipke. 1466 01:08:44,609 --> 01:08:48,390 Jedan je citat završen citat, "simbol", jedan je citiram "završen citat cijenu." A one tipke 1467 01:08:48,390 --> 01:08:49,250 svaki ima vrijednost. 1468 01:08:49,250 --> 01:08:54,420 U tom slučaju i znaka vrijednost FB, za Facebook, i cijena je vrijednost 49, 26, 1469 01:08:54,420 --> 01:08:56,899 što je Facebookov dionica Cijena od jutros. 1470 01:08:56,899 --> 01:09:00,170 >> Dakle, ono što je korisno o asocijativne matrice. 1471 01:09:00,170 --> 01:09:02,620 Mogao sam imala brojčano indeksirana polja sa samo 1472 01:09:02,620 --> 01:09:04,120 jednostavna uglate zagrade. 1473 01:09:04,120 --> 01:09:09,380 A mogao sam imala znak dolara citat jednak upravo to. 1474 01:09:09,380 --> 01:09:10,529 Dopustite mi da zapravo to učiniti. 1475 01:09:10,529 --> 01:09:14,796 Pretpostavimo da sam umjesto toga samo proglasio Taj niz takav. 1476 01:09:14,796 --> 01:09:17,590 To je sasvim valjan, sintaktički. 1477 01:09:17,590 --> 01:09:20,569 To ne gube bilo kakve informacije, po sebi. 1478 01:09:20,569 --> 01:09:24,760 Ja još uvijek vidjeti da je simbol fb, i da je cijena 49, 26. 1479 01:09:24,760 --> 01:09:28,939 Pa zašto su asocijativne nizovi primamljivo? 1480 01:09:28,939 --> 01:09:30,189 >> PUBLIKA: Ne morate se sjetiti gdje ste stavili stvari. 1481 01:09:30,189 --> 01:09:32,050 1482 01:09:32,050 --> 01:09:34,130 >> ZVUČNI 1: Točno, nemate se sjetiti gdje ste stavili stvari. 1483 01:09:34,130 --> 01:09:37,670 Vi ne morate se sjetiti proizvoljno da dionice nije u zagradi nula, 1484 01:09:37,670 --> 01:09:41,479 i cijene dionica u jednom nosač, što je osobito opasno ako 1485 01:09:41,479 --> 01:09:43,220 promijeniti stvari, na kraju. 1486 01:09:43,220 --> 01:09:46,399 To je puno ljepše od druženja ono što ćemo nazvati metapodataka 1487 01:09:46,399 --> 01:09:48,340 sa svojim stvarnim podacima. 1488 01:09:48,340 --> 01:09:52,399 Ja bih tvrditi da je ono što mi je jako stalo o ovdje je FB i 49, 26. 1489 01:09:52,399 --> 01:09:57,020 Simbol a cijena je metapodataka koji opisuje podatke smo 1490 01:09:57,020 --> 01:09:58,180 zapravo stalo. 1491 01:09:58,180 --> 01:10:01,910 No, to je samo toliko lakše pristupiti. 1492 01:10:01,910 --> 01:10:04,090 >> Sada, kao što je na stranu cijena koju plaćamo? 1493 01:10:04,090 --> 01:10:06,600 Mi smo radili ovo u CS50 tjednima. 1494 01:10:06,600 --> 01:10:10,740 Ova značajka mora doći na neki trošak. 1495 01:10:10,740 --> 01:10:11,350 Memorije. 1496 01:10:11,350 --> 01:10:13,830 Dakle, da ste ne samo čuvanje 32-bitni cijeli broj, na primjer. 1497 01:10:13,830 --> 01:10:17,980 Vi ste spremanje simbol / 0, vjerojatno. 1498 01:10:17,980 --> 01:10:19,160 Dakle, koristite li više memorije. 1499 01:10:19,160 --> 01:10:22,540 >> A što je izvedba gleda nešto u 1500 01:10:22,540 --> 01:10:24,822 asocijativne matrice, vjerojatno? 1501 01:10:24,822 --> 01:10:26,590 To je vjerojatno sporije. 1502 01:10:26,590 --> 01:10:29,670 Random pristup je lijepo, pogotovo kada možete napraviti binarno pretraživanje. 1503 01:10:29,670 --> 01:10:33,380 No, ako ste zaista sad ne gleda za brojeve, ali za gudače, to 1504 01:10:33,380 --> 01:10:37,630 doista se provodi pod napa, vjerojatno kao hash tablicu, gdje je 1505 01:10:37,630 --> 01:10:42,950 koristite ili hash tablicu s odvojenim ulančavanje. 1506 01:10:42,950 --> 01:10:46,040 Ili koristite pokušati zapravo pohraniti vrijednosti. 1507 01:10:46,040 --> 01:10:50,550 Dakle, možda možete napraviti stalnu vrijeme, ali vi još uvijek morate gledati na S-Y-M-B-O-L, 1508 01:10:50,550 --> 01:10:54,510 potencijalno, umjesto samo 32 bita za pogledati nešto gore. 1509 01:10:54,510 --> 01:10:58,430 Pa opet, one iste ideje dolaze natrag da će se ponoviti u ovom kontekstu. 1510 01:10:58,430 --> 01:11:02,120 >> Ali opet, PHP sada ima neki super Globals da je, ispostavilo se, su 1511 01:11:02,120 --> 01:11:02,900 asocijativne nizove. 1512 01:11:02,900 --> 01:11:05,590 Vidjeli smo jedan trenutak prije, $ _POST. 1513 01:11:05,590 --> 01:11:08,400 I taj super globalne ima ključeve i vrijednosti. 1514 01:11:08,400 --> 01:11:10,550 Naime, ključevi postroje sa čim? 1515 01:11:10,550 --> 01:11:14,520 Gdje su ključevi u $ _POST dolaze iz? 1516 01:11:14,520 --> 01:11:15,380 Samo da ponovim? 1517 01:11:15,380 --> 01:11:16,480 >> PUBLIKA: Ime. 1518 01:11:16,480 --> 01:11:17,900 >> ZVUČNI 1: Ime, gdje je? 1519 01:11:17,900 --> 01:11:19,860 >> PUBLIKA: [nečujno] 1520 01:11:19,860 --> 01:11:20,750 >> ZVUČNI 1: Ime je atribut. 1521 01:11:20,750 --> 01:11:23,480 Pa gdje je, gdje su izvorno dolaze iz? 1522 01:11:23,480 --> 01:11:24,120 Oblik. 1523 01:11:24,120 --> 01:11:30,140 Dakle, ako HTML stranica ima oznaku obrasca, unutar kojih su neki ulazi, kao što su 1524 01:11:30,140 --> 01:11:34,760 okvire, tekstualni okviri, padajući izbornici, od kojih svaki ima svoj naziv, te 1525 01:11:34,760 --> 01:11:40,260 imena završiti kao ključeva u $ _POST, i, iskreno, za taj tvar, $ _GET. 1526 01:11:40,260 --> 01:11:42,130 Ako metoda je dobiti, ista ideja. 1527 01:11:42,130 --> 01:11:43,830 To je samo u drugom svjetskom super. 1528 01:11:43,830 --> 01:11:47,620 A vrijednosti, naravno, dolaze iz što je korisnik upisao u na njegov 1529 01:11:47,620 --> 01:11:48,890 joj pregledniku. 1530 01:11:48,890 --> 01:11:49,830 >> No, postoji još nekoliko drugih. 1531 01:11:49,830 --> 01:11:52,140 Postoji Cookie, koje ćemo vratiti na kraju. 1532 01:11:52,140 --> 01:11:56,050 No, to su stvari koje znate Web koristi za neke dobro ili zlo. 1533 01:11:56,050 --> 01:11:57,420 No, vratit ćemo se na to. 1534 01:11:57,420 --> 01:12:01,720 Server i session, i ta dva imaju neki poseban program. 1535 01:12:01,720 --> 01:12:03,940 >> Ali neka je pogledati ovo. 1536 01:12:03,940 --> 01:12:13,330 Dopustite mi da ići naprijed i otvoriti primjer Tako se zove mvc0.php MVC 1537 01:12:13,330 --> 01:12:14,900 se zalaže za sljedećeg. 1538 01:12:14,900 --> 01:12:19,390 I uvodimo ovo ranije nego što je to Tipično, zapravo, da bi ste projektiranju 1539 01:12:19,390 --> 01:12:22,180 Problem set 7, kao i konačni projekti u vrsti industrije 1540 01:12:22,180 --> 01:12:23,670 standardni način, i čist način. 1541 01:12:23,670 --> 01:12:24,820 To je dobar dizajn. 1542 01:12:24,820 --> 01:12:29,090 >> Tako da ćete vidjeti, a vi ćete iskustva, u P skupa 7, paradigme, sortiranja 1543 01:12:29,090 --> 01:12:32,260 od programiranja razmišljanje, kako izgleda Malo se nešto ovako. 1544 01:12:32,260 --> 01:12:35,570 M za Model C, za kontroler, V za prikaz. 1545 01:12:35,570 --> 01:12:39,690 Da ne duljimo, MVC je samo neka vrsta metodologije, način izrade 1546 01:12:39,690 --> 01:12:43,360 web stranice, posebno, pri čemu se staviti sve svoje glupe fraze, - 1547 01:12:43,360 --> 01:12:44,970 poslovna logika - 1548 01:12:44,970 --> 01:12:49,710 sve svoje intelektualnog vlasništva u ono što se naziva kontroler, file 1549 01:12:49,710 --> 01:12:54,840 kao što je index.php, ili ćemo vidjeti, quote.php ili buy.php. 1550 01:12:54,840 --> 01:12:59,570 >> U kontekstu Problem skupa 7, vaš Modeli obično sadrže podatke, 1551 01:12:59,570 --> 01:13:03,860 ništa se odnose na baze podataka, kao što ćemo na kraju vidjeti, a svoje stavove 1552 01:13:03,860 --> 01:13:07,510 sadrže estetiku vašeg stranica, HTML, CSS. 1553 01:13:07,510 --> 01:13:10,420 Tako smo već vidjeli u C malo malo pomoću h. datoteke. 1554 01:13:10,420 --> 01:13:15,010 Stvarno smo ga vidjeli maloprije sa CSS, factoring CSS stilizacije 1555 01:13:15,010 --> 01:13:16,520 stvari iz našeg HTML. 1556 01:13:16,520 --> 01:13:20,730 >> Dakle MVC je zapravo samo o crtežu crte u pijesku i govore, 1557 01:13:20,730 --> 01:13:25,400 Zanimljivo programski kod za vaš Web stranica spada u ono što ćemo nazvati 1558 01:13:25,400 --> 01:13:26,400 kontroler. 1559 01:13:26,400 --> 01:13:29,280 Stvari se odnose na baze podataka obično završi u modelu. 1560 01:13:29,280 --> 01:13:33,070 Ali vidjet ćete, u problem setu 7, mi pisama, C i M da bi to jednostavno. 1561 01:13:33,070 --> 01:13:37,630 No, pogled je mjesto gdje sve svoje HTML i estetika obično ide. 1562 01:13:37,630 --> 01:13:39,160 >> Dakle, što to znači u realnim uvjetima? 1563 01:13:39,160 --> 01:13:45,980 Pa, dopustite mi da odem u naš MVC katalog na sljedeći način. 1564 01:13:45,980 --> 01:13:48,880 I vi ćete vidjeti više od njih turneji kroz u spec.. 1565 01:13:48,880 --> 01:13:53,200 Tako je u mvc0, ja tvrdim da je to, kao, Verzija od 0 CS50 web stranice. 1566 01:13:53,200 --> 01:13:56,670 >> Svi mi imamo neka HTML, kao i Veliki H1 tag, očito. 1567 01:13:56,670 --> 01:13:57,800 A onda popis s oznakama. 1568 01:13:57,800 --> 01:13:59,860 Nikada nisam vidio popis s grafičkim oznakama i prije, ali nije velika stvar. 1569 01:13:59,860 --> 01:14:01,590 Idemo brzo pogledajte izvorni kod. 1570 01:14:01,590 --> 01:14:06,610 Ispostavilo se da je neuređen popis mecima otvoren je nosač ul sa jednim ili 1571 01:14:06,610 --> 01:14:09,065 više popis stavki, Li. 1572 01:14:09,065 --> 01:14:10,650 Dakle, ovdje je obavijest oznaka sidra. 1573 01:14:10,650 --> 01:14:12,130 Vidjeli smo da je trenutak prije. 1574 01:14:12,130 --> 01:14:13,810 >> Dakle to je kako sam provesti ovu stranicu. 1575 01:14:13,810 --> 01:14:18,460 Imam dvije veze, dvije popis stavki, jedan ul za neuređen popisu, i na kraju 1576 01:14:18,460 --> 01:14:22,700 Rezultat, estetski, to je vrlo lijepa stranica, verzija 0 ovdje. 1577 01:14:22,700 --> 01:14:26,840 No, ono što je zanimljivo je sada kako je ovo provodi se ispod poklopca motora. 1578 01:14:26,840 --> 01:14:33,590 >> Pusti me u gedit i otvoriti ovu Prvi primjer naslikati sliku. 1579 01:14:33,590 --> 01:14:37,070 I mi ćemo pogledati što je manjkav, potencijalno, u ovdje. 1580 01:14:37,070 --> 01:14:43,260 Sada, ako idem na localhost, javne, MVC, primijetiti nekoliko datoteka. 1581 01:14:43,260 --> 01:14:45,780 Idem nazvati njih, za Trenutak, svi regulatori. 1582 01:14:45,780 --> 01:14:48,640 Ali to je malo od zlostavljanja, jer vidjet ćete sve što je dosta izmiješala 1583 01:14:48,640 --> 01:14:49,620 unutar njih. 1584 01:14:49,620 --> 01:14:52,330 >> I neka mi ide unutar index.php. 1585 01:14:52,330 --> 01:14:54,700 I vidimo, doslovno, isti HTML. 1586 01:14:54,700 --> 01:14:57,970 Dakle, iako ovu sliku završava u . Php, to ne znači da mora 1587 01:14:57,970 --> 01:14:59,500 imati bilo PHP kod. 1588 01:14:59,500 --> 01:15:02,290 To samo može biti sirovo HTML, iako kako je glupavo. 1589 01:15:02,290 --> 01:15:07,650 Ali primijetite da nema otvoren nosač PHP označiti, osim za to, koji, iskreno, 1590 01:15:07,650 --> 01:15:09,160 je samo tu da služe kao komentar. 1591 01:15:09,160 --> 01:15:12,080 Ali to nije funkcionalno čak i da je zanimljivo. 1592 01:15:12,080 --> 01:15:12,960 >> Ali primijetiti. 1593 01:15:12,960 --> 01:15:15,400 Ono što je zanimljivo je ono što je sada Promjene na ovoj stranici. 1594 01:15:15,400 --> 01:15:16,650 Dopustite mi da kliknete predavanja. 1595 01:15:16,650 --> 01:15:18,560 I primjetiti URL će se uskoro promijeniti. 1596 01:15:18,560 --> 01:15:20,930 Sada sam na lectures.php. 1597 01:15:20,930 --> 01:15:22,630 Dopustite mi kliknite na nuli. 1598 01:15:22,630 --> 01:15:27,200 Sada sam na week0.php I sad neka mi otvoriti te datoteke u gedit. 1599 01:15:27,200 --> 01:15:30,120 Ne samo index, ali neka ja otvoriti predavanja. 1600 01:15:30,120 --> 01:15:33,900 I neka mi riješi komentarima da se usredotočite na ovom dijelu jedini. 1601 01:15:33,900 --> 01:15:37,680 >> I sad neka mi se otvoriti samo još jedan, week0.php, bacaju komentare, 1602 01:15:37,680 --> 01:15:39,910 samo da ovo počistiti. 1603 01:15:39,910 --> 01:15:41,720 A sada primjetiti sljedeće. 1604 01:15:41,720 --> 01:15:47,340 Razmišljajući stvarno vrsta pažljivo o Dizajn, i neka to bude liniju 1605 01:15:47,340 --> 01:15:52,013 se ista, što se može učiniti Bolje ovdje, što mislite? 1606 01:15:52,013 --> 01:15:56,450 1607 01:15:56,450 --> 01:15:57,780 >> Kako sam napraviti jedan tjedan? 1608 01:15:57,780 --> 01:15:58,480 Kako o tome. 1609 01:15:58,480 --> 01:16:00,450 Dakle to je kako sam napravio jedan tjedan. 1610 01:16:00,450 --> 01:16:08,290 Otišao sam do File, New, Paste, Spremi, week1.php, a onda sam otišao u ovdje. 1611 01:16:08,290 --> 01:16:09,875 I sam promijenio jedan - 1612 01:16:09,875 --> 01:16:11,646 što je to, jedna do petka. 1613 01:16:11,646 --> 01:16:14,430 1614 01:16:14,430 --> 01:16:15,810 Promijenio sam nula na jedan. 1615 01:16:15,810 --> 01:16:17,150 Promijenio sam to jednom. 1616 01:16:17,150 --> 01:16:20,350 >> U redu, tako da sada pogledajte mojih slika. 1617 01:16:20,350 --> 01:16:22,100 Što se može učiniti drugačije? 1618 01:16:22,100 --> 01:16:25,310 Gdje je prilika, možda? 1619 01:16:25,310 --> 01:16:28,330 Dakle, postoji prilika za početak factoring ove stvari out. 1620 01:16:28,330 --> 01:16:32,950 Dopustite mi da se otvaraju, kao spojler, za ono što ćete vidjeti u P setu 7. 1621 01:16:32,950 --> 01:16:38,750 Ako sam se otvoriti, sada, u verziji index.php Petorica to, izgleda put 1622 01:16:38,750 --> 01:16:40,730 više zagonetan, doduše. 1623 01:16:40,730 --> 01:16:43,710 >> Ali ovo, sad, je ono što ću zvati Kontrolor koji je kontroli 1624 01:16:43,710 --> 01:16:44,770 Logika moje stranice. 1625 01:16:44,770 --> 01:16:48,510 A možete vrsta rekonstruirati, intuitivno, možda, što se događa. 1626 01:16:48,510 --> 01:16:50,630 Na prvoj liniji, to je malo zagonetan. 1627 01:16:50,630 --> 01:16:54,040 No primijetite sam zahtijevaju, kao i sa Oštar uključuju, file se zove 1628 01:16:54,040 --> 01:16:55,930 helpers.php. 1629 01:16:55,930 --> 01:16:59,980 I onda zovem, očito, funkcija, zove uzvratiti, prolazeći u 1630 01:16:59,980 --> 01:17:00,850 Dva argumenta. 1631 01:17:00,850 --> 01:17:02,440 >> Jedan je citat završen citat, header. 1632 01:17:02,440 --> 01:17:04,800 A drugi je, kakva tip podataka je to, na temelju 1633 01:17:04,800 --> 01:17:07,180 Na naš sintakse ranije? 1634 01:17:07,180 --> 01:17:08,160 Ona je povezana polja. 1635 01:17:08,160 --> 01:17:11,730 Naime, kako protječe u naslovu s nekim metapodataka koji podsjeća 1636 01:17:11,730 --> 01:17:13,430 me što je to i njegova vrijednost. 1637 01:17:13,430 --> 01:17:16,340 Onda vidim teško kodirano ul, pa neki sirovi HTML. 1638 01:17:16,340 --> 01:17:20,020 Ali onda sam se vratio u PHP modu pozivanje funkcije uzvratiti. 1639 01:17:20,020 --> 01:17:24,390 Dakle, čak i ako nikada niste koristili HTML ili PHP prije, i iako ovo izgleda 1640 01:17:24,390 --> 01:17:27,480 strašnije, zašto je to vjerojatno bolji dizajn? 1641 01:17:27,480 --> 01:17:31,310 Što je bolje o tome, na temelju zaključivanja? 1642 01:17:31,310 --> 01:17:32,130 >> PUBLIKA: [nečujno] 1643 01:17:32,130 --> 01:17:35,750 >> ZVUČNI 1: Manje suvišan u koji nema više HTML tag, nema više 1644 01:17:35,750 --> 01:17:38,410 Čelnici tag, nema više tijelo tag u svakom prokletom datoteku. 1645 01:17:38,410 --> 01:17:41,860 Umjesto toga, ja sam uzete iz sličnosti i vjerojatno ih staviti 1646 01:17:41,860 --> 01:17:45,150 u datoteku nekako se odnose na napadača. 1647 01:17:45,150 --> 01:17:48,500 I ista stvar za blisku tijela tag, blizu HTML oznaka. 1648 01:17:48,500 --> 01:17:52,165 To je vjerojatno dolje unutar od podnožja negdje. 1649 01:17:52,165 --> 01:17:57,050 I vidjet ćete, u problem skupa 7, Malo turneju kroz to. 1650 01:17:57,050 --> 01:17:58,070 >> Dakle, ono što je pred nama? 1651 01:17:58,070 --> 01:18:03,390 Jedna stvar mi se ne sposobnost još je da se zapravo pohranu podataka. 1652 01:18:03,390 --> 01:18:06,110 I tako što ćemo početi vidjeti Srijeda, primjerice, da je vaš 1653 01:18:06,110 --> 01:18:08,450 stari prijatelj Excel, ili se brojevi, vam omogućuje da pohraniti puno 1654 01:18:08,450 --> 01:18:10,060 podatke u retke i stupce. 1655 01:18:10,060 --> 01:18:12,570 Ispada vas može učiniti da je u tome što je pod nazivom baze podataka, programski. 1656 01:18:12,570 --> 01:18:16,620 manično I ispada, nakon toga, mi ćemo biti u mogućnosti pohraniti stvari kao što su 1657 01:18:16,620 --> 01:18:20,550 ovo što ćete vidjeti u P setu 7, cijela hrpa korisničkih imena i 1658 01:18:20,550 --> 01:18:23,690 lozinke, od kojih je potonji su zapravo kodiran, baš kao oni 1659 01:18:23,690 --> 01:18:25,550 bili u P set 2 je haker izdanju. 1660 01:18:25,550 --> 01:18:29,600 I na kraju, vi ćete provesti ovo, svoj eTrade poput web stranica koja 1661 01:18:29,600 --> 01:18:32,220 implementira zajednički CS50 financije. 1662 01:18:32,220 --> 01:18:36,000 >> Konačno, budući da je ostao ovdje tako kasno Danas, ako se vrati u ovom dijelu 1663 01:18:36,000 --> 01:18:41,120 od kampusa, u 16:00 Danas, hoćemo dati ne samo savjet, u SCES 1664 01:18:41,120 --> 01:18:44,200 Savjetovanje sajam, u 4:00 sati, u Maxwell-Dworkin, mi ćemo vam dati neke 1665 01:18:44,200 --> 01:18:47,470 Americone Dream, Cherry Garcia, Chocolate Fudge Brownie, Čokolada 1666 01:18:47,470 --> 01:18:50,840 Chip Cookie tijesta, i, kada Google Chunky ludorije, ti to. 1667 01:18:50,840 --> 01:18:53,620 Dakle, sve to čeka u 4:00 PM u Maxwell-Dworkina. 1668 01:18:53,620 --> 01:18:56,736 Vidimo se u srijedu, kao dobro. 1669 01:18:56,736 --> 01:18:59,960 >> ZVUČNI 2: U iduće CS50, RJ spava u. 1670 01:18:59,960 --> 01:19:03,656 1671 01:19:03,656 --> 01:19:04,906 >> RJ: Moje poglavlje! 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