1 00:00:00,000 --> 00:00:11,470 2 00:00:11,470 --> 00:00:12,764 >> ALTAVEU 1: Tots, dret benvinguda. 3 00:00:12,764 --> 00:00:14,140 Aquesta és CS50. 4 00:00:14,140 --> 00:00:16,800 I aquest és el començament de la novena setmana. 5 00:00:16,800 --> 00:00:19,960 I això és el començament d'la resta de seu temps en CS50, en el qual 6 00:00:19,960 --> 00:00:23,170 transició ara, per fi, a la web aspecte del curs, on 7 00:00:23,170 --> 00:00:26,200 trobareu que molts dels fonaments que hem estat exportant durant setmanes 8 00:00:26,200 --> 00:00:29,270 tot i així tornar a visitar, o assetjant, nosaltres. 9 00:00:29,270 --> 00:00:33,440 Però ara, trobareu que es tracta d'una ordre de magnitud més fàcil 10 00:00:33,440 --> 00:00:36,540 realitzar certes tasques i resoldre certs problemes - 11 00:00:36,540 --> 00:00:41,050 tant és així que fins i tot si vostè creu certs grups de problemes eren divertides en el seu 12 00:00:41,050 --> 00:00:44,200 seva manera, crec que trobarà que va fixar 7 p, p fixar 8, i després, 13 00:00:44,200 --> 00:00:47,990 en última instància, el projecte final serà encara més gratificant, ja que tindrà 14 00:00:47,990 --> 00:00:51,830 trobem que comencem a donar per fet ara les coses com la gestió de memòria, i 15 00:00:51,830 --> 00:00:54,190 punters, i el que està passant de sota el capó. 16 00:00:54,190 --> 00:00:57,310 I de nou, temàtica, durant tot el semestre ha estat l'estratificació 17 00:00:57,310 --> 00:00:58,030 i capes. 18 00:00:58,030 --> 00:01:00,530 I ara som una espècie de fins aquí, de peu al 19 00:01:00,530 --> 00:01:01,930 espatlles de setmana passat. 20 00:01:01,930 --> 00:01:05,360 >> Ara, recordeu l'última vegada que va parlar de com funcionava l'internet. 21 00:01:05,360 --> 00:01:08,120 I això era potser una simplificació excessiva, però recordeu que 22 00:01:08,120 --> 00:01:12,960 tots els ordinadors del món té una IP abordar, encara que això és una mica d'una 23 00:01:12,960 --> 00:01:14,570 simplificació encara. 24 00:01:14,570 --> 00:01:18,180 I aquestes adreces s'utilitzen únicament per màquines d'identificar de manera que 25 00:01:18,180 --> 00:01:22,010 Quan s'envia informació o paquets, per així dir-ho, que poden tenir un origen 26 00:01:22,010 --> 00:01:24,000 electrònic i una adreça de destinació. 27 00:01:24,000 --> 00:01:27,830 I aquestes mateixes adreces IP es poden utilitzar tant per al bo i per el dolent, 28 00:01:27,830 --> 00:01:29,270 per efectuar el seu seguiment, per exemple. 29 00:01:29,270 --> 00:01:32,200 De fet, cada un de vosaltres amb un ordinador portàtil obrir ara, o el telèfon de la seva 30 00:01:32,200 --> 00:01:35,070 butxaca, té una adreça IP a la xarxa de Harvard. 31 00:01:35,070 --> 00:01:39,120 I no és tan difícil d' correlacionar això a qui i on 32 00:01:39,120 --> 00:01:40,180 són aquests dies. 33 00:01:40,180 --> 00:01:42,090 Però més sobre això potser en el futur. 34 00:01:42,090 --> 00:01:46,510 >> Ara que vaig pensar en portar de tornada alguns records d'[? millorar?] i donar-li 35 00:01:46,510 --> 00:01:49,360 un altre clip d'un programa que podria trobar familiar. 36 00:01:49,360 --> 00:01:52,710 Si poguéssim apagar els llums per tan sols uns segons. 37 00:01:52,710 --> 00:01:53,960 L'espectacle Numb3rs. 38 00:01:53,960 --> 00:01:57,510 39 00:01:57,510 --> 00:02:00,540 >> ALTAVEU 2: És una adreça IPP4 32 bits. 40 00:02:00,540 --> 00:02:01,610 >> ALTAVEU 3: IPP, com a internet? 41 00:02:01,610 --> 00:02:02,968 >> ALTAVEU 2: Xarxa privada. 42 00:02:02,968 --> 00:02:04,960 Per a la xarxa privada d'Amita. 43 00:02:04,960 --> 00:02:16,930 44 00:02:16,930 --> 00:02:19,602 Ella és tan sorprenent. 45 00:02:19,602 --> 00:02:21,030 >> ALTAVEU 3: Anem, Charlie. 46 00:02:21,030 --> 00:02:21,490 >> ALTAVEU 2: és. 47 00:02:21,490 --> 00:02:22,470 Una adreça IP mirall. 48 00:02:22,470 --> 00:02:27,680 Està deixant que vetllem el que està fent en temps real. 49 00:02:27,680 --> 00:02:30,930 >> ALTAVEU 1: OK, així que un parell de coses malament amb aquesta imatge. 50 00:02:30,930 --> 00:02:32,920 Així que un, i aquest és acceptable, això és en realitat 51 00:02:32,920 --> 00:02:34,400 no és una adreça IP vàlida. 52 00:02:34,400 --> 00:02:38,190 Una adreça IP vàlida ha de ser nombres de la forma w.x.y.z, on cada un dels 53 00:02:38,190 --> 00:02:40,000 aquestes cartes és de 0 a 255. 54 00:02:40,000 --> 00:02:42,330 Però això està bé, perquè igual que el pel · lícules on estiguin disponibles els números de telèfon falsos, 55 00:02:42,330 --> 00:02:43,520 fingeixen adreces IP. 56 00:02:43,520 --> 00:02:45,230 En realitat no va colpejar servidors reals. 57 00:02:45,230 --> 00:02:46,760 >> Però això sí, es tracta d'un navegador. 58 00:02:46,760 --> 00:02:50,760 I navegadors no comencen sortida codi informàtic com aquest. 59 00:02:50,760 --> 00:02:54,230 I si ens fixem una mica més, notem que l'idioma que estan veient 60 00:02:54,230 --> 00:02:57,040 a la pantalla és un llenguatge anomenat Objectiu C, que és l'idioma en el 61 00:02:57,040 --> 00:02:59,520 aplicacions per l'iPhone que s'escriuen, en particular els que impliquen 62 00:02:59,520 --> 00:03:03,540 llapis de colors, com es pot veure en el codi font aquí. 63 00:03:03,540 --> 00:03:06,600 64 00:03:06,600 --> 00:03:07,560 >> Bé, vaig pensar que això era graciós. 65 00:03:07,560 --> 00:03:12,240 Així que aquest fragment de codi no té absolutament res a veure amb el que aquesta 66 00:03:12,240 --> 00:03:13,940 en particular episodi tractava. 67 00:03:13,940 --> 00:03:17,590 Així que la broma és alguna cosa sobre la gent tenint per aquest fet. 68 00:03:17,590 --> 00:03:20,220 Però això no és tan difícil d'aconseguir aquests detalls tècnics adequats. 69 00:03:20,220 --> 00:03:21,980 I els animo. 70 00:03:21,980 --> 00:03:25,530 I, de fet, 50 molt bé podria espatllar una gran quantitat de programes de televisió i pel · lícules o vostè 71 00:03:25,530 --> 00:03:27,320 perquè trobareu que és just no és possible el que són 72 00:03:27,320 --> 00:03:28,630 fent a la pantalla. 73 00:03:28,630 --> 00:03:31,750 Però de fet, aquest és el codi que ha pot veure-ho en una aplicació iPhone 74 00:03:31,750 --> 00:03:33,640 o una aplicació Mac OS. 75 00:03:33,640 --> 00:03:35,685 No té res en absolut a veure amb la seguretat. 76 00:03:35,685 --> 00:03:38,610 Per tal de mantenir un ull cap a fora per més coses tan divertides com aquestes. 77 00:03:38,610 --> 00:03:42,720 >> Però avui comencem a bussejar en realitat profundament a tota una varietat d'idiomes. 78 00:03:42,720 --> 00:03:45,410 Un fet, un dels més global menjar per emportar d'aquesta part de la 79 00:03:45,410 --> 00:03:51,815 Per descomptat no és per aprendre a programar en PHP, no aprendre SQL per se, no 80 00:03:51,815 --> 00:03:58,100 per aprendre JavaScript per se, sinó més aviat per ensenyar a tu mateix com ensenyar 81 00:03:58,100 --> 00:04:02,030 vostè mateix noves llengües, ja que, de fet, comencem a tenir ara la 82 00:04:02,030 --> 00:04:06,020 rodes d'entrenament de manera que després de final del curs, que no esperis a 20 83 00:04:06,020 --> 00:04:08,890 especificació de la pàgina que li digui com implementar algun programa. 84 00:04:08,890 --> 00:04:12,970 Vostè té suficients ingredients en el seu ment, i les eines suficients en la seva eina 85 00:04:12,970 --> 00:04:15,750 kit, amb el que per començar a construir solucions als problemes d'interès per 86 00:04:15,750 --> 00:04:19,130 per algun grup d'estudiants, per alguna projecte d'investigació, o en realitat qualsevol cosa 87 00:04:19,130 --> 00:04:20,140 d'interès per a vostè. 88 00:04:20,140 --> 00:04:24,150 >> Així que amb aquest fi, cal recordar que es tractava d' el quadre que va dibuixar l'última vegada. 89 00:04:24,150 --> 00:04:27,620 I això és de dos equips, client i tallar, parlant l'un a l'altre. 90 00:04:27,620 --> 00:04:31,130 I el protocol, l'idioma, per la qual cosa parlen, que aquests dos ordinadors succeeixen 91 00:04:31,130 --> 00:04:33,220 estar parlant es diu HTTP. 92 00:04:33,220 --> 00:04:37,730 I això és només el protocol utilitzat per ordinadors per transferir informació a través de 93 00:04:37,730 --> 00:04:38,710 la World Wide Web. 94 00:04:38,710 --> 00:04:41,770 El web, per descomptat, és només un servei que s'executa en la part superior de la 95 00:04:41,770 --> 00:04:43,000 anomenada internet. 96 00:04:43,000 --> 00:04:48,660 Quin és un altre servei disponible a part superior de la Internet en aquests dies? 97 00:04:48,660 --> 00:04:51,600 En un altre protocol o - què és això? 98 00:04:51,600 --> 00:04:52,300 >> AUDIÈNCIA: FTP. 99 00:04:52,300 --> 00:04:52,790 >> ALTAVEU 1: FTP. 100 00:04:52,790 --> 00:04:54,630 Així Protocol de transferència d'arxius és una altra. 101 00:04:54,630 --> 00:04:56,050 La majoria de vostès probablement no l'han utilitzat. 102 00:04:56,050 --> 00:04:58,830 Però la majoria de vostès probablement han utilitzat coses com Gchat o instantània 103 00:04:58,830 --> 00:05:00,970 missatgeria més en general, certament de correu electrònic. 104 00:05:00,970 --> 00:05:04,470 I ells, també, són els serveis que s'executen en part superior de la Internet, ja que, en el 105 00:05:04,470 --> 00:05:08,180 final del dia, la pròpia Internet realment només obtenir les dades del punt A al 106 00:05:08,180 --> 00:05:12,480 punt B. i utilitza una sèrie de partícules en si, un d'ells o dos 107 00:05:12,480 --> 00:05:17,340 d'ells més generalment anomenat TCP / IP, el que vol dir que un ordinador de 108 00:05:17,340 --> 00:05:19,960 Internet en realitat pot estar fent coses diferents, correu electrònic, 109 00:05:19,960 --> 00:05:20,980 i de la tela, i així successivament. 110 00:05:20,980 --> 00:05:22,220 Google fa un munt d'això. 111 00:05:22,220 --> 00:05:26,310 Llavors, com són aquests serveis únicament identificat, vam dir, en un ordinador 112 00:05:26,310 --> 00:05:29,080 que en realitat podria estar fent diverses coses? 113 00:05:29,080 --> 00:05:29,860 >> El número de port. 114 00:05:29,860 --> 00:05:34,180 I aquests són només humans arbitrària convencions com 80 és web, 443 és 115 00:05:34,180 --> 00:05:36,580 web xifrada, 25 és el correu electrònic. 116 00:05:36,580 --> 00:05:38,230 I hi ha uns raïms d'altres. 117 00:05:38,230 --> 00:05:41,860 I aquests números són simplement s'inclouen en els paquets d'informació, els 118 00:05:41,860 --> 00:05:46,230 envoltant virtual, que en realitat contenia una sol · licitud o una resposta. 119 00:05:46,230 --> 00:05:51,300 >> Així que quan tornis una resposta de la web, en general, no veu cap 120 00:05:51,300 --> 00:05:54,780 nombres, en el pla de la codi d'estat de la resposta. 121 00:05:54,780 --> 00:05:56,770 En realitat no veu la funcionament intern de la 122 00:05:56,770 --> 00:05:58,090 paquets que vénen darrere. 123 00:05:58,090 --> 00:05:59,860 Però 200 significa realment significa a D'acord. 124 00:05:59,860 --> 00:06:01,530 I això vol dir que tot està bé. 125 00:06:01,530 --> 00:06:02,870 Vostè podria haver vist un munt d'ells. 126 00:06:02,870 --> 00:06:05,710 La qual cosa és probablement el més comú que has vist a la web? 127 00:06:05,710 --> 00:06:05,980 >> 404. 128 00:06:05,980 --> 00:06:07,330 Només significa que el fitxer no es troba. 129 00:06:07,330 --> 00:06:08,270 Significa que algú va ficar la pota. 130 00:06:08,270 --> 00:06:11,450 Ho vas fer per escriure malament l'adreça, o algú més va fer per donar-li un 131 00:06:11,450 --> 00:06:15,100 URL vàlida o que eliminen la arxiu i la URL continua sent 132 00:06:15,100 --> 00:06:16,130 sent utilitzat per la gent. 133 00:06:16,130 --> 00:06:19,670 Pel que qualsevol nombre de raons poden explicar ¿Per què no es troba un arxiu. 134 00:06:19,670 --> 00:06:22,990 I veuràs, en les properes setmanes, aquests altres codis d'error, i vostè 135 00:06:22,990 --> 00:06:24,195 prendre avantatge d'algunes d'elles. 136 00:06:24,195 --> 00:06:25,760 El pitjor és 500. 137 00:06:25,760 --> 00:06:29,820 Si vostè rep un error 500 en el codi que has escrit, pensa en això com una mena de 138 00:06:29,820 --> 00:06:33,290 analògica de fallades seg a la món de la programació web. 139 00:06:33,290 --> 00:06:34,560 No és tan greu. 140 00:06:34,560 --> 00:06:36,660 No obstant això, només significa que, en algun lloc, et vas equivocar. 141 00:06:36,660 --> 00:06:38,260 Així que esperem que aquests. 142 00:06:38,260 --> 00:06:39,910 >> Però anem a veure si podem veure això en context. 143 00:06:39,910 --> 00:06:43,460 Déjame anar a un navegador aquí i feu el següent. 144 00:06:43,460 --> 00:06:45,710 Així que això és Chrome, que passa a ser instal · lat en l'aparell. 145 00:06:45,710 --> 00:06:49,410 Però la majoria de cada navegador en aquests dies té part de la funcionalitat equivalent. 146 00:06:49,410 --> 00:06:52,610 Vaig a anar fins al menú de Chrome, i anar a Eines, i jo vaig a anar 147 00:06:52,610 --> 00:06:53,990 a les eines de desenvolupament. 148 00:06:53,990 --> 00:06:57,040 I veuràs que aquest petit panell s'obre a la part inferior de la finestra. 149 00:06:57,040 --> 00:07:00,190 Un altre mètode abreujat, per ser honest, que em en general jo faig és fer clic dret 150 00:07:00,190 --> 00:07:04,370 o Control, feu clic a qualsevol lloc a la web pàgina i només ha d'anar a Inspeccionar Element. 151 00:07:04,370 --> 00:07:07,440 I això no només s'obrirà això per a vostè. 152 00:07:07,440 --> 00:07:10,230 També s'obrirà, en concret, la part dels elements de 153 00:07:10,230 --> 00:07:11,430 la banda esquerra. 154 00:07:11,430 --> 00:07:12,460 >> Així que estem, per descomptat, veure Google. 155 00:07:12,460 --> 00:07:13,930 Ells van canviar el seu logo a l'actualitat. 156 00:07:13,930 --> 00:07:20,200 Però si em desplaço fins aquí, noti que en virtut dels elements, es veu 157 00:07:20,200 --> 00:07:23,460 el que s'anomena HTML, HyperText Markup Idioma, i aquest és el llenguatge 158 00:07:23,460 --> 00:07:26,000 que aquesta i totes les pàgines web, Realment, estan escrits polz 159 00:07:26,000 --> 00:07:28,950 Però en realitat està formatat per nosaltres molt més llegible 160 00:07:28,950 --> 00:07:29,970 del que normalment és. 161 00:07:29,970 --> 00:07:34,810 De fet, si em Zoom cap a fora, i jo en el seu lloc només cal fer clic dret o control + clic 162 00:07:34,810 --> 00:07:39,630 feu clic a la pàgina i, a continuació, aneu a Veure Font de la pàgina, això és, literalment, el que 163 00:07:39,630 --> 00:07:42,150 Google va enviar al meu navegador. 164 00:07:42,150 --> 00:07:46,480 >> Així que alguna persona o persones escriure Google.com utilitzar aquest codi font. 165 00:07:46,480 --> 00:07:47,790 La major part d'això no és HTML. 166 00:07:47,790 --> 00:07:49,340 En realitat és un llenguatge anomenat JavaScript, que 167 00:07:49,340 --> 00:07:50,880 arribarem a dimecres. 168 00:07:50,880 --> 00:07:55,580 Però el que Chrome, i el que tots els navegadors pot fer per nosaltres, és una espècie de veure 169 00:07:55,580 --> 00:07:59,610 més enllà de totes les distraccions del sintaxi boig, i torneu a inserir espais en blanc 170 00:07:59,610 --> 00:08:02,940 per a nosaltres, i fins i tot ressaltat de sintaxi, o pintar les coses per a nosaltres. 171 00:08:02,940 --> 00:08:06,470 Així que trobareu que aquests anomenats eines de desenvolupament integrades en navegadors; 172 00:08:06,470 --> 00:08:10,830 li farà la vida molt, molt més fàcil perquè vostè pot explorar, a través d'aquest menú 173 00:08:10,830 --> 00:08:13,940 interfície, exactament el que el subjacent codi font està per 174 00:08:13,940 --> 00:08:15,750 qualsevol pàgina a Internet. 175 00:08:15,750 --> 00:08:19,070 I de fet, aquesta és una de les més formes eficaces d'aprendre com fer-ho 176 00:08:19,070 --> 00:08:22,860 alguna cosa nova, almenys si la pàgina No és tan complex com per aclaparar, es 177 00:08:22,860 --> 00:08:26,700 per començar a jugar és HTML, busqui en el seu anomenat CSS, que anem a arribar 178 00:08:26,700 --> 00:08:30,310 a una mica també, per tenir una la comprensió de la manera en què els programadors 179 00:08:30,310 --> 00:08:33,480 implementat algun particular, característica de la pàgina. 180 00:08:33,480 --> 00:08:36,530 >> Però el més interessant tècnicament correcta ara va a ser això. 181 00:08:36,530 --> 00:08:39,429 Si vaig a la pestanya Xarxa, ara anem a esborrar això. 182 00:08:39,429 --> 00:08:43,429 Vaig a fer clic en el petit creuar símbol aquí i, a continuació, 183 00:08:43,429 --> 00:08:45,630 anar a un altre lloc web. 184 00:08:45,630 --> 00:08:48,430 I jo només vaig a escriure a Facebook.com. 185 00:08:48,430 --> 00:08:51,940 No HTTP, HTTPS sense, sense WWW. 186 00:08:51,940 --> 00:08:53,850 Anem a veure realment el que passa aquí. 187 00:08:53,850 --> 00:08:55,030 >> Intro. 188 00:08:55,030 --> 00:08:58,480 Ara vegem un munt de coses només aparegut en el panell inferior, en 189 00:08:58,480 --> 00:09:00,285 A més de la pàgina web que apareix a la part superior. 190 00:09:00,285 --> 00:09:04,890 Vaig a retrocedir cap al Fitxa Xarxa aquí, i vaig a 191 00:09:04,890 --> 00:09:06,080 feu clic a la primera fila. 192 00:09:06,080 --> 00:09:10,580 El que aquesta eina va a revelar- és cadascuna de les peticions HTTP 193 00:09:10,580 --> 00:09:13,550 que ràpidament s'acaba d'anar cap enrere i tornada entre el navegador 194 00:09:13,550 --> 00:09:14,930 i el servidor de Facebook. 195 00:09:14,930 --> 00:09:17,830 I així, cadascuna de les files representa un de tals sol · licitud o 196 00:09:17,830 --> 00:09:20,970 resposta, un o més dels aquells envoltant virtual. 197 00:09:20,970 --> 00:09:24,080 O més informal, és com una persona com una persona, un client en un 198 00:09:24,080 --> 00:09:26,710 restaurant, demanar alguna cosa una altra vegada, i una altra, i una altra. 199 00:09:26,710 --> 00:09:29,400 I el cambrer segueix portant de nou d'un en un. 200 00:09:29,400 --> 00:09:33,850 >> Així que ara, si em acostar això, compte i aquest serà el tipus de coses 201 00:09:33,850 --> 00:09:36,600 que us convidem a i anima per jugar pel seu compte, ja que 202 00:09:36,600 --> 00:09:38,150 no passarà per tot el que amb gran detall. 203 00:09:38,150 --> 00:09:40,070 Però noti que hi ha una poques fitxes sub aquí - 204 00:09:40,070 --> 00:09:43,700 Capçals, Vista prèvia, la resposta, Galetes i moment. 205 00:09:43,700 --> 00:09:48,280 Jo només vaig a mirar les capçaleres per ara, perquè són poc 206 00:09:48,280 --> 00:09:53,600 ingredients dins del sobre que ajuden a obtenir les dades cap i des dels llocs. 207 00:09:53,600 --> 00:09:57,590 >> Així que en primer lloc, permetin-me clic a aquest, Vistes Font al costat dels encapçalats de sol · licitud. 208 00:09:57,590 --> 00:10:01,910 No és la petició que el meu navegador, Crom, en aquest cas, a l'interior d'enviar 209 00:10:01,910 --> 00:10:02,910 el sobre virtual. 210 00:10:02,910 --> 00:10:04,800 Vostè recordarà la setmana passada manual escrit mentre 211 00:10:04,800 --> 00:10:06,380 fent-se passar per un navegador. 212 00:10:06,380 --> 00:10:09,980 Llavors va recordar el servidor que és buscant el host anomenat 213 00:10:09,980 --> 00:10:10,835 Facebook.com. 214 00:10:10,835 --> 00:10:13,630 I després està una mica més complexes la informació que anem a agitem 215 00:10:13,630 --> 00:10:14,830 les nostres mans de moment. 216 00:10:14,830 --> 00:10:18,640 >> Però si em poso a desplaçar-se cap avall ara en aquesta finestra, anem a arribar a la 217 00:10:18,640 --> 00:10:19,980 capçaleres de resposta. 218 00:10:19,980 --> 00:10:23,270 Això era el que hi ha al món virtual sobre que va tornar de 219 00:10:23,270 --> 00:10:24,095 Facebook.com. 220 00:10:24,095 --> 00:10:27,390 I si faig clic a Mostra només per veure el text en brut de la mateixa, 221 00:10:27,390 --> 00:10:28,400 compte d'algunes coses. 222 00:10:28,400 --> 00:10:32,130 Un, Facebook també parla la mateixa protocol, la versió 1.1 de la mateixa. 223 00:10:32,130 --> 00:10:33,390 Així que això és bo. 224 00:10:33,390 --> 00:10:36,820 Però el codi d'estat 301, traslladat de manera permanent. 225 00:10:36,820 --> 00:10:38,880 >> Bé, on diables es van Facebook? 226 00:10:38,880 --> 00:10:40,430 Què és això tractant de transmetre a nosaltres? 227 00:10:40,430 --> 00:10:44,310 Bé, noten aquí hi ha una altra capçalera va Ubicació. 228 00:10:44,310 --> 00:10:51,050 Per què és Facebook dient-me que traslladat de manera permanent a la URL 229 00:10:51,050 --> 00:10:53,580 pròxima a la ubicació? 230 00:10:53,580 --> 00:10:54,962 Em vaig oblidar de la www. 231 00:10:54,962 --> 00:10:56,250 >> Així que aquesta va ser la meva elecció. 232 00:10:56,250 --> 00:11:00,450 De fet, la majoria de nosaltres poques vegades, probablement, escrigui www.whatever.com aquests dies. 233 00:11:00,450 --> 00:11:03,390 Però resulta que un administrador del sistema, com Facebook de, pot 234 00:11:03,390 --> 00:11:06,800 configurar els seus servidors de manera que o Facebook.com treballa o 235 00:11:06,800 --> 00:11:12,450 www.Facebook.com funciona, o, en realitat, qualsevol prefix davant del seu 236 00:11:12,450 --> 00:11:13,210 nom de domini. 237 00:11:13,210 --> 00:11:14,500 Així que el que han fet per nosaltres. 238 00:11:14,500 --> 00:11:16,910 I ens estan reorientant, probablement per alguna tècnica, 239 00:11:16,910 --> 00:11:18,100 algunes de les raons de màrqueting. 240 00:11:18,100 --> 00:11:21,570 Ells només volen canonitzar en www.Facebook.com. 241 00:11:21,570 --> 00:11:24,040 >> Però això no és tot això. 242 00:11:24,040 --> 00:11:28,560 Si em desplaço fins aquí, anem a veure què passa. 243 00:11:28,560 --> 00:11:30,810 Això em diu que mogut permanentment a 244 00:11:30,810 --> 00:11:33,450 http://www.Facebook.com. 245 00:11:33,450 --> 00:11:36,620 Així que donem una ullada a la segona sol · licitud que envia el navegador. 246 00:11:36,620 --> 00:11:40,070 Per desgràcia, sembla que Facebook s'ha mogut de nou a causa de que el segon 247 00:11:40,070 --> 00:11:44,420 sol · licitud, mitjançant la selecció de la URL en el seu lloc, diu que, també, es va traslladar 248 00:11:44,420 --> 00:11:45,010 de forma permanent. 249 00:11:45,010 --> 00:11:48,140 I permetin-me Desplaceu-vos cap avall aquí a les capçaleres de resposta. 250 00:11:48,140 --> 00:11:51,530 On ha anat Facebook ara? 251 00:11:51,530 --> 00:11:52,680 >> Així HTTPS. 252 00:11:52,680 --> 00:11:56,130 Així que ara Facebook ha començat, particularment a la llum de l'actual 253 00:11:56,130 --> 00:11:59,750 esdeveniments dels últims mesos, sobretot i També en els últims dos anys 254 00:11:59,750 --> 00:12:03,670 per obligar a tots els seus usuaris, en una bona manera, la utilització d'HTTPS, que és més 255 00:12:03,670 --> 00:12:06,210 assegurar, encara que no del tot segur. 256 00:12:06,210 --> 00:12:10,000 I ara la meva pàgina, el navegador és va a demanar aquesta tercera URL. 257 00:12:10,000 --> 00:12:14,710 I ara, per fi, tenim la d'una altra manera no vist 200 OK. 258 00:12:14,710 --> 00:12:18,830 >> Així que el que en el món o la totalitat de aquestes altres línies aquí. 259 00:12:18,830 --> 00:12:22,630 Jo, literalment, vaig escriure una cosa, i el meu navegador sembla haver sol · licitat com 260 00:12:22,630 --> 00:12:23,840 20 algunes coses estranyes. 261 00:12:23,840 --> 00:12:24,640 Què és això? 262 00:12:24,640 --> 00:12:25,810 >> AUDIÈNCIA: Scripts? 263 00:12:25,810 --> 00:12:28,460 >> ALTAVEU 1: Seqüències de comandaments, per la resta arxius escrit en un llenguatge anomenat 264 00:12:28,460 --> 00:12:30,780 JavaScript, el que, de nou, anem a veure una mica d'aquest dimecres. 265 00:12:30,780 --> 00:12:32,760 Què més? 266 00:12:32,760 --> 00:12:33,390 Els fulls d'estils. 267 00:12:33,390 --> 00:12:36,350 Així que alguna cosa en un llenguatge anomenat CSS, que veurem en un moment. 268 00:12:36,350 --> 00:12:40,690 GIF i JPEG, i PNG, i les imatges, i arxius de vídeo - el que una pàgina web 269 00:12:40,690 --> 00:12:43,280 s'és més probable en la forma d'un arxiu. 270 00:12:43,280 --> 00:12:46,750 I el que estem veient a la banda esquerra banda no tots els arxius 271 00:12:46,750 --> 00:12:50,280 que Chrome va haver descarregar, recursiva, si es vol, per tal de 272 00:12:50,280 --> 00:12:52,430 compondre la totalitat de la pàgina. 273 00:12:52,430 --> 00:12:56,210 >> Així que el que vam veure fa un moment amb Google, si faig clic en els elements 274 00:12:56,210 --> 00:13:00,470 tab, això, és clar, és l'HTML, el llenguatge que compon aquesta pàgina. 275 00:13:00,470 --> 00:13:01,890 Però hi ha munts d'altres coses. 276 00:13:01,890 --> 00:13:02,640 Hi ha un logo. 277 00:13:02,640 --> 00:13:04,680 Hi ha qui blavós Icones d'allà. 278 00:13:04,680 --> 00:13:07,610 I hi ha altres elements encara en la pàgina que sí que pot haver 279 00:13:07,610 --> 00:13:08,610 arxius separats. 280 00:13:08,610 --> 00:13:11,860 >> Així el bo d'un navegador és que es veu en l'idioma que anem 281 00:13:11,860 --> 00:13:14,690 per començar a escriure, o que ja ha escriptura va començar en conjunt P 7, les xifres 282 00:13:14,690 --> 00:13:17,970 on viuen aquests arxius, i va i els agafa també. 283 00:13:17,970 --> 00:13:21,010 I no puc emfatitzar prou, fins i tot encara que una mica d'això pot semblar una mica 284 00:13:21,010 --> 00:13:24,820 arcà o aclaparador a primera vista, Aprendre a programar 285 00:13:24,820 --> 00:13:28,500 aplicacions per a la Web, és invaluable per entendre com aquests 286 00:13:28,500 --> 00:13:29,410 petites eines de treball. 287 00:13:29,410 --> 00:13:33,830 Es tracta d'una espècie de GDB com a eines, però molt més simple, en última instància, d'usar - 288 00:13:33,830 --> 00:13:37,690 i realment et dóna ulls al que hem donat per fet durant 289 00:13:37,690 --> 00:13:39,170 fa força temps. 290 00:13:39,170 --> 00:13:42,270 >> Què podem fer ara amb aquesta informació? 291 00:13:42,270 --> 00:13:44,875 Bé, anem a realment fer una ullada a els conceptes bàsics d'HTML. 292 00:13:44,875 --> 00:13:49,025 I anem a ajornar, com ja tenim, per seccions d'aquesta setmana, que el problema 293 00:13:49,025 --> 00:13:53,260 fixi 7 especificació, a alguns dels més detalls d'aquests idiomes. 294 00:13:53,260 --> 00:13:57,020 Però anem a veure si no podem pintar un imatge del que vostè ha d'entendre 295 00:13:57,020 --> 00:13:57,940 general aquí. 296 00:13:57,940 --> 00:14:02,280 >> Així HTML, HyperText Markup Language, no és un llenguatge de programació. 297 00:14:02,280 --> 00:14:03,520 Què significa això realment? 298 00:14:03,520 --> 00:14:05,690 Així HTML s'assembla a això. 299 00:14:05,690 --> 00:14:06,810 I alguns de vostès ja saben això. 300 00:14:06,810 --> 00:14:08,130 Alguns de vosaltres heu estat fent això durant algun temps. 301 00:14:08,130 --> 00:14:10,270 Però anem a veure si podem completar en alguns espais en blanc també. 302 00:14:10,270 --> 00:14:11,760 Així compte un parell de coses aquí. 303 00:14:11,760 --> 00:14:13,030 Un, és només text. 304 00:14:13,030 --> 00:14:15,960 Així com el codi font en C, o algun altre idioma. 305 00:14:15,960 --> 00:14:17,750 >> Observi que sembla ser un patró aquí. 306 00:14:17,750 --> 00:14:20,870 No hi ha sagnat, però tècnicament la sagnia és només humana 307 00:14:20,870 --> 00:14:21,205 convenció. 308 00:14:21,205 --> 00:14:24,980 A navegadors no li importa si hi ha nova línies i les pestanyes com veiem allà. 309 00:14:24,980 --> 00:14:27,410 Però noti que hi ha simetries aquí. 310 00:14:27,410 --> 00:14:31,180 No és el que jo anomeno, a la part superior de la l'arxiu, l'etiqueta d'obertura o l'inici 311 00:14:31,180 --> 00:14:33,030 etiqueta, anomenat HTML. 312 00:14:33,030 --> 00:14:36,800 I després, més avall, perfectament alineats dalt, igual que fem amb les claus, 313 00:14:36,800 --> 00:14:40,910 veiem parèntesi obert, cap endavant slash, HTML, tancar el parèntesi. 314 00:14:40,910 --> 00:14:44,610 Així que aquesta és l'estreta corresponent tag o etiqueta final, per aquesta cosa. 315 00:14:44,610 --> 00:14:47,990 >> En conjunt, tot dins del denominat tag d'obertura i tancament d'etiquetes 316 00:14:47,990 --> 00:14:50,440 componem el que anomenarem un element. 317 00:14:50,440 --> 00:14:53,910 I anem a veure, en un moment, és realment com un node dins dels arbres. 318 00:14:53,910 --> 00:14:57,470 Perquè si ho penses ara sagnia que està implicat aquí, 319 00:14:57,470 --> 00:15:00,780 tipus de tenir, com, un iaio node anomenat HTML. 320 00:15:00,780 --> 00:15:06,870 Quants nens poden dir, sobre la base en aquesta imatge, l'element HTML ha? 321 00:15:06,870 --> 00:15:07,720 >> Així que probablement dos. 322 00:15:07,720 --> 00:15:10,240 Un d'ells és l'element de cap, pel que sembla. 323 00:15:10,240 --> 00:15:11,710 I un és l'element del cos. 324 00:15:11,710 --> 00:15:12,555 ¿I per què dos nens? 325 00:15:12,555 --> 00:15:15,840 Bé, jo sóc només una mica d'inferir que si Tinc una etiqueta del cap oberta i després un 326 00:15:15,840 --> 00:15:17,820 etiqueta de tancament cap, que és un element. 327 00:15:17,820 --> 00:15:21,200 I després, si hi ha un altre cos obert etiqueta i una etiqueta de cos a prop, que és com 328 00:15:21,200 --> 00:15:22,340 un altre element. 329 00:15:22,340 --> 00:15:26,000 Així, en el sentit que si que tipus de rotació la imatge de la seva banda, és 330 00:15:26,000 --> 00:15:29,910 com tenir una etiqueta d'HTML i, a continuació, un etiqueta del cap, i després un cos de l'etiqueta i 331 00:15:29,910 --> 00:15:34,290 a continuació, una mica de text, hola món, penjant fora del propi cos de l'etiqueta. 332 00:15:34,290 --> 00:15:36,620 >> Podem fer un dibuix que podria tenir aquest aspecte. 333 00:15:36,620 --> 00:15:38,020 Les formes són arbitràries. 334 00:15:38,020 --> 00:15:40,870 Però noto que he utilitzat una mena de lipse a la part superior per representar la 335 00:15:40,870 --> 00:15:41,860 propi document. 336 00:15:41,860 --> 00:15:45,980 Resulta que no pot haver-hi altres coses dins d'una pàgina web que no tinc 337 00:15:45,980 --> 00:15:46,940 dibuixat aquí. 338 00:15:46,940 --> 00:15:50,800 Així que anem a passar l'estona, fins i tot el codi HTML fora de node d'un node anomenat document. 339 00:15:50,800 --> 00:15:53,730 I després tenim el cap i cos i el títol, avís, 340 00:15:53,730 --> 00:15:55,360 que està niat més. 341 00:15:55,360 --> 00:15:58,650 No em vaig molestar a posar línia addicional trenca dins de l'etiqueta del títol. 342 00:15:58,650 --> 00:16:02,710 Se sentia com si estigués rebent una mica massa detallat. 343 00:16:02,710 --> 00:16:07,000 Així que ho vaig deixar en una línia allà, amb títol obert, hola món, prop del títol. 344 00:16:07,000 --> 00:16:09,380 I després tenim una mica de text penjant fora d'aquí. 345 00:16:09,380 --> 00:16:12,200 >> Així que la imatge tornarà a nosaltres quan ens submergim en JavaScript. 346 00:16:12,200 --> 00:16:15,110 I entendre que quan es escriure HTML com aquest, el que 347 00:16:15,110 --> 00:16:16,250 està fent un navegador? 348 00:16:16,250 --> 00:16:19,290 Bé, nosaltres no hem de preocupar-nos per el que està fent això, o amb el que 349 00:16:19,290 --> 00:16:23,090 algorisme, però al final del dia, quan rep un navegador HTML, com 350 00:16:23,090 --> 00:16:27,510 que, a partir de Facebook o Google, analitza que, per dir-ho, es llegeix, 351 00:16:27,510 --> 00:16:31,160 amb alguna cosa com fread, de dalt a baix, d'esquerra a dreta, i com 352 00:16:31,160 --> 00:16:36,300 s'adona, oh, etiqueta d'obertura i tancament etiqueta, que s'inicia a malloc, per així dir-ho, 353 00:16:36,300 --> 00:16:37,800 un node en un arbre. 354 00:16:37,800 --> 00:16:41,130 I quan es troba, com hem implícita aquí amb la indentació, un 355 00:16:41,130 --> 00:16:45,400 node fill, mallocs un node perquè i que s'adjunta a l'arbre. 356 00:16:45,400 --> 00:16:49,150 >> Així les estructures d'arbre, arbres binaris, arbres ternaris, i els arbres més grans, que 357 00:16:49,150 --> 00:16:53,380 fem una ullada a una o dues setmanes, l'avís que el mateix principi és 358 00:16:53,380 --> 00:16:54,220 ve de nou a nosaltres. 359 00:16:54,220 --> 00:16:57,590 I qui implementat, Chrome ho equip va fer que, presumiblement tenia 360 00:16:57,590 --> 00:17:00,800 per posar en pràctica algun tipus d'estructura d'arbre sota de la caputxa. 361 00:17:00,800 --> 00:17:05,329 I això en si és, probablement, en un llenguatge com C o C + +, o una menor 362 00:17:05,329 --> 00:17:08,540 llenguatge d'alt nivell que anem a ara utilitzen el cim del web. 363 00:17:08,540 --> 00:17:11,200 >> Així que ara, potser, això tenir més sentit. 364 00:17:11,200 --> 00:17:15,420 Tatuatge real d'un tipus que podria penedirà eventualment, alguna cosa així. 365 00:17:15,420 --> 00:17:17,359 Bé, d'acord, de manera que una gran quantitat d'humor web. 366 00:17:17,359 --> 00:17:18,599 No és realment va sobre tan bé avui. 367 00:17:18,599 --> 00:17:19,560 Així que seguirem endavant. 368 00:17:19,560 --> 00:17:20,180 Està bé. 369 00:17:20,180 --> 00:17:22,760 >> Així que donem una ullada ara en alguns exemples. 370 00:17:22,760 --> 00:17:24,660 El més simple possible cosa podria ser això. 371 00:17:24,660 --> 00:17:29,170 Vaig a seguir endavant i obrir a gedit un arxiu anomenat hello.php. 372 00:17:29,170 --> 00:17:31,730 373 00:17:31,730 --> 00:17:36,330 I dins d'aquí, vaig a ràpidament acaba de fer això, printf, citar 374 00:17:36,330 --> 00:17:38,590 Fi de la cita, "hola món". 375 00:17:38,590 --> 00:17:42,460 >> Així previ avís, i vaig a fer la meva barra invertida n, No m'he molestat per declarar principal. 376 00:17:42,460 --> 00:17:45,310 Resulta que, en php, i una gran quantitat de idiomes, no cal un major 377 00:17:45,310 --> 00:17:46,090 funció en si. 378 00:17:46,090 --> 00:17:47,720 Vostè pot simplement començar a escriure seu programa. 379 00:17:47,720 --> 00:17:51,210 Ara, en desar l'arxiu, noto que estic haurà de fer el següent. 380 00:17:51,210 --> 00:17:55,360 Jo no vaig a utilitzar maquillatge, i no estic va a utilitzar PHP Clang perquè, a diferència de 381 00:17:55,360 --> 00:17:57,400 C, no és un llenguatge compilat. 382 00:17:57,400 --> 00:18:01,400 És el que s'anomena una interpretació llenguatge, el que significa que s'executa 383 00:18:01,400 --> 00:18:04,650 com una entrada a través d'un altre programa trucada d'un intèrpret. 384 00:18:04,650 --> 00:18:08,150 I aquest programa llegeix de dalt a baix, d'esquerra a dreta, i de fet 385 00:18:08,150 --> 00:18:09,290 el que li dius de fer. 386 00:18:09,290 --> 00:18:12,920 >> Així que en aquest cas aquí tinc una línia que diu printf. 387 00:18:12,920 --> 00:18:17,990 Així que quan em trobo aquest codi font, hola.php, a través d'un programa que 388 00:18:17,990 --> 00:18:22,830 succeeix, convenientment, que es dirà PHP, aquest programa PHP es va a llegir 389 00:18:22,830 --> 00:18:26,120 Aquest arxiu, de dalt a baix, d'esquerra a dreta, i que va a fer el que 390 00:18:26,120 --> 00:18:30,110 indicar-li que faci - l'execució de codi, i si que no reconeix alguna cosa, 391 00:18:30,110 --> 00:18:31,320 escopir. 392 00:18:31,320 --> 00:18:34,940 Així que seguiré endavant i executar PHP de hello.php. 393 00:18:34,940 --> 00:18:37,110 Intro. 394 00:18:37,110 --> 00:18:39,690 >> I això no és tot el que volia. 395 00:18:39,690 --> 00:18:40,530 Bé, per què és això? 396 00:18:40,530 --> 00:18:43,910 Bé, PHP és un llenguatge que en realitat dissenyat per a ser bastant 397 00:18:43,910 --> 00:18:46,150 entrellaçada amb la web. 398 00:18:46,150 --> 00:18:50,460 En fer pàgines web amb aquest llenguatge PHP, com aviat veurem, anem a 399 00:18:50,460 --> 00:18:54,560 voler fer alguna cosa com impressió les línies com aquesta. 400 00:18:54,560 --> 00:18:55,940 >> Així que vaig a fer això. 401 00:18:55,940 --> 00:19:00,810 Suport oberta, signe d'interrogació, PHP, i Ara només vaig guió només per mantenir 402 00:19:00,810 --> 00:19:01,960 coses bones. 403 00:19:01,960 --> 00:19:04,910 I ara me'n vaig a fer una pregunta marcar tancar el parèntesi. 404 00:19:04,910 --> 00:19:06,270 Així que hi ha una mica d'asimetria aquí. 405 00:19:06,270 --> 00:19:07,490 No facis això. 406 00:19:07,490 --> 00:19:10,530 I no fas una barra, per la PHP és una mica diferent. 407 00:19:10,530 --> 00:19:14,610 >> Però ara, si em torna a executar aquest programa, PHP hello.php, ara 408 00:19:14,610 --> 00:19:16,090 aconseguir realment Hello World. 409 00:19:16,090 --> 00:19:17,750 I anem a veure per què això és important. 410 00:19:17,750 --> 00:19:20,960 Un d'ells, que em permet especificar, súper explícita, és 411 00:19:20,960 --> 00:19:22,480 codi, executar aquest. 412 00:19:22,480 --> 00:19:25,480 I això és precisament el que aquests etiquetes especials impliquen aquí. 413 00:19:25,480 --> 00:19:30,330 >> Però també vol dir que si acabo de fer alguna cosa així com el meu objectiu aquí, que 414 00:19:30,330 --> 00:19:34,000 vol dir que, literalment, que només es ser imprès a terme sense la necessitat de 415 00:19:34,000 --> 00:19:36,850 realment truqui printf o impressió, o qualsevol funció similar. 416 00:19:36,850 --> 00:19:39,445 Així que anem a tornar a això en un moment. 417 00:19:39,445 --> 00:19:40,470 >> En primer lloc, farem això. 418 00:19:40,470 --> 00:19:43,950 A l'interior de l'aparell, tenim una directori anomenat Vhosts, per virtuals 419 00:19:43,950 --> 00:19:47,000 hosts, retallar host local, retallar pública. 420 00:19:47,000 --> 00:19:50,240 Així que és una mica prolix, però llarga història resum, l'aparell no està dissenyat 421 00:19:50,240 --> 00:19:53,770 només per donar suport C. És també dissenyat per suportar PHP. 422 00:19:53,770 --> 00:19:57,440 Però també està dissenyat per ser un web servidor, i un servidor de base de dades. 423 00:19:57,440 --> 00:20:00,230 I està dissenyat, i realment configurat, a ser una reminiscència de qualsevol 424 00:20:00,230 --> 00:20:04,230 empresa d'allotjament web comercial que vostè podria pagar $ 5 al mes per, 425 00:20:04,230 --> 00:20:05,040 $ 100 al mes per. 426 00:20:05,040 --> 00:20:08,200 Qualsevol que sigui el servei, que està configurat a ser molt similar a una 427 00:20:08,200 --> 00:20:10,170 servidor de producció del món real. 428 00:20:10,170 --> 00:20:13,485 >> I el que això significa és que s'executa en l'aparell és un programari servidor de web. 429 00:20:13,485 --> 00:20:15,060 Li passa a ser anomenat Apache. 430 00:20:15,060 --> 00:20:17,790 És just, lliure i de codi obert, i molt popular. 431 00:20:17,790 --> 00:20:23,260 I hem configurat Apache per saber que si torno a visitar una determinada URL, amb 432 00:20:23,260 --> 00:20:28,060 Chrome o qualsevol navegador a l'interior del aparell, que ha de buscar en aquest directori 433 00:20:28,060 --> 00:20:31,030 per als arxius que el usuari demana. 434 00:20:31,030 --> 00:20:32,790 >> En altres paraules, permetin-me seguir endavant i fer-ho. 435 00:20:32,790 --> 00:20:36,890 Dins el meu directori públic, vaig seguir endavant i crear un arxiu de 436 00:20:36,890 --> 00:20:39,580 anomenat index.html. 437 00:20:39,580 --> 00:20:41,000 Això em dóna la pestanya d'aquí. 438 00:20:41,000 --> 00:20:44,210 I jo vaig a anar molt ràpid i seguir endavant i colpejar 439 00:20:44,210 --> 00:20:45,010 aquest programa. 440 00:20:45,010 --> 00:20:48,410 Doctype HTML, que per ara, només se suposa que ha d'escriure. 441 00:20:48,410 --> 00:20:53,490 És només una etiqueta arcà, això no és veritablement un tag HTML, que especifica que 442 00:20:53,490 --> 00:20:55,050 aquí ve una mica d'HTML. 443 00:20:55,050 --> 00:20:57,400 >> Vaig a seguir endavant i tornar a crear el que vam veure fa un moment. 444 00:20:57,400 --> 00:20:58,650 Aquí està la capçalera de la pàgina. 445 00:20:58,650 --> 00:21:01,170 A l'interior del cap era el - 446 00:21:01,170 --> 00:21:01,890 pel títol. 447 00:21:01,890 --> 00:21:04,340 Així que anem a dir hola, món. 448 00:21:04,340 --> 00:21:06,570 I aquest era el cos de l'etiqueta. 449 00:21:06,570 --> 00:21:08,580 Permetin-me concloure l'etiqueta body. 450 00:21:08,580 --> 00:21:12,280 I aquí també diré, només per la claredat, hola món. 451 00:21:12,280 --> 00:21:14,770 >> Així que aquest és, sens dubte, la més senzilla és possible que la pàgina web 452 00:21:14,770 --> 00:21:15,770 pot fer això és vàlid. 453 00:21:15,770 --> 00:21:17,030 És sintàcticament vàlida. 454 00:21:17,030 --> 00:21:18,620 Tot el que ha obert es tanca. 455 00:21:18,620 --> 00:21:20,910 Tot està molt bé en estil i sangria. 456 00:21:20,910 --> 00:21:23,600 Així que anem a veure ara com em pot accedir al fitxer. 457 00:21:23,600 --> 00:21:25,540 >> Bé, deixa anar a Chrome aquí. 458 00:21:25,540 --> 00:21:35,050 I me n'aniré a http://localhost/index.html. 459 00:21:35,050 --> 00:21:36,200 Llavors, què host local? 460 00:21:36,200 --> 00:21:39,400 Bé, la majoria de qualsevol ordinador en el món, Linux, Mac OS, Windows, té un sobrenom 461 00:21:39,400 --> 00:21:40,680 anomenat host local. 462 00:21:40,680 --> 00:21:42,900 Així que si alguna vegada vols parlar a la seva pròpia ordinador - 463 00:21:42,900 --> 00:21:45,140 tot i que, curiosament reflexiva - 464 00:21:45,140 --> 00:21:47,080 vostè es diu host local. 465 00:21:47,080 --> 00:21:50,390 No importa el que el seu equip actual és flama, si es tracta de MacBook de David 466 00:21:50,390 --> 00:21:52,490 Aire, o alguna cosa més detallat per l'estil. 467 00:21:52,490 --> 00:21:57,760 >> Així que aquesta URL és pel que sembla va a utilitzar l'HTTP per parlar amb el host local, 468 00:21:57,760 --> 00:22:00,800 el mateix equip, l'equip, i que va a demanar, simplement prendre un 469 00:22:00,800 --> 00:22:02,570 endevinar, un arxiu? 470 00:22:02,570 --> 00:22:04,460 Index.html. 471 00:22:04,460 --> 00:22:08,650 Així que l'aparell ha estat configurat en avançar a saber que si et demano 472 00:22:08,650 --> 00:22:13,460 per a alguna cosa com index.html, busqui en una carpeta anomenada Vhosts, en un 473 00:22:13,460 --> 00:22:17,950 carpeta anomenada localhost, en una carpeta en ella es diu pública. 474 00:22:17,950 --> 00:22:20,400 Aquí és on tots els del meu públic arxius seran. 475 00:22:20,400 --> 00:22:22,610 Així que ara vaig a pressionar Enter. 476 00:22:22,610 --> 00:22:27,100 >> I maleïda sigui, no és que forbidden missatge, també conegut com 403, la 477 00:22:27,100 --> 00:22:28,490 codi numèric per això. 478 00:22:28,490 --> 00:22:30,130 Llavors, ¿què passa aquí? 479 00:22:30,130 --> 00:22:33,210 Bé, no és suficient amb posar l'arxiu dins de la meva carpeta. 480 00:22:33,210 --> 00:22:35,790 Necessito realment fer el següent. 481 00:22:35,790 --> 00:22:40,210 >> Deixa anar al meu directori Vhosts, en localhost, en públic, i deixar 482 00:22:40,210 --> 00:22:41,680 em faig ls tauler l. 483 00:22:41,680 --> 00:22:44,510 I hi ha altres coses aquí per als propòsits de l'actualitat. 484 00:22:44,510 --> 00:22:50,540 Però fixa't en la banda esquerra, al costat a index.html, només en veiem un RW. 485 00:22:50,540 --> 00:22:53,560 I en el passat, el RW ha defensat? 486 00:22:53,560 --> 00:22:54,240 >> Acabo de llegir o escriure. 487 00:22:54,240 --> 00:22:58,000 El fet que es diu rw a l'esquerra significa que l'amo d'aquest arxiu, pot 488 00:22:58,000 --> 00:22:59,020 llegir o escriure. 489 00:22:59,020 --> 00:23:05,010 Però he de deixar totes les persones en el món llegir això, encara que ho escrigui. 490 00:23:05,010 --> 00:23:09,650 Així que em canviaré la manera de la arxiu, chmod, tot més r per donar 491 00:23:09,650 --> 00:23:13,910 tot permís de lectura al arxiu anomenat index.html. 492 00:23:13,910 --> 00:23:18,040 >> I si ara Copieu ls tauler l, avís que, per aquí, una mica més 493 00:23:18,040 --> 00:23:19,160 R han aparegut. 494 00:23:19,160 --> 00:23:21,090 I per ara, l'especificació es en més detalls. 495 00:23:21,090 --> 00:23:24,450 Per P 7 setembre, això només vol dir que tots Ara pot llegir el fitxer. 496 00:23:24,450 --> 00:23:27,790 Si tornada al meu navegador ara i tornar a carregar, voila. 497 00:23:27,790 --> 00:23:28,750 Hola, món. 498 00:23:28,750 --> 00:23:32,260 >> I fins i tot puc obrir les meves eines de Chrome i veure, igual que amb Google i 499 00:23:32,260 --> 00:23:34,590 Facebook que no és el meu HTML, format una mica 500 00:23:34,590 --> 00:23:35,930 diferent i acolorida. 501 00:23:35,930 --> 00:23:40,450 Si vaig a la pestanya de la xarxa i torneu a carregar la pàgina, es va adonar que no és el obtenir 502 00:23:40,450 --> 00:23:42,900 sol · licitar que Chrome és l'enviament de per a l'aparell. 503 00:23:42,900 --> 00:23:46,020 Aquí està el 200 perquè arxiu particular. 504 00:23:46,020 --> 00:23:49,340 Així que en resum, així és com tots aquests diverses peces s'estan unint. 505 00:23:49,340 --> 00:23:53,530 El que passa és que el servidor web que estem fent servir en aquest moment no és remot, 506 00:23:53,530 --> 00:23:54,210 com Facebook. 507 00:23:54,210 --> 00:23:58,330 És, literalment, en el mateix equip, que està perfectament bé. 508 00:23:58,330 --> 00:24:00,590 >> Llavors, què més podem fer en una pàgina web? 509 00:24:00,590 --> 00:24:03,110 Bé, simplement, anem a passar ràpidament per un parell d'aquestes coses. 510 00:24:03,110 --> 00:24:07,860 Però m'ho dius seguir endavant i tornar a obrir Gedit amb index.html. 511 00:24:07,860 --> 00:24:13,980 I m'ho dius a mi seguir endavant i dir hola CS50, guardar aquest arxiu, tornar a la 512 00:24:13,980 --> 00:24:16,260 navegador, el canvi realment decebedor. 513 00:24:16,260 --> 00:24:19,130 >> Però el que si volem realment vincular a alguna cosa ara? 514 00:24:19,130 --> 00:24:23,480 Així que resulta que podem tenir la enllaços en HTML que són només etiquetes 515 00:24:23,480 --> 00:24:24,140 a si mateixos. 516 00:24:24,140 --> 00:24:27,320 Li passa a dir-se etiqueta d'ancoratge. a href igual 517 00:24:27,320 --> 00:24:33,190 https://www.cs50.net, www.cs50.net Tancament de cometes, parèntesis tancat. 518 00:24:33,190 --> 00:24:35,230 I ara anem a veure el que cosa que ve a continuació. 519 00:24:35,230 --> 00:24:36,500 >> He obert l'etiqueta. 520 00:24:36,500 --> 00:24:38,990 Ara necessito donar-li una frase com CS50. 521 00:24:38,990 --> 00:24:40,600 Permetin-me concloure l'etiqueta. 522 00:24:40,600 --> 00:24:42,010 I noti algunes coses. 523 00:24:42,010 --> 00:24:45,270 Tot i que hi ha una cosa críptica aquí, no he repetit quan 524 00:24:45,270 --> 00:24:46,010 tancar l'etiqueta. 525 00:24:46,010 --> 00:24:48,230 Vostè acaba de tancar el tag amb el seu sol nom. 526 00:24:48,230 --> 00:24:50,940 I això és el que es coneix com un atribut amb un valor. 527 00:24:50,940 --> 00:24:56,070 Atributs simplement modifiquen el comportament d'alguna etiqueta a l'interior d'una pàgina. 528 00:24:56,070 --> 00:24:59,150 >> Així que això s'especifica que el hiper referència, la forma elegant de dir la 529 00:24:59,150 --> 00:25:03,660 URL d'aquest ancoratge, per a aquest vincle, ha de ser CS50.net. 530 00:25:03,660 --> 00:25:07,440 I el text que volem mostrar al usuari no és que la direcció URL original, sinó més aviat 531 00:25:07,440 --> 00:25:08,730 la paraula CS50. 532 00:25:08,730 --> 00:25:13,710 >> Així que si ara torno a carregar, em zoom per deixar claredat, permetin-me tornar a carregar la pàgina, 533 00:25:13,710 --> 00:25:16,460 adonar que tenim aquesta vella escola blau subratllat enllaç. 534 00:25:16,460 --> 00:25:20,000 I si hi ha sobre ella, i va a ser difícil de veure, a la part inferior esquerra 535 00:25:20,000 --> 00:25:23,690 cantonada de la pantalla, es va adonar que diu que la URL a la qual 536 00:25:23,690 --> 00:25:24,430 Vaig a anar. 537 00:25:24,430 --> 00:25:27,940 I si fer clic allà, voila, ara estic fent pàgines web. 538 00:25:27,940 --> 00:25:30,140 I hem aboquem a la pàgina principal. 539 00:25:30,140 --> 00:25:32,670 >> Però fixa't quin potencial això ens ofereix. 540 00:25:32,670 --> 00:25:34,890 La seguretat és molt en voga en aquests dies. 541 00:25:34,890 --> 00:25:41,210 Què passa si en lloc de dir alguna cosa així com això, i en lloc d'anar a, per exemple, anem a 542 00:25:41,210 --> 00:25:42,460 veure, fakeCS50.net. 543 00:25:42,460 --> 00:25:44,660 544 00:25:44,660 --> 00:25:46,360 Actualitzar aquesta pàgina. 545 00:25:46,360 --> 00:25:50,180 >> Acceptar, pel que es va adonar que encara es veu com si estigués anar a la CS50, llevat que un ull astut 546 00:25:50,180 --> 00:25:51,560 s'adonarà que vaig a CS50 falsa. 547 00:25:51,560 --> 00:25:54,550 Suposo que aquest domini no es pren. 548 00:25:54,550 --> 00:25:55,960 OK, així que no està disponible. 549 00:25:55,960 --> 00:25:56,600 Així que això és bo. 550 00:25:56,600 --> 00:25:57,900 En realitat, ningú té aquest domini. 551 00:25:57,900 --> 00:26:00,380 >> Però siguem una mica més maliciós perquè això és una estupidesa. 552 00:26:00,380 --> 00:26:02,240 I si canviem això a Paypal. 553 00:26:02,240 --> 00:26:09,960 I si anomenem a això, com, www.paypal.badguy.com, 554 00:26:09,960 --> 00:26:12,070 qualsevol que sigui el domini és. 555 00:26:12,070 --> 00:26:13,700 Això probablement existeix. 556 00:26:13,700 --> 00:26:16,260 Així que ara vull tornar a carregar la pàgina. 557 00:26:16,260 --> 00:26:22,890 I aquí tenim una mena de phishing atac, P-H-I-S-H-Me-N-G, que és la 558 00:26:22,890 --> 00:26:26,760 paraula ximple dóna per a un atac que tracta d'informació dels peixos, o, millor 559 00:26:26,760 --> 00:26:30,450 però, els diners de la gent enganyant que els proporcionen informació que 560 00:26:30,450 --> 00:26:31,990 no poden fer una altra cosa. 561 00:26:31,990 --> 00:26:33,500 Això sembla totalment legítim, no? 562 00:26:33,500 --> 00:26:34,930 He de tenir un enllaç per Paypal.com. 563 00:26:34,930 --> 00:26:37,700 564 00:26:37,700 --> 00:26:40,430 Per ser justos, si jo sexuat que amb una mica de gràfics, podem fer que es vegi 565 00:26:40,430 --> 00:26:41,310 més com PayPal. 566 00:26:41,310 --> 00:26:41,510 Cert? 567 00:26:41,510 --> 00:26:43,815 Perquè jo podria, en un apart, Podria anar a Paypal.com. 568 00:26:43,815 --> 00:26:47,110 I acabem de veure com puc veure totes les del seu HTML. 569 00:26:47,110 --> 00:26:50,560 Jo podria copiar i tornar a crear el estètica de Paypal en comptes d'anar 570 00:26:50,560 --> 00:26:51,490 vella escola aquí. 571 00:26:51,490 --> 00:26:55,010 Però es va adonar, per descomptat, i és una mica petita encara, només a la part inferior 572 00:26:55,010 --> 00:26:59,190 cantonada esquerra, de la mateixa a 10 punts font, veus el que estàs URL 573 00:26:59,190 --> 00:27:01,310 en realitat serà portat a. 574 00:27:01,310 --> 00:27:06,580 >> I pel que si alguna vegada has aconseguit dient el correu brossa seguir endavant, i ja està en compte 575 00:27:06,580 --> 00:27:07,420 s'ha vist compromesa. 576 00:27:07,420 --> 00:27:10,615 Si us plau, feu clic en aquest enllaç i fes-nos saber la contrasenya pel que pot assegurar-se que està 577 00:27:10,615 --> 00:27:13,010 vostè, no tornis a fer això. 578 00:27:13,010 --> 00:27:14,180 Aquestes coses haurien de ser evident. 579 00:27:14,180 --> 00:27:17,670 Però és meravellosament divertit, i tràgica, com cada any, això sembla 580 00:27:17,670 --> 00:27:19,660 passar a alguns no-zero nombre de persones. 581 00:27:19,660 --> 00:27:21,400 >> I aquesta és la bellesa dels atacs de phishing. 582 00:27:21,400 --> 00:27:23,160 Vostè pot enviar un milió de correus electrònics. 583 00:27:23,160 --> 00:27:27,720 I fins i tot si el 0,01% de les persones en realitat feu clic a Paypal i donar la 584 00:27:27,720 --> 00:27:31,040 contrasenya, que segueix sent un nombre diferent de zero de les persones que acaben de donar 585 00:27:31,040 --> 00:27:32,200 que els seus diners. 586 00:27:32,200 --> 00:27:36,170 I l'enviament de missatges de correu electrònic, per descomptat, és bastant fàcil i, essencialment, lliure de 587 00:27:36,170 --> 00:27:36,970 en aquests dies. 588 00:27:36,970 --> 00:27:40,410 >> Així que conte llarg, meravellosament bella idea, oi? 589 00:27:40,410 --> 00:27:44,620 Fa anys, aquesta va ser la primera web, el que permet una xarxa de 590 00:27:44,620 --> 00:27:46,330 hipervincles entre els recursos. 591 00:27:46,330 --> 00:27:49,520 Però tan ràpid podria ser utilitzat per als propòsits malalts. 592 00:27:49,520 --> 00:27:54,100 I el correu electrònic, només cal dir, aquests dia, s'han incrustat en HTML. 593 00:27:54,100 --> 00:27:55,410 >> Bé, permetin-me una cosa més. 594 00:27:55,410 --> 00:27:58,640 I anem a ajornar gran part de la secció de problema conjunt de set que li permet 595 00:27:58,640 --> 00:28:00,000 explorar els detalls. 596 00:28:00,000 --> 00:28:01,990 Però m'ho dius seguir endavant i fer algunes coses aquí. 597 00:28:01,990 --> 00:28:04,840 Vaig a entrar i declarar el que s'anomena un div o 598 00:28:04,840 --> 00:28:06,080 divisió de la pàgina. 599 00:28:06,080 --> 00:28:07,770 Permetin-me concloure que l'etiqueta div. 600 00:28:07,770 --> 00:28:11,460 >> I jo vaig a dir fins Aquí la part superior de la pàgina. 601 00:28:11,460 --> 00:28:14,940 I per sota d'aquest, jo faré alguna cosa així com un altre div, tancar aquesta 602 00:28:14,940 --> 00:28:17,800 etiqueta, i faci part inferior de la pàgina. 603 00:28:17,800 --> 00:28:18,840 I anem a guardar-lo. 604 00:28:18,840 --> 00:28:21,040 >> Així que ara anem a tornar al meu arxiu. 605 00:28:21,040 --> 00:28:22,120 Molt decebedor. 606 00:28:22,120 --> 00:28:25,520 Però el que la divisió s'utilitza per, sota de la capella, és en realitat 607 00:28:25,520 --> 00:28:26,920 un element estructural agradable. 608 00:28:26,920 --> 00:28:30,300 No té cap estètica la mesura que podem veure, que no sigui, pel que sembla, 609 00:28:30,300 --> 00:28:31,890 posar les coses en línies noves. 610 00:28:31,890 --> 00:28:36,290 >> Però avís, en un apart, simplement amb prémer Introdueix no és suficient en HTML com si 611 00:28:36,290 --> 00:28:39,840 fa en C. Es podria pensar que això és posarà una agradable gran bretxa entre 612 00:28:39,840 --> 00:28:41,300 la part superior i inferior de la pàgina. 613 00:28:41,300 --> 00:28:43,420 Però s'ignora. 614 00:28:43,420 --> 00:28:48,040 L'espai en blanc és essencialment ignorada en pàgines web que no siguin la primera 615 00:28:48,040 --> 00:28:51,530 caràcter d'espai en bar o retorn de carro, que colpeja en el teclat. 616 00:28:51,530 --> 00:28:55,370 Si voleu més salts de línia, d'especificar vostè mateix. 617 00:28:55,370 --> 00:28:59,080 >> Així que em vaig a fer un parell de coses aquí per veure el que està passant. 618 00:28:59,080 --> 00:29:02,700 Vaig a afegir un atribut que existeix i altra vegada, el camí s'aprèn 619 00:29:02,700 --> 00:29:07,110 quins atributs existeixen, quines són les etiquetes, Realment, és referència en línia. 620 00:29:07,110 --> 00:29:09,750 HTML és el tipus de llenguatge - és no és un llenguatge de programació. 621 00:29:09,750 --> 00:29:12,460 És un llenguatge de marques - que després d'un bona mitja hora, potser, d'una hora amb 622 00:29:12,460 --> 00:29:15,930 ella, sens dubte va a entendre, més probablement, la idea bàsica. 623 00:29:15,930 --> 00:29:20,350 I llavors una cerca a Google de distància és tot les possibles etiquetes que vostè pot ser 624 00:29:20,350 --> 00:29:21,170 visitat 625 00:29:21,170 --> 00:29:24,290 I per l'especificació, que és bastant benvinguda i encoratjada aquí. 626 00:29:24,290 --> 00:29:26,120 >> Així que ara vull seguir endavant i fer alguna cosa com això. 627 00:29:26,120 --> 00:29:28,690 Background-color. 628 00:29:28,690 --> 00:29:32,060 I ara, vaig a fer alguna cosa com el vermell, punt i coma. 629 00:29:32,060 --> 00:29:33,970 I vostè pot fer això en diferents maneres. 630 00:29:33,970 --> 00:29:36,770 Sóc només una mica d'escriure com súper explícitament com sigui possible. 631 00:29:36,770 --> 00:29:41,960 >> Però resulta que aquest valor aquí és el que s'anomena CSS, Cascading Style 632 00:29:41,960 --> 00:29:43,700 Fulles, que és una altra idioma per complet. 633 00:29:43,700 --> 00:29:46,770 CSS no té res a veure amb obrir etiquetes i etiquetes de tancament. 634 00:29:46,770 --> 00:29:48,230 Té a veure amb les propietats. 635 00:29:48,230 --> 00:29:52,660 >> I les propietats són simplement valor clau parells, que només significa una paraula, 636 00:29:52,660 --> 00:29:54,680 còlon, i després alguna altra paraula. 637 00:29:54,680 --> 00:29:57,940 I si vostè té múltiples estimats, o simplement d'aquí, vostè pot acabar amb un 638 00:29:57,940 --> 00:29:59,390 punt i coma, només per a major claredat. 639 00:29:59,390 --> 00:30:01,370 Però això, també, va a funcionar aquí. 640 00:30:01,370 --> 00:30:02,500 >> Ara, què és això farà? 641 00:30:02,500 --> 00:30:03,610 Vostè probablement pot endevinar. 642 00:30:03,610 --> 00:30:05,930 Déjame anar per davant i torneu a carregar aquesta pàgina. 643 00:30:05,930 --> 00:30:07,300 I ara està realment arribant al llarg. 644 00:30:07,300 --> 00:30:09,150 Així que la part superior de la meva pàgina és de color vermell. 645 00:30:09,150 --> 00:30:12,380 Però el que és clau aquí és que, com he esmentat abans, que li dóna div 646 00:30:12,380 --> 00:30:13,220 una divisió de la pàgina. 647 00:30:13,220 --> 00:30:14,410 I això és precisament el que fa. 648 00:30:14,410 --> 00:30:17,920 En essència, divideix la pàgina en un rectangle que vostè pot llavors 649 00:30:17,920 --> 00:30:18,720 manipular. 650 00:30:18,720 --> 00:30:22,330 >> I aquesta noció de rectangles és una espècie de convincent que, si es pensa en 651 00:30:22,330 --> 00:30:26,410 la majoria de qualsevol lloc web, és probable que hi hagi alguna estructura a la mateixa. 652 00:30:26,410 --> 00:30:29,620 La majoria de vostès probablement poques vegades vist Pàgina d'inici de Facebook si has ingressat 653 00:30:29,620 --> 00:30:30,440 a tot el temps. 654 00:30:30,440 --> 00:30:33,920 >> Però a la pàgina principal de Facebook, hi ha algun tipus de div a la part superior. 655 00:30:33,920 --> 00:30:36,140 I potser no és tan senzill com div, però hi ha una 656 00:30:36,140 --> 00:30:37,560 regió rectangular allà. 657 00:30:37,560 --> 00:30:40,290 La resta de la pàgina és com una gran div, com una gran part 658 00:30:40,290 --> 00:30:41,910 més gran regió rectangular. 659 00:30:41,910 --> 00:30:44,540 Així que el conte llarg, només per tenir aquests petits blocs de construcció, els 660 00:30:44,540 --> 00:30:49,250 capacitat per modelar coses com rectangles, ja sigui àmplia o estreta, també pot 661 00:30:49,250 --> 00:30:53,680 Crear columnes potencialment, li permet Disposi les pàgines, de veritat, però, 662 00:30:53,680 --> 00:30:54,100 li agradaria. 663 00:30:54,100 --> 00:30:56,170 Realment estem esgarrapant la superfície aquí. 664 00:30:56,170 --> 00:30:59,820 >> De fet, si fem un altre, m'ho dius a mi anar endavant i fer-ho estil, 665 00:30:59,820 --> 00:31:05,410 background-color, farem alguna cosa com el blau, cotitzacions de tancament. 666 00:31:05,410 --> 00:31:06,620 Anem a tornar a carregar aquesta. 667 00:31:06,620 --> 00:31:08,260 Així que ara és cada vegada més lleig. 668 00:31:08,260 --> 00:31:11,520 Però ara puc classe de mostrar el meu P estableix cinc habilitats, oi? 669 00:31:11,520 --> 00:31:12,690 Vermell. 670 00:31:12,690 --> 00:31:15,640 Em recorda a RGB, Vermell Triples Blau Verd. 671 00:31:15,640 --> 00:31:19,330 Bé, resulta que en la programació web, o el disseny de pàgines web, que és això, hem 672 00:31:19,330 --> 00:31:21,650 encara no programat res per se, en realitat es pot 673 00:31:21,650 --> 00:31:22,880 tenir codi hexadecimal. 674 00:31:22,880 --> 00:31:26,480 Així que alguna cosa alguna cosa, alguna cosa alguna cosa, alguna cosa una mica. 675 00:31:26,480 --> 00:31:30,650 Així que pots tenir 6 hexadecimal caràcters, tres o, en alguns casos, 676 00:31:30,650 --> 00:31:33,480 i cada un d'aquests signes d'interrogació ha de ser un dígit hexadecimal, 677 00:31:33,480 --> 00:31:34,985 zero a f. 678 00:31:34,985 --> 00:31:41,000 >> Si vull tenir un munt de vermell, i no verd, i no blau, quin és el 679 00:31:41,000 --> 00:31:43,740 oposat de zero quan s'utilitza hexagonal? 680 00:31:43,740 --> 00:31:44,480 És f. 681 00:31:44,480 --> 00:31:51,130 Així que puc fer ff, zero zero, zero, zero, salvar això, i ara venir aquí. 682 00:31:51,130 --> 00:31:52,700 I en realitat no veig un canvi. 683 00:31:52,700 --> 00:31:56,230 Així cita cometes "vermell" és aparentment sinònim de tota vermella, 684 00:31:56,230 --> 00:31:57,610 no verd, no blau. 685 00:31:57,610 --> 00:31:59,960 Mentrestant, canviarem deliberadament aquest sigui una mica 686 00:31:59,960 --> 00:32:01,210 l'atzar, com ABCDF. 687 00:32:01,210 --> 00:32:03,790 688 00:32:03,790 --> 00:32:05,860 >> Anem a veure el que és. 689 00:32:05,860 --> 00:32:08,530 És un bonic blau, En realitat, blau nadó. 690 00:32:08,530 --> 00:32:11,820 Bé, pel que aquests són ara combinacions aleatòries d'alguna cosa 691 00:32:11,820 --> 00:32:12,210 personatges. 692 00:32:12,210 --> 00:32:13,410 Així que no t'atabalis aquí. 693 00:32:13,410 --> 00:32:15,930 Però de nou, això parla de la precisió que vostè pot començar a 694 00:32:15,930 --> 00:32:19,090 aplicar - fins i tot si vostè està molt aclaparat per l'estètica. 695 00:32:19,090 --> 00:32:21,750 De fet, si realment vols ser impressionat, vull seguir endavant i canviar 696 00:32:21,750 --> 00:32:23,500 la mida de font, per exemple. 697 00:32:23,500 --> 00:32:25,960 I noti el punt i coma, que cal allà. 698 00:32:25,960 --> 00:32:29,570 >> Mida de la font, que pot ser tan ridícul aquí, 96 punts. 699 00:32:29,570 --> 00:32:31,280 Guarda això. 700 00:32:31,280 --> 00:32:33,670 Wow, això és un gran mida de font. 701 00:32:33,670 --> 00:32:35,490 Molt bé, així que és molt fàcil. 702 00:32:35,490 --> 00:32:38,260 I en realitat, bàsicament estàs veient la primera pàgina web que vaig fer 703 00:32:38,260 --> 00:32:40,060 Fa anys, quan per primera vegada après aquestes coses. 704 00:32:40,060 --> 00:32:42,190 És molt fàcil de fer molt coses horribles ràpidament. 705 00:32:42,190 --> 00:32:46,115 >> I si vostè està familiaritzat amb el Wayback Automàtic en archive.org, que 706 00:32:46,115 --> 00:32:48,210 pot trobar tota la meva horrible pàgines web de pregrau. 707 00:32:48,210 --> 00:32:50,090 Un tenia la Granota René al front. 708 00:32:50,090 --> 00:32:53,150 Vaig passar per una fase en què vaig pensar va ser genial per prendre el fons de 709 00:32:53,150 --> 00:32:56,320 una cortina vermella, quan vaig saber de com can imatges rajola nou, i una altra, i 710 00:32:56,320 --> 00:32:59,540 una vegada més, per omplir una pàgina amb una cortina vermella enganxosa gran. 711 00:32:59,540 --> 00:33:03,120 I després, a sobre d'això, va ser una icona que havia de fer clic per entrar a casa meva 712 00:33:03,120 --> 00:33:04,960 pàgina, ja que era molt en voga. 713 00:33:04,960 --> 00:33:08,870 >> I llavors el primer programa que he escrit no era en PHP, però en un llenguatge 714 00:33:08,870 --> 00:33:12,260 coneguda com la perla, va escriure un llibre de visites, que és una dada bona que un 715 00:33:12,260 --> 00:33:14,250 Molta gent pot esperar tenir en una pàgina web. 716 00:33:14,250 --> 00:33:17,510 En arribar a la pàgina, que volen que iniciar sessió, i dius que ets, 717 00:33:17,510 --> 00:33:18,720 i per què ets allà. 718 00:33:18,720 --> 00:33:21,320 Això és molt 1990 disseny web estil. 719 00:33:21,320 --> 00:33:24,130 >> Però en aquests dies, sens dubte, hem arribat molt més lluny. 720 00:33:24,130 --> 00:33:27,560 I veuràs, en secció, i fins i tot en el problema plantejat 07:00, per 721 00:33:27,560 --> 00:33:31,570 aprofitament de les biblioteques en aquests dies, és molt més fàcil de fer 722 00:33:31,570 --> 00:33:33,400 coses boniques ràpidament. 723 00:33:33,400 --> 00:33:36,550 Realment aquí, estem esgarrapant la superfície del que pot fer 724 00:33:36,550 --> 00:33:37,400 estilísticament. 725 00:33:37,400 --> 00:33:41,660 >> I de fet, ja, permetin-me emfatitzar que això ja s'està lleig, no 726 00:33:41,660 --> 00:33:46,030 només estèticament, sinó en termes l'estil de la meva codi, o la 727 00:33:46,030 --> 00:33:47,260 disseny del meu codi. 728 00:33:47,260 --> 00:33:52,350 Actualment he comingled HTML, que són les etiquetes d'obertura verdosos allà, amb 729 00:33:52,350 --> 00:33:55,160 Propietats CSS, que és totalment legítim. 730 00:33:55,160 --> 00:33:57,200 Això és realment on l'idioma va tenir els seus orígens. 731 00:33:57,200 --> 00:34:01,030 >> No obstant això, en l'interès de disseny net, igual que vam començar coses factoring 732 00:34:01,030 --> 00:34:05,370 a partir dels arxius de C en arxius. h, i molt jo realment practico aquest tipus de 733 00:34:05,370 --> 00:34:07,990 principi i començar a fer aquest lloc. 734 00:34:07,990 --> 00:34:13,280 Permetin-me posar un estil d'aquí, que existeix també en HTML, i em va deixar 735 00:34:13,280 --> 00:34:15,330 s'especifiqui el següent. 736 00:34:15,330 --> 00:34:16,360 Déjame esborrar això. 737 00:34:16,360 --> 00:34:18,110 El color de fons serà de color vermell. 738 00:34:18,110 --> 00:34:19,800 Vaig a eliminar aquest complet. 739 00:34:19,800 --> 00:34:22,580 Vaig a desfer-se del estil Atribueixo, i jo vaig a única 740 00:34:22,580 --> 00:34:24,620 identificar aquest div amb una paraula - 741 00:34:24,620 --> 00:34:28,750 arbitrària, però raonablement, cita fi de la cita "top". I la identificació és un especial 742 00:34:28,750 --> 00:34:32,530 atribut que defineix de forma exclusiva un cert element HTML 743 00:34:32,530 --> 00:34:33,850 com haver de Identificació. 744 00:34:33,850 --> 00:34:37,969 >> Si jo ara vull que estilitzat, aquí, a el cap de la meva pàgina, a l'interior del 745 00:34:37,969 --> 00:34:41,730 etiqueta d'estil, observi que Que puc fer dalt hash. 746 00:34:41,730 --> 00:34:45,300 I llavors puc posar un parell d'arrissat claus, que recorda C, i després deixar que 747 00:34:45,300 --> 00:34:47,130 em pego en aquesta estilització. 748 00:34:47,130 --> 00:34:49,929 I m'ho dius a mi seguir endavant aquí i bestreta on vaig amb això. 749 00:34:49,929 --> 00:34:53,380 També vull crear una per al div inferior. 750 00:34:53,380 --> 00:34:58,010 Déjame prendre el codi de sota horrible aquí, el va posar aquí, i estaré 751 00:34:58,010 --> 00:35:00,770 una mica més que ara anal i estilitzats amb només posar les coses al seu propi 752 00:35:00,770 --> 00:35:02,540 línia, acabant amb punt i coma. 753 00:35:02,540 --> 00:35:04,430 Vaig a desfer de l'etiqueta de l'estil. 754 00:35:04,430 --> 00:35:05,320 >> Però no he acabat encara. 755 00:35:05,320 --> 00:35:07,406 He de fer una cosa més. 756 00:35:07,406 --> 00:35:10,070 Sí, id és igual a cotització final de la cita, "fons" o el que sigui Identificació vull 757 00:35:10,070 --> 00:35:11,740 donar a aquest element. 758 00:35:11,740 --> 00:35:13,420 Ara, deixa tornar per aquí. 759 00:35:13,420 --> 00:35:14,360 I això és molt dolent. 760 00:35:14,360 --> 00:35:15,805 No puc lidiar amb 96 punts. 761 00:35:15,805 --> 00:35:16,960 Farem 24 punts. 762 00:35:16,960 --> 00:35:18,320 O bé, podria ser més precís. 763 00:35:18,320 --> 00:35:21,800 En realitat es pot utilitzar píxels, PX, així que vostè realment aconsegueix gra més fi 764 00:35:21,800 --> 00:35:23,220 control sobre la seva pàgina. 765 00:35:23,220 --> 00:35:26,860 >> Com acotació al marge, això no és necessàriament potser si els usuaris, per 766 00:35:26,860 --> 00:35:29,650 raons d'accessibilitat, volen ser capaç d'augmentar les mides. 767 00:35:29,650 --> 00:35:32,650 Llavors s'adonen que hi ha formes de fer les coses que no necessàriament 768 00:35:32,650 --> 00:35:34,230 Codi de tot el dur. 769 00:35:34,230 --> 00:35:37,220 >> Molt bé, així que és més gran, més de 24 punts, que qualsevol que sigui el valor per defecte és. 770 00:35:37,220 --> 00:35:38,630 Però ara és una mica més net. 771 00:35:38,630 --> 00:35:40,230 I vull aprofitar aquesta un pas més enllà. 772 00:35:40,230 --> 00:35:47,220 Igual que la idea dels arxius de capçalera, notem que estem un pas més a prop d'això. 773 00:35:47,220 --> 00:35:52,000 Tinc un factor fora, però tot i així vaig anar, dins de la meva pàgina, aquestes regles CSS. 774 00:35:52,000 --> 00:35:56,200 Per què podria voler fer un pas a més, eliminar aquesta complet, i 775 00:35:56,200 --> 00:35:59,860 posar-lo en un arxiu separat? 776 00:35:59,860 --> 00:36:01,070 >> Perquè pugui tornar a utilitzar-lo, oi? 777 00:36:01,070 --> 00:36:03,155 Això és només una mica d'intuïció en aquests moments. 778 00:36:03,155 --> 00:36:06,340 Abans, vaig afirmar que era només posant lleig tenir l'estil 779 00:36:06,340 --> 00:36:08,480 atributs dins del divs si mateixos. 780 00:36:08,480 --> 00:36:09,750 Però només una mica de pensar que a través d'. 781 00:36:09,750 --> 00:36:13,560 A la seva pàgina s'allarga, si vostè està posant aquí, i aquí, i 782 00:36:13,560 --> 00:36:18,350 aquí, i aquí, tots aquests diferents colors i mides de font i altres 783 00:36:18,350 --> 00:36:22,550 atributs, la seva pàgina és molt ràpid serà difícil de manejar per a vostè. 784 00:36:22,550 --> 00:36:24,570 >> Si algú se t'acosta i diu, oh, saps què? 785 00:36:24,570 --> 00:36:28,070 M'agradaria canviar la mida de la font per dos punts addicionals, 786 00:36:28,070 --> 00:36:31,275 podria haver d'anar a buscar i reemplaçar un gran nombre de línies de codi. 787 00:36:31,275 --> 00:36:35,170 És molt més convincent per centralitzar tots aquests estètica aquí. 788 00:36:35,170 --> 00:36:38,850 Però si voleu tornar a utilitzar els estètica en diverses pàgines web, totes les 789 00:36:38,850 --> 00:36:41,100 la més convincent per, per exemple, pot crear un arxiu 790 00:36:41,100 --> 00:36:45,290 trucada amb aquests continguts. 791 00:36:45,290 --> 00:36:46,680 >> I m'ho dius a mi fer això. 792 00:36:46,680 --> 00:36:51,150 793 00:36:51,150 --> 00:36:51,920 Desa aquest fitxer. 794 00:36:51,920 --> 00:36:55,580 Dic styles.css, arbitrària, però convencional. 795 00:36:55,580 --> 00:36:58,770 El posaré a la casa de John Harvard Directori d'ara per la simplicitat. 796 00:36:58,770 --> 00:37:03,880 I el que puc fer a la pàgina web és aconseguir desfer-se de l'etiqueta de l'estil per complet, 797 00:37:03,880 --> 00:37:08,270 i una mica unintuitively, feu un enllaç etiqueta, que no et donen un enllaç a 798 00:37:08,270 --> 00:37:13,140 al hipervincle, el sentit pot fer clic, però on dic vincle href igual 799 00:37:13,140 --> 00:37:15,120 styles.css. 800 00:37:15,120 --> 00:37:20,050 I la relació que aquest element ha amb la pàgina web és servir de 801 00:37:20,050 --> 00:37:21,280 el seu full d'estil. 802 00:37:21,280 --> 00:37:22,670 >> Llavors, com ho sé? 803 00:37:22,670 --> 00:37:25,950 Un d'ells, que acaba de llegir el manual, o Google voltant, i 804 00:37:25,950 --> 00:37:27,000 mirar als diferents recursos. 805 00:37:27,000 --> 00:37:30,520 Vull dir, que realment és la forma de recollir tècniques d'aquest tipus, i, d'acord 806 00:37:30,520 --> 00:37:34,720 amb la idea d'ensenyar a si mateix noves idiomes, de nou, es pot trobar que 807 00:37:34,720 --> 00:37:38,830 només hi ha un nombre finit de coses a qualsevol llenguatge que, un cop 808 00:37:38,830 --> 00:37:41,310 ells, es pot trobar que es posa més ràpid i més ràpid per escriure. 809 00:37:41,310 --> 00:37:44,180 En efecte, l'aprenentatge d'una nova programació idioma és molt més ràpid que un nou 810 00:37:44,180 --> 00:37:47,380 llengua parlada perquè aquestes coses són molt més petit i molt més 811 00:37:47,380 --> 00:37:48,820 definit amb precisió. 812 00:37:48,820 --> 00:37:51,590 >> Però jo he destacat una mica d'una anomalia aquí. 813 00:37:51,590 --> 00:37:57,750 Per què he posat de relleu aquest barra inclinada aquí? 814 00:37:57,750 --> 00:37:59,420 Perquè he de tancar l'etiqueta. 815 00:37:59,420 --> 00:38:00,530 Hauria tancar l'etiqueta. 816 00:38:00,530 --> 00:38:02,750 I trobareu innombrables recursos en línia que no ho fan 817 00:38:02,750 --> 00:38:04,080 necessàriament obrir i tancar. 818 00:38:04,080 --> 00:38:08,770 I sent realistes, no és estrictament necessària per a la tècnica i hi ha 819 00:38:08,770 --> 00:38:11,950 raons de la realitat, els navegadors són només bastant tolerant d'errors en web 820 00:38:11,950 --> 00:38:14,360 pàgines, per bé o per mal, però sobretot pitjor. 821 00:38:14,360 --> 00:38:18,830 >> Així que aquí és només una forma més neta de dient alguna cosa estúpid com això, 822 00:38:18,830 --> 00:38:22,330 on si voleu obrir l'etiqueta d'enllaç però prop d'ella, no hi ha realment cap idea 823 00:38:22,330 --> 00:38:23,720 del contingut d'una etiqueta d'enllaç. 824 00:38:23,720 --> 00:38:26,000 Només significa mostrar presentar i posar aquí. 825 00:38:26,000 --> 00:38:30,610 És com aguda s'inclouen en C. Pot obrir i tancar una etiqueta alhora 826 00:38:30,610 --> 00:38:31,660 dins la mateixa etiqueta. 827 00:38:31,660 --> 00:38:33,520 I hi ha altres exemples d'això. 828 00:38:33,520 --> 00:38:37,280 Aquesta no és la manera de fer-ho, però l'etiqueta br, per salts de línia, si 829 00:38:37,280 --> 00:38:41,780 moltes ganes d'aconseguir el que era intentar abans prement Intro, si 830 00:38:41,780 --> 00:38:45,380 Dic expressament salt de línia, salt de línia, salt de línia, salt de línia i 831 00:38:45,380 --> 00:38:49,100 a continuació, tornar a carregar aquesta pàgina, ja et donaràs compte que la part inferior de la pàgina és, 832 00:38:49,100 --> 00:38:51,940 de fet, molt més avall en la part inferior de la pàgina. 833 00:38:51,940 --> 00:38:55,840 Però fins i tot això es pot fer molt més netament amb CSS, i amb marges, 834 00:38:55,840 --> 00:38:58,120 i amb altres com estètica tècniques. 835 00:38:58,120 --> 00:38:59,940 >> Així que per ara, els robatoris de pilota són això. 836 00:38:59,940 --> 00:39:02,320 En HTML, tenim aquests coses que es diuen les etiquetes. 837 00:39:02,320 --> 00:39:04,830 En CSS, tenim aquestes coses anomenada propietats. 838 00:39:04,830 --> 00:39:08,700 Podem comingle aquestes dues llengües, ja sigui mitjançant l'atribut d'estil, 839 00:39:08,700 --> 00:39:14,240 o l'etiqueta d'estil, o millor encara, el factoring a terme per complet, com ho fem 840 00:39:14,240 --> 00:39:17,270 en el conjunt de problemes 7. 841 00:39:17,270 --> 00:39:23,820 Preguntes i, a continuació, sobre el fonaments conceptuals aquí? 842 00:39:23,820 --> 00:39:24,740 >> AUDIÈNCIA: Tinc una pregunta. 843 00:39:24,740 --> 00:39:25,630 >> ALTAVEU 1: Oh, ho sento. 844 00:39:25,630 --> 00:39:28,880 >> AUDIÈNCIA: Per què no era de color - 845 00:39:28,880 --> 00:39:31,410 >> ALTAVEU 1: Oh, en l'altra pestanya? 846 00:39:31,410 --> 00:39:32,232 Aquesta aquí? 847 00:39:32,232 --> 00:39:33,482 >> AUDIÈNCIA: No, és com el - 848 00:39:33,482 --> 00:39:35,330 849 00:39:35,330 --> 00:39:39,480 >> ALTAVEU 1: Oh, això és perquè Jo estava sent descuidat. 850 00:39:39,480 --> 00:39:41,350 Vaig posar el fitxer al lloc equivocat. 851 00:39:41,350 --> 00:39:47,840 Així que si realment poso aquí, i jo chmod, tot + r per styles.css i 852 00:39:47,840 --> 00:39:52,050 ara recarreguem la pàgina, ja que obtenir l'estilització de nou. 853 00:39:52,050 --> 00:39:54,530 I pel fet que les mides de font diferent, no veiem absolutament tant 854 00:39:54,530 --> 00:39:55,010 espai en blanc. 855 00:39:55,010 --> 00:39:58,240 En canvi veiem quina és la defecte és el seu lloc. 856 00:39:58,240 --> 00:40:00,050 Bona pregunta. 857 00:40:00,050 --> 00:40:00,846 Sí? 858 00:40:00,846 --> 00:40:02,630 >> AUDIÈNCIA: Per què el vincle etiqueta dins de la capçalera? 859 00:40:02,630 --> 00:40:06,270 >> ALTAVEU 1: Per què els vincles etiqueta a l'interior de la capçalera - 860 00:40:06,270 --> 00:40:07,650 resposta curta, perquè sí. 861 00:40:07,650 --> 00:40:08,930 Això és el que es va decidir. 862 00:40:08,930 --> 00:40:10,720 Aquí és on les etiquetes d'enllaç van quan Tens el que es diu un 863 00:40:10,720 --> 00:40:13,650 full d'estils extern. 864 00:40:13,650 --> 00:40:16,430 Altres preguntes? 865 00:40:16,430 --> 00:40:17,770 >> Està bé, bo farem això. 866 00:40:17,770 --> 00:40:20,500 Tenim tanta diversió per davant de nosaltres avui en dia. 867 00:40:20,500 --> 00:40:22,480 Això és només esgarrapant la superfície de CSS. 868 00:40:22,480 --> 00:40:23,010 Farem això. 869 00:40:23,010 --> 00:40:25,980 Anem a prendre un descans de cinc minuts aquí perquè, per la meva correu electrònic, anem a passar l'estona a 870 00:40:25,980 --> 00:40:27,200 allí fins les 2:30-ish avui. 871 00:40:27,200 --> 00:40:28,540 Però si vostè ha de deixar, això està bé. 872 00:40:28,540 --> 00:40:30,380 Però ja avancem després un descans de cinc minuts. 873 00:40:30,380 --> 00:40:35,930 I anem a aprendre una mica d'alguna cosa sobre PHP, MySQL, etc. 874 00:40:35,930 --> 00:40:44,520 >> Molt bé, així que tractarem ara, per lligar una algunes d'aquestes idees i fer, 875 00:40:44,520 --> 00:40:46,180 dir, el nostre propi motor de cerca. 876 00:40:46,180 --> 00:40:48,570 Em vaig adonar, curiosament, el següent. 877 00:40:48,570 --> 00:40:52,610 Quan vostè està a Google.com, ets normalment a una URL com aquesta aquí 878 00:40:52,610 --> 00:40:54,870 sense res després del punt com. 879 00:40:54,870 --> 00:40:59,760 Però si busco alguna cosa estúpid com gats, i prem enter, ens posarem en contacte - no 880 00:40:59,760 --> 00:41:01,300 estúpid, però ja saps. 881 00:41:01,300 --> 00:41:05,410 >> Acceptar, pel que explica, a la part superior de la pàgina, ara, la URL ha, per descomptat, canviat. 882 00:41:05,410 --> 00:41:07,190 I això no és res nou a qualsevol de nosaltres. 883 00:41:07,190 --> 00:41:09,290 Fa clic a enllaços i altres coses que succeeix a la web. 884 00:41:09,290 --> 00:41:11,420 Però l'interessant aquí és el següent. 885 00:41:11,420 --> 00:41:14,500 Hi ha un munt de desordre, però anem em elimina allò que jo no 886 00:41:14,500 --> 00:41:16,600 entenc molt bé o no mirar realment rellevant. 887 00:41:16,600 --> 00:41:18,490 >> Déjame desfer-me d'això. 888 00:41:18,490 --> 00:41:20,030 Déjame desfer-me d'això. 889 00:41:20,030 --> 00:41:22,630 I m'ho dius desfer de tot això. 890 00:41:22,630 --> 00:41:28,840 I ara adonar que els gats estan a la URL, seguit d'un q, llavors un igual 891 00:41:28,840 --> 00:41:29,710 signar al davant d'ell. 892 00:41:29,710 --> 00:41:32,110 Així que resulta que això és com el forma en què funciona quan es tracta de 893 00:41:32,110 --> 00:41:33,360 a l'entrada i la sortida. 894 00:41:33,360 --> 00:41:37,510 >> Hem parlat molt sobre caixes negres, oi? 895 00:41:37,510 --> 00:41:41,650 Així que si es tracta d'una funció implementada aquí com un quadre negre, presa d'entrada 896 00:41:41,650 --> 00:41:45,290 i produeix la sortida, així, els mitjans pel qual es proporciona l'entrada a un 897 00:41:45,290 --> 00:41:49,270 lloc web és a través, sovint, de la seva URL. 898 00:41:49,270 --> 00:41:52,850 Vostè només ha de posar un signe d'interrogació i després una clau igual valor. 899 00:41:52,850 --> 00:41:56,740 I llavors potser un símbol d'unió, i després altra clau és igual al valor, llavors potser 900 00:41:56,740 --> 00:41:58,810 un altre signe, tecla d'igual valor. 901 00:41:58,810 --> 00:42:03,030 Això és el que passa a les claus i valors, parells d'entrades. 902 00:42:03,030 --> 00:42:07,050 >> Així que si copejo Entra ara, quin és interessant de Google és que tots 903 00:42:07,050 --> 00:42:10,420 que el desordre He eliminat no apareix ser estrictament necessari. 904 00:42:10,420 --> 00:42:15,120 Tot el que necessito per enviar a Google és la qüestió marca q és igual als gats per obtenir 905 00:42:15,120 --> 00:42:16,160 còpies d'alguns gats. 906 00:42:16,160 --> 00:42:20,160 Doncs bé, la conseqüència d'això, a continuació, és que si m'aixeco gedit, he començat 907 00:42:20,160 --> 00:42:24,360 fer el meu propi motor de cerca aquí en un arxiu anomenat seach0.html. 908 00:42:24,360 --> 00:42:26,750 >> I m'ho dius a mi seguir endavant i eliminar una línia més que vostè 909 00:42:26,750 --> 00:42:27,910 No se suposava que veure. 910 00:42:27,910 --> 00:42:31,070 I ara, deixa anar al meu propi navegador, pel que no a Google, i vagi a 911 00:42:31,070 --> 00:42:34,900 http://localhost. 912 00:42:34,900 --> 00:42:36,220 I això va a posar-se al camí. 913 00:42:36,220 --> 00:42:43,240 Així que anem a haver de dir adéu a que, per ara, mou això aquí, 914 00:42:43,240 --> 00:42:46,270 oh, ara anem a haver de dir adéu a aquest arxiu. 915 00:42:46,270 --> 00:42:51,700 >> Cada vegada que vostè té un arxiu anomenat index.html o index.php en un 916 00:42:51,700 --> 00:42:54,980 directori, si el servidor web és configurat d'aquesta manera, el que va a 917 00:42:54,980 --> 00:42:59,600 veure, per defecte, és el contingut d'aquest arxiu en lloc d'una llista de la 918 00:42:59,600 --> 00:43:02,330 directori, ja que volia aquí. 919 00:43:02,330 --> 00:43:03,750 Més sobre això en l'especificació. 920 00:43:03,750 --> 00:43:04,610 Vostè no va veure això. 921 00:43:04,610 --> 00:43:06,360 >> Així que això és el que realment volia. 922 00:43:06,360 --> 00:43:08,810 Però fa un moment, hi va haver un fitxer en aquesta carpeta 923 00:43:08,810 --> 00:43:11,290 index.html index.php. 924 00:43:11,290 --> 00:43:13,380 I perquè el servidor web mostrant-me aquests arxius. 925 00:43:13,380 --> 00:43:15,900 En canvi, vull aquest directori enumerar aquí. 926 00:43:15,900 --> 00:43:18,340 >> Així que vaig a entrar en CSS i anar a search0. 927 00:43:18,340 --> 00:43:21,770 I afirmo que això es va a ser Al principi de la meva pròpia competència 928 00:43:21,770 --> 00:43:22,490 els motors de cerca. 929 00:43:22,490 --> 00:43:27,630 I per fer això, vaig a anar a aquí, en CSS, i obrir amb 930 00:43:27,630 --> 00:43:30,190 gedit, cerca 0. 931 00:43:30,190 --> 00:43:32,280 Però, per desgràcia, no hi ha No hi ha molt a fer aquí. 932 00:43:32,280 --> 00:43:35,690 Tot el que vaig fer va ser utilitzar una etiqueta de capçalera, que passa a dir-h1, que 933 00:43:35,690 --> 00:43:38,180 essencialment vol dir gran i negreta, i això és tot. 934 00:43:38,180 --> 00:43:40,810 Però els mitjans pels quals podem proporcionar entrades són a través d'aquests 935 00:43:40,810 --> 00:43:42,180 coses anomenades formes. 936 00:43:42,180 --> 00:43:46,040 >> Així que permetin-me anar endavant i obrir i tancar, preventivament, una etiqueta de formulari allà. 937 00:43:46,040 --> 00:43:48,060 I m'ho dius a mi seguir endavant i fer alguna cosa com això. 938 00:43:48,060 --> 00:43:51,430 D'entrada, el tipus de text és igual. 939 00:43:51,430 --> 00:43:56,320 I després anem a tancar l'etiqueta dins els claudàtors. 940 00:43:56,320 --> 00:43:58,800 No necessito per iniciar un camp de text i aturar un camp de text. 941 00:43:58,800 --> 00:44:01,080 És que va a ser-hi o no. 942 00:44:01,080 --> 00:44:06,210 >> I sota d'això, farem tipus d'entrada és igual a sotmetre. 943 00:44:06,210 --> 00:44:06,870 Guardar aquest. 944 00:44:06,870 --> 00:44:08,630 I ara només anem a fer una comprovació de validesa ràpid. 945 00:44:08,630 --> 00:44:09,820 Anem a recarregar. 946 00:44:09,820 --> 00:44:10,890 >> OK, així que no està malament. 947 00:44:10,890 --> 00:44:13,260 No és l'estil de Google, però és força estreta. 948 00:44:13,260 --> 00:44:13,920 Hi ha un camp de text. 949 00:44:13,920 --> 00:44:17,190 Puc escriure algunes coses en, premeu Enter, però no passa res encara. 950 00:44:17,190 --> 00:44:21,090 I això és perquè no he especificat una acció d'aquest tipus, per així dir-ho. 951 00:44:21,090 --> 00:44:23,860 Així que si torno a l'element de formulari, resulta, i sé que això només 952 00:44:23,860 --> 00:44:27,460 d'haver llegit la documentació, que l'etiqueta de formulari té un atribut 953 00:44:27,460 --> 00:44:31,880 anomenada acció que és la URL de la pàgina web a la qual 954 00:44:31,880 --> 00:44:34,790 voleu enviar el formulari. 955 00:44:34,790 --> 00:44:37,610 >> Realment no crec que tinguem temps per implementar tota la part de darrere d'un 956 00:44:37,610 --> 00:44:38,570 motor de cerca avui. 957 00:44:38,570 --> 00:44:41,900 Així que només direm, eh, anar a google.com / search. 958 00:44:41,900 --> 00:44:43,450 I ara permetin-me concloure les meves cites. 959 00:44:43,450 --> 00:44:46,070 I em deixo més específic que el mètode a utilitzar va 960 00:44:46,070 --> 00:44:47,120 que es dirà aconseguir. 961 00:44:47,120 --> 00:44:50,650 >> Per resumir, hi ha dues maneres, en almenys, que es pot presentar informació 962 00:44:50,650 --> 00:44:51,880 des del navegador al servidor. 963 00:44:51,880 --> 00:44:55,340 Un és aconseguir, i, a efectes de l'actualitat, això només significa a la URL. 964 00:44:55,340 --> 00:44:58,730 Veureu exactament els signes d'interrogació, els signes d'igual, i que els símbols d'unió 965 00:44:58,730 --> 00:44:59,780 vam veure anteriorment. 966 00:44:59,780 --> 00:45:02,890 O hi ha una trucada posterior alternativa. 967 00:45:02,890 --> 00:45:06,490 Per ara, sabem que s'utilitza sovint després quan es vol carregar arxius, com 968 00:45:06,490 --> 00:45:09,820 imatges i altres, o quan es desitja presentar informació de targeta de crèdit, o 969 00:45:09,820 --> 00:45:13,810 contrasenyes, qualsevol cosa que no ho fa realment té sentit, conceptualment, o 970 00:45:13,810 --> 00:45:18,020 seguretat intel ligent, per acabar a la direcció URL del el seu navegador, on els pares espionatge, 971 00:45:18,020 --> 00:45:21,520 o companys, o qualsevol persona amb accés al seu ordinador podria veure. 972 00:45:21,520 --> 00:45:23,110 >> Així que anem a guardar això aquí. 973 00:45:23,110 --> 00:45:24,480 I he de fer una cosa més. 974 00:45:24,480 --> 00:45:27,250 No n'hi ha prou per dir dóna'm un camp de text. 975 00:45:27,250 --> 00:45:29,850 He de donar aquest camp de valorar un nom. 976 00:45:29,850 --> 00:45:34,500 Així que em presti elecció de Google noms, q, i especificar que la segona 977 00:45:34,500 --> 00:45:38,150 Atribueixo Realment no importa el nom del botó Envia. 978 00:45:38,150 --> 00:45:40,890 Tot el que importa és la presentació de el que l'usuari escriu polz 979 00:45:40,890 --> 00:45:41,940 >> I ara això és una mica lleig. 980 00:45:41,940 --> 00:45:42,820 Només diu present. 981 00:45:42,820 --> 00:45:46,350 Resulta, i sé que això de la documentació, no puc dir realment 982 00:45:46,350 --> 00:45:51,710 valor és igual cotització cometes "CS50 seach, "Tancament de cometes. 983 00:45:51,710 --> 00:45:53,030 Llavors anem a recarregar de nou. 984 00:45:53,030 --> 00:45:57,020 Així que jo segueixo fent clic Cmd-R o Control-R en el meu teclat per recarregar. 985 00:45:57,020 --> 00:45:58,605 >> Ara tenim un més interessant els motors de cerca. 986 00:45:58,605 --> 00:46:00,340 No tot sembla Google encara, encara. 987 00:46:00,340 --> 00:46:04,100 Així que seguirem endavant en l'aquí i fer una mica de salt de línia. 988 00:46:04,100 --> 00:46:06,066 >> OK, així que ara tenim Google. 989 00:46:06,066 --> 00:46:08,260 En realitat, gairebé tenim Google. 990 00:46:08,260 --> 00:46:10,460 ¿I ara què passarà? 991 00:46:10,460 --> 00:46:12,220 Vaig a escriure alguna cosa com els gats. 992 00:46:12,220 --> 00:46:16,570 I el navegador va a analitzar que la forma en què he definit. 993 00:46:16,570 --> 00:46:19,470 I es va a enviar l'usuari a aquesta URL. 994 00:46:19,470 --> 00:46:23,420 Així que aquesta vegada, per alguna curiosa raó, Tinc més informació sobre les accions 995 00:46:23,420 --> 00:46:24,410 que aproximadament gats reals. 996 00:46:24,410 --> 00:46:30,580 Però això està bé perquè compta encara acabar aquí, q és igual als gats. 997 00:46:30,580 --> 00:46:35,200 >> Així que el conte llarg, em sembla bastant trivial per obtenir l'entrada de l'usuari. 998 00:46:35,200 --> 00:46:38,190 I per ser justos, hi ha raïms d'altres tipus de camps de formulari. 999 00:46:38,190 --> 00:46:41,510 Hi ha caselles de verificació i, poc mútuament botons exclusius i 1000 00:46:41,510 --> 00:46:42,960 menús desplegables, i més. 1001 00:46:42,960 --> 00:46:46,160 Però tots ells són tan relativament fàcil d'implementar com 1002 00:46:46,160 --> 00:46:48,040 aquest camp de text era. 1003 00:46:48,040 --> 00:46:52,050 I en última instància, només hem de fer segur que algú està escoltant en l'altre 1004 00:46:52,050 --> 00:46:56,490 final de la línia per tal d'aconseguir que la informació processada, d'alguna manera, i 1005 00:46:56,490 --> 00:46:58,440 ens torni els nostres gats. 1006 00:46:58,440 --> 00:47:00,840 >> Vegem una mica exemple més involucrats. 1007 00:47:00,840 --> 00:47:06,020 Déjame anar al directori de la meva vhost, al host local, públic i on 1008 00:47:06,020 --> 00:47:06,980 col · locar el codi font actual. 1009 00:47:06,980 --> 00:47:09,800 Tot això serà en el curs de lloc web per tu per jugar amb. 1010 00:47:09,800 --> 00:47:15,420 I si vaig a froshims, deixa obrir seguretat d'aquest fitxer ara froshim0.php. 1011 00:47:15,420 --> 00:47:18,460 Aquest és una mica més detallat, pel que no anem a escriure això des del principi. 1012 00:47:18,460 --> 00:47:21,970 Però només compta ara alguns un tant característiques familiars. 1013 00:47:21,970 --> 00:47:24,550 >> Un, etiqueta de formulari, acció diferent. 1014 00:47:24,550 --> 00:47:25,670 No és una adreça URL. 1015 00:47:25,670 --> 00:47:29,930 Ara, és pel que sembla per presentar crida register0.php perquè, en un moment, 1016 00:47:29,930 --> 00:47:32,660 Vaig a ensenyar a mi mateix una mica alguna cosa sobre PHP, una programació 1017 00:47:32,660 --> 00:47:37,360 idioma, a causa que PHP es pot utilitzar per posar en pràctica el que Google implementa com 1018 00:47:37,360 --> 00:47:39,650 la part de darrere dels seus motors de cerca. 1019 00:47:39,650 --> 00:47:42,890 >> Google, en realitat, utilitza probablement alguns Python, alguns C + +, i 1020 00:47:42,890 --> 00:47:44,230 raïms d'altres idiomes. 1021 00:47:44,230 --> 00:47:48,230 Però sens dubte podríem implementar la recerca resultats utilitzant PHP si volíem. 1022 00:47:48,230 --> 00:47:49,610 Però per ara, anem a mantenir les coses simples. 1023 00:47:49,610 --> 00:47:53,320 I això és en realitat una reminiscència d'una dels altres primers llocs web que 1024 00:47:53,320 --> 00:47:54,490 fet fa anys. 1025 00:47:54,490 --> 00:47:58,160 >> En els meus temps, es va registrar per esports intramurs com a estudiant de primer any de 1026 00:47:58,160 --> 00:48:00,880 omplint un full de paper, caminar a través del pati, i posant-lo en 1027 00:48:00,880 --> 00:48:04,890 la bústia d'un Proctor en Wigglesworth, i això va ser el que 1028 00:48:04,890 --> 00:48:05,460 registrats. 1029 00:48:05,460 --> 00:48:09,650 I així el meu projecte poc després d'CS50, anava a posar això, el que fa al mestre 1030 00:48:09,650 --> 00:48:13,460 sentit, sobre la banda, que no era tan en voga llavors com ho és ara. 1031 00:48:13,460 --> 00:48:17,510 Però tot el que havíem de fer era crear, essencialment, un formulari HTML. 1032 00:48:17,510 --> 00:48:19,640 >> I aquesta manera semblava més o menys així. 1033 00:48:19,640 --> 00:48:22,480 Tenia una entrada per al El nom de l'estudiant de primer any. 1034 00:48:22,480 --> 00:48:27,780 Vaig tenir una altra casella o o no volien ser capità, el que 1035 00:48:27,780 --> 00:48:30,400 era el seu gènere, i quin era el seu dormitori. 1036 00:48:30,400 --> 00:48:33,370 I llavors fortament codificats en les coses com Apley Tall i Canaday, 1037 00:48:33,370 --> 00:48:34,880 Grays, i així successivament. 1038 00:48:34,880 --> 00:48:36,300 >> Així que una vegada més, noves etiquetes. 1039 00:48:36,300 --> 00:48:39,820 No he vist això abans, nou atributs, però bastant accessible. 1040 00:48:39,820 --> 00:48:42,360 Una vegada que vegis un exemple, pot tipus de demanar prestat aquesta idea i fer un drop 1041 00:48:42,360 --> 00:48:43,820 menú per res més avall. 1042 00:48:43,820 --> 00:48:46,350 Però el fonamental és que cada un aquestes coses tenen noms. 1043 00:48:46,350 --> 00:48:49,720 I a la part inferior d'aquesta manera, no hi ha un botó d'enviament en l'etiqueta, 1044 00:48:49,720 --> 00:48:51,510 o el valor, es registre. 1045 00:48:51,510 --> 00:48:52,670 >> Així que anirem a aquesta pàgina. 1046 00:48:52,670 --> 00:48:55,050 Permetin-me tornar a la llista de directoris. 1047 00:48:55,050 --> 00:48:59,410 Déjame anar a froshims, i anar a froshim0.php. 1048 00:48:59,410 --> 00:49:01,150 Així que és horrible, per ser justos. 1049 00:49:01,150 --> 00:49:03,950 Així que definitivament podria estilitzar aquesta amb una mica de CSS, que podria fer una mica de 1050 00:49:03,950 --> 00:49:06,890 gràfics, potser afegir alguns colors, i fer d'aquesta bonica. 1051 00:49:06,890 --> 00:49:10,530 Però funcionalment, jo diria que aquest és realment molt completa. 1052 00:49:10,530 --> 00:49:15,190 >> Per desgràcia, quan ple això, David, Capità, Home, anem a triar, 1053 00:49:15,190 --> 00:49:20,510 diguem Matthews, Register, tot el que passa és això. 1054 00:49:20,510 --> 00:49:21,910 Però compte un parell de menjar per emportar. 1055 00:49:21,910 --> 00:49:27,130 Un d'ells, el que retorna els arxius resultats, aparentment? 1056 00:49:27,130 --> 00:49:29,470 Així és, en efecte, register0.php. 1057 00:49:29,470 --> 00:49:34,570 Així que el fet que vam veure que l'acció valor de fa un moment per register0, aquest 1058 00:49:34,570 --> 00:49:37,500 corrobora que efectivament va acabar cap a aquest fitxer. 1059 00:49:37,500 --> 00:49:39,040 >> Ara bé, aquest és el text simplement lleig. 1060 00:49:39,040 --> 00:49:42,810 Però noti que aquest text és procedent de host local, 1061 00:49:42,810 --> 00:49:44,170 que és des de l'aparell. 1062 00:49:44,170 --> 00:49:46,350 Penseu en l'aparell ara tan sols un servidor web que podria estar a l' 1063 00:49:46,350 --> 00:49:46,910 Science Center. 1064 00:49:46,910 --> 00:49:48,060 Podria ser a la web real. 1065 00:49:48,060 --> 00:49:49,850 Així que és d'accés públic. 1066 00:49:49,850 --> 00:49:55,480 >> Així que, clarament, hi ha alguna manera de passar formar les entrades de camp a un servidor 1067 00:49:55,480 --> 00:49:56,840 perquè es pugui fer alguna cosa amb ells. 1068 00:49:56,840 --> 00:49:59,020 Desafortunadament, register0 és bastant estúpid. 1069 00:49:59,020 --> 00:50:01,870 Tot el que fa és imprimir un array que s'assembla a això. 1070 00:50:01,870 --> 00:50:04,790 I no és una matriu en la sentit que la coneixem. 1071 00:50:04,790 --> 00:50:08,760 Resulta que PHP, i una gran quantitat de idiomes, tenen no només numèricament 1072 00:50:08,760 --> 00:50:12,350 arrays indexats el primer índex és zero, un, després dos, després punt, 1073 00:50:12,350 --> 00:50:13,780 punt, punt, n almenys 1. 1074 00:50:13,780 --> 00:50:16,400 >> Això és el que s'anomena un matriu associativa. 1075 00:50:16,400 --> 00:50:21,150 Una matriu associativa és una en la qual pot emmagatzemar parells de valors clau en els 1076 00:50:21,150 --> 00:50:23,160 la clau no és necessàriament un nombre. 1077 00:50:23,160 --> 00:50:25,580 Podria ser en realitat una cadena, una paraula. 1078 00:50:25,580 --> 00:50:28,230 I pel que aquest pot ser implementat, sota de la capella, que resulta, 1079 00:50:28,230 --> 00:50:31,896 utilitzant una estructura de dades coneguda com un? 1080 00:50:31,896 --> 00:50:33,600 Pensament alguna cosa dramàtica que anava a succeir - 1081 00:50:33,600 --> 00:50:34,840 taula hash. 1082 00:50:34,840 --> 00:50:38,955 >> Així que una taula hash, recordo, les de vostè que ho va fer per P 6 setembre, o fins i tot recordar 1083 00:50:38,955 --> 00:50:44,110 que, almenys, fins i tot si es va fer un intent, un taula hash, al nostre ús, es va utilitzar per 1084 00:50:44,110 --> 00:50:45,090 simplement emmagatzemar paraules. 1085 00:50:45,090 --> 00:50:47,980 Però, en realitat, estaven emmagatzemant claus i valors. 1086 00:50:47,980 --> 00:50:51,940 Si implementa una taula hash per P estableix 6 diccionari, les claus eren la 1087 00:50:51,940 --> 00:50:56,890 paraules mateixes, i els valors van ser efectivament veritables o falses. 1088 00:50:56,890 --> 00:51:00,190 Sí, aquí, o implícitament, no, no aquí. 1089 00:51:00,190 --> 00:51:02,140 >> Bé, podem generalitzar aquesta idea. 1090 00:51:02,140 --> 00:51:06,230 I podríem utilitzar una base de dades molt similars estructura per emmagatzemar la cadena no 1091 00:51:06,230 --> 00:51:10,180 si sol en la seva taula hash, però suposem que en cada un de la seva haixix 1092 00:51:10,180 --> 00:51:11,130 nodes de la taula. 1093 00:51:11,130 --> 00:51:14,210 I que fins i tot podria fer això en un intent en lloc de tenir un bool. 1094 00:51:14,210 --> 00:51:15,350 Vostè podria tenir una mica més. 1095 00:51:15,350 --> 00:51:19,590 I si la clau no era maxwell, per exemple, però van dir ells "nom", cita o 1096 00:51:19,590 --> 00:51:22,900 citar a fi de cita "capità". I a l'interior de l'estructura de dades C, es va posar una 1097 00:51:22,900 --> 00:51:26,170 valor, no només un Boolean, sinó de valor com a cita cometes "David", o 1098 00:51:26,170 --> 00:51:28,690 "M" o "Matthews", i així successivament. 1099 00:51:28,690 --> 00:51:33,170 >> Així que aquestes mateixes estructures de dades que utilitzem pel que sembla existeix en altres idiomes. 1100 00:51:33,170 --> 00:51:37,650 I jo diria que són en realitat molt, molt més senzill accedir aquí. 1101 00:51:37,650 --> 00:51:40,300 Anem, de fet, un cop d'ull ara en algun tal sintaxi. 1102 00:51:40,300 --> 00:51:43,120 >> Vaig a anar a un directori PHP. 1103 00:51:43,120 --> 00:51:48,390 I vaig a obrir un millor versió del hola-0 d'abans. 1104 00:51:48,390 --> 00:51:50,270 Observeu que tot el que vaig fer va ser afegir alguns comentaris. 1105 00:51:50,270 --> 00:51:52,530 Així que podem desfer d'aquesta distracció. 1106 00:51:52,530 --> 00:51:57,610 >> I aquest programa ho fa de fet imprimeix hola ja he especificat entre 1107 00:51:57,610 --> 00:52:01,420 etiquetes que vull executar aquest codi. 1108 00:52:01,420 --> 00:52:03,380 Ara, anem a veure en un moment per què això és útil. 1109 00:52:03,380 --> 00:52:05,630 Però anem a obrir un altre exemple. 1110 00:52:05,630 --> 00:52:10,430 Déjame anar per davant i obrir dir, gedit de les condicions d'un. 1111 00:52:10,430 --> 00:52:12,970 >> Aquesta és la forma en el temps actual. 1112 00:52:12,970 --> 00:52:16,320 Però fa setmanes, crec, en una setmana o dues setmanes, vam tenir un exemple trucada 1113 00:52:16,320 --> 00:52:18,470 conditions1.c. 1114 00:52:18,470 --> 00:52:22,050 I vaig decidir tornar a implementar en PHP, només per a tipus de destacar que 1115 00:52:22,050 --> 00:52:26,500 PHP, sintàcticament, és gairebé idèntic a C. Això no és un gran salt 1116 00:52:26,500 --> 00:52:27,840 des de la setmana passada a aquesta. 1117 00:52:27,840 --> 00:52:31,230 >> Fixeu-vos en la part superior d'aquest programa, que comença, com abans, amb alguns 1118 00:52:31,230 --> 00:52:34,260 comentaris, que em desfaré com una distracció. 1119 00:52:34,260 --> 00:52:37,410 Tingueu en compte que estic en PHP la manera en aquest arxiu. 1120 00:52:37,410 --> 00:52:40,160 Així que aquest codi, ja veurem, serà executat. 1121 00:52:40,160 --> 00:52:42,670 Observeu que hi ha readline, que és probablement la 1122 00:52:42,670 --> 00:52:46,230 analògica en PHP de getString. 1123 00:52:46,230 --> 00:52:47,390 Noteu que és una mica diferent. 1124 00:52:47,390 --> 00:52:51,410 En realitat s'especifica un sistema per a la funció anomenada línia de lectura, i això és 1125 00:52:51,410 --> 00:52:52,180 el que veu l'usuari. 1126 00:52:52,180 --> 00:52:53,520 Així que vostè no ha de printf manualment. 1127 00:52:53,520 --> 00:52:54,860 Però això no és un gran problema. 1128 00:52:54,860 --> 00:52:59,150 Vaig a guardar, a l'interior de $ n, la tornar valor d'aquest, de manera que qualsevol que sigui el 1129 00:52:59,150 --> 00:53:00,490 usuari escriu és el seu int. 1130 00:53:00,490 --> 00:53:01,660 I aquí hi ha una altra curiositat. 1131 00:53:01,660 --> 00:53:05,810 Resulta que, en PHP, qualsevol variable només ha d'anar precedits 1132 00:53:05,810 --> 00:53:06,970 amb un signe de dòlar. 1133 00:53:06,970 --> 00:53:08,110 És una mica molest. 1134 00:53:08,110 --> 00:53:10,870 Però noti el que no he fet en PHP. 1135 00:53:10,870 --> 00:53:13,980 Què falta a la mà esquerra costat del signe igual? 1136 00:53:13,980 --> 00:53:15,430 >> No hi ha esment de tipus. 1137 00:53:15,430 --> 00:53:19,400 Així que això és diferent de C. Per a un millor o per mal, PHP és un vagament 1138 00:53:19,400 --> 00:53:20,550 llenguatge escrit. 1139 00:53:20,550 --> 00:53:22,010 S'ha nombres. 1140 00:53:22,010 --> 00:53:23,240 S'ha cadenes. 1141 00:53:23,240 --> 00:53:24,015 S'ha booleans. 1142 00:53:24,015 --> 00:53:26,220 I sí que té alguns altres tipus de dades. 1143 00:53:26,220 --> 00:53:30,570 Però tu, el programador, en general no han de preocupar per ells. 1144 00:53:30,570 --> 00:53:34,010 L'avantatge d'això és que fa una mica més fàcil de programar. 1145 00:53:34,010 --> 00:53:35,380 Vostè pot pensar en una mica menys. 1146 00:53:35,380 --> 00:53:39,840 El dolent és que també li obre a errors potencials si accidentalment 1147 00:53:39,840 --> 00:53:43,080 tractar un nombre com una cadena, una cadena com un nombre, en potència, però fins i tot 1148 00:53:43,080 --> 00:53:46,150 llavors, PHP, i una gran quantitat d'idiomes, són bastant tolerants. 1149 00:53:46,150 --> 00:53:49,050 Van a utilitzar el que s'anomena conversió implícita. 1150 00:53:49,050 --> 00:53:55,220 I si intenta utilitzar n en el context d'una situació numèrica, ho farà 1151 00:53:55,220 --> 00:53:58,040 convertir el que aquí es va a ser un cadena, ja que si l'usuari escriu 1152 00:53:58,040 --> 00:54:01,570 alguna cosa, i s'obté el resultat, igual que amb readline, o aconseguir corda, 1153 00:54:01,570 --> 00:54:02,910 això va a tornar una cadena. 1154 00:54:02,910 --> 00:54:07,360 >> Però avís, un parell de línies més tard, comprovar si n és més gran que zero. 1155 00:54:07,360 --> 00:54:13,370 Així que PHP es va a emetre implícitament meu 123 "cadena", o el que sigui l'usuari 1156 00:54:13,370 --> 00:54:14,860 tipus d', en un int. 1157 00:54:14,860 --> 00:54:18,730 Així que en resum, les coses simplement funciona molt més intuïtiva. 1158 00:54:18,730 --> 00:54:23,410 Així que ara comencem a relaxar algunes de les coses que hem fet en el passat. 1159 00:54:23,410 --> 00:54:24,780 >> Gran part d'aquest material és la mateixa, però. 1160 00:54:24,780 --> 00:54:26,340 Encara tinc igual a igual. 1161 00:54:26,340 --> 00:54:30,350 Com PHP banda també ha iguals és igual a iguals, però més d'això, potser, en 1162 00:54:30,350 --> 00:54:30,850 el futur. 1163 00:54:30,850 --> 00:54:31,150 Aquesta va ser una. 1164 00:54:31,150 --> 00:54:35,660 Typo almenys dos signes d'igual significa el mateix cosa com abans, per a la comparació. 1165 00:54:35,660 --> 00:54:37,060 printf significa el mateix que abans. 1166 00:54:37,060 --> 00:54:39,160 Backslash n significa el mateix cosa com abans. 1167 00:54:39,160 --> 00:54:40,390 >> Llavors, com puc executar aquest programa? 1168 00:54:40,390 --> 00:54:44,400 Doncs bé, com abans, si ho faig PHP, conditions1.php, i el tipus d' 1169 00:54:44,400 --> 00:54:46,560 un nombre com 123. 1170 00:54:46,560 --> 00:54:47,720 Això és un nombre positiu. 1171 00:54:47,720 --> 00:54:49,510 Si escric en 0, recullo 0. 1172 00:54:49,510 --> 00:54:53,700 I si escric en 123 negatius, ho entenc còpies d'un nombre negatiu, que només és 1173 00:54:53,700 --> 00:54:59,050 dir, sintàcticament, PHP és super, super similar. 1174 00:54:59,050 --> 00:55:03,250 >> Per què és això ara útil en un context web? 1175 00:55:03,250 --> 00:55:06,710 Bé, anem a tornar a aquest froshims exemple, que semblava, 1176 00:55:06,710 --> 00:55:08,600 una vegada més, com això aquí. 1177 00:55:08,600 --> 00:55:11,580 I siguem realment tiri cap amunt de la pàgina web nou, el que es veia així. 1178 00:55:11,580 --> 00:55:14,930 Què podem fer amb el dades que es van presentar? 1179 00:55:14,930 --> 00:55:18,770 >> Bé, vaig a obrir una nova versió d'aquest. 1180 00:55:18,770 --> 00:55:20,920 I veuràs que el problema especificació dels conjunts que camina 1181 00:55:20,920 --> 00:55:22,850 a través d'alguns d'ells. 1182 00:55:22,850 --> 00:55:29,610 En lloc de començar de zero, vegem froshims3, 1183 00:55:29,610 --> 00:55:31,410 que ho fa una mica més. 1184 00:55:31,410 --> 00:55:34,780 >> Noteu en primer lloc, de fet, obrirem pel que 0 es va arribar, pel que es veu 1185 00:55:34,780 --> 00:55:37,170 el que era el registre 0. 1186 00:55:37,170 --> 00:55:40,040 Noti el que va fer el registre 0. 1187 00:55:40,040 --> 00:55:41,730 Un, no tinc comentaris a la part superior. 1188 00:55:41,730 --> 00:55:43,900 Eliminar aquests i centrar-se només en això. 1189 00:55:43,900 --> 00:55:48,730 La major part dels continguts de register0.php són, per descomptat, quin idioma? 1190 00:55:48,730 --> 00:55:49,980 Només PHP prima. 1191 00:55:49,980 --> 00:55:53,430 >> Així avís, aquest fitxer no s'inicia amb, en el moment, claudàtor obert, 1192 00:55:53,430 --> 00:55:54,970 signe d'interrogació, PHP. 1193 00:55:54,970 --> 00:55:59,800 PHP no li permeten barregen Codi PHP amb etiquetes HTML. 1194 00:55:59,800 --> 00:56:04,130 Però ho he fet aquí a l'interior de la pàgina d'aquí. 1195 00:56:04,130 --> 00:56:08,180 >> Ara, de nou, vostè només sap per després d'haver mirat el manual. print_r, 1196 00:56:08,180 --> 00:56:13,410 Resulta que és print_recursive. _recursive I això és només una pràctica 1197 00:56:13,410 --> 00:56:16,780 funció d'utilitat que només imprimeix, recursiva, el que el dóna. 1198 00:56:16,780 --> 00:56:18,760 Si vostè és el d'una matriu, que va a imprimir una matriu. 1199 00:56:18,760 --> 00:56:20,180 Si passa una quantitat, que va a imprimir un nombre. 1200 00:56:20,180 --> 00:56:21,570 Passa una cadena, que va a imprimir una cadena. 1201 00:56:21,570 --> 00:56:24,500 Si passa una taula hash, que s'imprimirà una taula hash. 1202 00:56:24,500 --> 00:56:26,730 Vostè no ha d'escriure tot que el codi mateix. 1203 00:56:26,730 --> 00:56:29,490 >> Ara noto que estic entrant Mode PHP per aquí. 1204 00:56:29,490 --> 00:56:32,070 Estic de sortir de la manera PHP per aquí. 1205 00:56:32,070 --> 00:56:35,950 Així que quan el servidor web llegeix aquest arxiu dalt a baix, d'esquerra a dreta, perquè 1206 00:56:35,950 --> 00:56:40,750 acaba en un nom d'arxiu anomenat. php, tot el que no està dins de les etiquetes PHP és 1207 00:56:40,750 --> 00:56:42,820 només serà escopit a terme, com HTML pur. 1208 00:56:42,820 --> 00:56:43,630 No és gran cosa. 1209 00:56:43,630 --> 00:56:49,280 Però tan aviat com el servidor web s'adona això, que dirà, que no ha 1210 00:56:49,280 --> 00:56:51,850 escopir, literalment, print_r de correu. 1211 00:56:51,850 --> 00:56:54,910 Hauria executar el següent línia de codi. 1212 00:56:54,910 --> 00:56:59,850 >> Així que l'última pregunta, llavors, d'aquest arxiu És, a més, què diables és això? 1213 00:56:59,850 --> 00:57:00,530 Prengui una conjectura. 1214 00:57:00,530 --> 00:57:04,230 Què és de $ _POST, probablement? 1215 00:57:04,230 --> 00:57:07,070 >> AUDIÈNCIA: [inaudible] 1216 00:57:07,070 --> 00:57:08,830 >> ALTAVEU 1: Sí, les dades publicades. 1217 00:57:08,830 --> 00:57:11,350 Recordem, anem a retrocedir en temps per un moment. 1218 00:57:11,350 --> 00:57:13,165 froshim0, de nou, es veia així. 1219 00:57:13,165 --> 00:57:15,640 Una majoria absoluta que això és només HTML. 1220 00:57:15,640 --> 00:57:18,410 Un cop més, algunes etiquetes que no té vist encara, o amb els quals 1221 00:57:18,410 --> 00:57:19,360 ja està familiaritzat. 1222 00:57:19,360 --> 00:57:21,990 Però l'interessant era això. 1223 00:57:21,990 --> 00:57:27,270 Aquesta línia és la que realment vincula al nostre arxiu register0.php. 1224 00:57:27,270 --> 00:57:29,200 Estic presentant per correu mètode. 1225 00:57:29,200 --> 00:57:33,130 I això significa que els paràmetres l'usuari escriu no són 1226 00:57:33,130 --> 00:57:35,150 va a acabar en. 1227 00:57:35,150 --> 00:57:36,175 >> Ells no van a aparèixer a la URL. 1228 00:57:36,175 --> 00:57:39,020 Encara seran enviada des del client, des del navegador, a la 1229 00:57:39,020 --> 00:57:42,080 servidor, però només a través d'algun altre mecanisme que no et cobrarem nostres mans 1230 00:57:42,080 --> 00:57:44,330 a d'avui, però no està a la URL. 1231 00:57:44,330 --> 00:57:47,630 Però cal notar la relació ara amb ja que, per convenció, és 1232 00:57:47,630 --> 00:57:49,160 minúscules aquí. 1233 00:57:49,160 --> 00:57:54,090 >> Però si obro register0.php, Semblar que estic imprimint això. 1234 00:57:54,090 --> 00:57:56,450 Així que això és una mena d'estranya convenció de nomenclatura. 1235 00:57:56,450 --> 00:58:01,430 Però el que és bo en PHP és que quan usant PHP en un context web, no en un 1236 00:58:01,430 --> 00:58:04,480 línia de comanda com ho vaig fer fa un moment, quan en realitat estàs fent servir en un web 1237 00:58:04,480 --> 00:58:10,580 pàgina, en un directori vhost com a nosaltres, automàticament PHP omplir aquest 1238 00:58:10,580 --> 00:58:15,560 cosa, que és una matriu associativa, per així dir-ho, una taula hash, amb 1239 00:58:15,560 --> 00:58:17,290 tot el que l'usuari va escriure polz 1240 00:58:17,290 --> 00:58:22,000 >> En resum, $ _POST en majúscules és un variable global que acaba de PHP 1241 00:58:22,000 --> 00:58:25,050 màgicament crea per a vostè quan usant PHP en un context web. 1242 00:58:25,050 --> 00:58:29,160 I posa dins d'ella tota la noms de paràmetres en la forma que 1243 00:58:29,160 --> 00:58:33,200 es va presentar a aquesta imatge i tots els valors que l'usuari va escriure polz 1244 00:58:33,200 --> 00:58:37,790 Així que mans perquè el que l'usuari escrit a aquest formulari. 1245 00:58:37,790 --> 00:58:42,210 >> Així que abans, tenim sortida realment estúpid de només veure això, perquè tot el que vaig fer 1246 00:58:42,210 --> 00:58:44,400 va ser recurrentment imprimir aquesta matriu. 1247 00:58:44,400 --> 00:58:46,060 La clau està en el nom, el valor és David. 1248 00:58:46,060 --> 00:58:46,980 La clau és el capità. 1249 00:58:46,980 --> 00:58:47,970 El valor està encès. 1250 00:58:47,970 --> 00:58:52,300 I la doble fletxa i l'angle Suport d'aquí, això és només arbitrària. 1251 00:58:52,300 --> 00:58:53,270 Aquest no és el codi. 1252 00:58:53,270 --> 00:58:57,690 Això és només la forma de mostrar de PHP qual cosa el valor d'algunes de les principals és. 1253 00:58:57,690 --> 00:59:03,000 >> Però ara permetin-me proposar que, en froshIMs3, és gairebé idèntica 1254 00:59:03,000 --> 00:59:04,950 llevat que se sotmet a aquesta imatge. 1255 00:59:04,950 --> 00:59:08,570 I de nou, anem a classe de només fer una ullada a això, només per veure 1256 00:59:08,570 --> 00:59:12,040 sintaxi, però fixa't en el que Aquest fitxer. 1257 00:59:12,040 --> 00:59:14,930 Prengui una conjectura justa basada en les línies de codi, el que probablement no sembli 1258 00:59:14,930 --> 00:59:17,410 Grega, en certa mesura, és aparentment fent. 1259 00:59:17,410 --> 00:59:20,580 1260 00:59:20,580 --> 00:59:23,110 >> Aquest arxiu és d'alguna manera relacionada per enviar per correu, correu electrònic. 1261 00:59:23,110 --> 00:59:24,770 Llavors, què està fent aquest programa? 1262 00:59:24,770 --> 00:59:28,740 En aquesta versió, si jo en realitat ompli aquest formulari - i me n'aniré a 1263 00:59:28,740 --> 00:59:30,760 froshIMs3, no froshIMs0 - 1264 00:59:30,760 --> 00:59:33,280 1265 00:59:33,280 --> 00:59:34,540 la forma té el mateix aspecte. 1266 00:59:34,540 --> 00:59:37,980 David, capità, home, dormitori, Matthews. 1267 00:59:37,980 --> 00:59:42,980 Però si presente això, aquest arxiu és va a anar a register3.php. 1268 00:59:42,980 --> 00:59:46,330 >> I afirmo, en observar que és codi font, que va a 1269 00:59:46,330 --> 00:59:47,650 d'alguna manera impliquen email. 1270 00:59:47,650 --> 00:59:49,620 Deixin-me seguir endavant i obrir la en una finestra més gran, pel que 1271 00:59:49,620 --> 00:59:51,030 pot veure més netament. 1272 00:59:51,030 --> 00:59:57,220 Estem en Vhosts, host local, pública, froshims. 1273 00:59:57,220 --> 00:59:58,680 Vaig a obrir una diferent programa, de manera que només 1274 00:59:58,680 --> 01:00:00,160 pot veure més d'una vegada. 1275 01:00:00,160 --> 01:00:03,100 >> Així que ara aquí, notar algunes coses. 1276 01:00:03,100 --> 01:00:06,530 A la part superior de l'arxiu està obert suport, signe d'interrogació, PHP. 1277 01:00:06,530 --> 01:00:08,920 Després hi ha un munt de comentaris, que podem ignorar, és 1278 01:00:08,920 --> 01:00:10,450 sense interès per ara. 1279 01:00:10,450 --> 01:00:11,300 >> Ara està això. 1280 01:00:11,300 --> 01:00:14,200 Resulta que PHP té molt de codi anomenat requerir. 1281 01:00:14,200 --> 01:00:19,110 És molt similar en esperit a C de incloure, haixix include, que 1282 01:00:19,110 --> 01:00:21,980 essencialment pren el contingut d'alguns un altre arxiu i només els deixa caure aquí, 1283 01:00:21,980 --> 01:00:22,930 perquè pugui utilitzar. 1284 01:00:22,930 --> 01:00:27,060 En aquest cas, l'aparell té, preinstal · lat, una biblioteca, gratuïta i 1285 01:00:27,060 --> 01:00:29,900 biblioteca de codi obert anomenat PHP anunci publicitari que qualsevol pot 1286 01:00:29,900 --> 01:00:30,770 descarregar de la Internet. 1287 01:00:30,770 --> 01:00:32,000 Acabem de fer per vostè. 1288 01:00:32,000 --> 01:00:36,130 I això vol dir que ara tinc email funcionalitat a la meva disposició. 1289 01:00:36,130 --> 01:00:38,170 >> Ara, observi algunes coses. 1290 01:00:38,170 --> 01:00:41,120 Vaig a validar la presentació del formulari. 1291 01:00:41,120 --> 01:00:45,980 Resulta que PHP, un, té exclamació punts per l'operador not, igual que 1292 01:00:45,980 --> 01:00:49,810 C. Però PHP també té una funció anomenat buida. 1293 01:00:49,810 --> 01:00:53,920 >> Empty només retorna true si el valor del que el dóna en 1294 01:00:53,920 --> 01:00:57,190 parèntesi, estan buits, com el usuari no escrigui res polz 1295 01:00:57,190 --> 01:01:02,680 Així que això està dient, i observi la sintaxi, recorda molt a C, si el 1296 01:01:02,680 --> 01:01:07,730 clau de nom, pel que el camp de nom en el formulari, que va ser presentat a través de correu, 1297 01:01:07,730 --> 01:01:13,010 l'usuari, és no buidar i la seva no està buit de gènere en la forma com 1298 01:01:13,010 --> 01:01:15,980 bé, i el seu dormitori no està buit - 1299 01:01:15,980 --> 01:01:19,980 però cal notar que no es preocupen pel capità, llavors, què farem? 1300 01:01:19,980 --> 01:01:21,990 >> Vaig a executar aquesta línia de codi. 1301 01:01:21,990 --> 01:01:24,100 I vostè pot pensar en aquest tipus de com malloc, però és una mica 1302 01:01:24,100 --> 01:01:24,800 més elegant que això. 1303 01:01:24,800 --> 01:01:29,200 Però de moment, això em dóna una especial struct de tipus PHP mailer. 1304 01:01:29,200 --> 01:01:31,410 Però ignorar la paraula clau new per avui. 1305 01:01:31,410 --> 01:01:35,670 >> Ara vaig a cridar a una funció anomenada IsSMTP, que diu utilitzar SMTP. 1306 01:01:35,670 --> 01:01:39,380 Aquest és el port 25, igual que el vídeo la setmana passada, quan la cosa estava llançant 1307 01:01:39,380 --> 01:01:40,710 missatges de correu electrònic al servidor de seguretat. 1308 01:01:40,710 --> 01:01:42,440 El port 25 és SMTP. 1309 01:01:42,440 --> 01:01:44,410 SMTP significa utilitzar el servidor de correu. 1310 01:01:44,410 --> 01:01:46,215 Quin d'ells, podem utilitzar Harvard SMTP.fas.harvard.edu. 1311 01:01:46,215 --> 01:01:48,850 1312 01:01:48,850 --> 01:01:51,590 >> Podem ajustar la direcció de ser John Harvard. 1313 01:01:51,590 --> 01:01:55,090 Si em desplaço cap avall encara més, puc configurar l'adreça del destinatari, així 1314 01:01:55,090 --> 01:01:56,840 arbitràriament, ser John Harvard és així. 1315 01:01:56,840 --> 01:01:59,210 Així que serà un correu electrònic a si mateix. 1316 01:01:59,210 --> 01:02:01,600 >> Ara puc configurar el tema ser registre. 1317 01:02:01,600 --> 01:02:03,700 I puc configurar el cos del correu electrònic com segueix. 1318 01:02:03,700 --> 01:02:06,500 Aquesta línia es veu una mica més críptic, però això és només perquè hi ha una gran quantitat 1319 01:02:06,500 --> 01:02:07,450 de la informació que conté. 1320 01:02:07,450 --> 01:02:10,670 Un d'ells, hi ha un operador de punt. 1321 01:02:10,670 --> 01:02:14,510 Algú ha de saber ja el que l'operador de punt fa. 1322 01:02:14,510 --> 01:02:15,436 És concatenació. 1323 01:02:15,436 --> 01:02:19,240 Així que si vol prendre una cadena en PHP, i afegir, o anteposar, per 1324 01:02:19,240 --> 01:02:23,500 altra cadena en PHP, gràcies Déu no han d'usar strcopy i malloc, 1325 01:02:23,500 --> 01:02:25,490 i tot això. 1326 01:02:25,490 --> 01:02:28,765 >> Per concatenar dues cadenes, que es preocupa per la memòria. 1327 01:02:28,765 --> 01:02:30,850 Anem figura PHP que per a vostè. 1328 01:02:30,850 --> 01:02:35,200 El que PHP ho farà amb l'operador punt Aquesta és només fer una gran frase en 1329 01:02:35,200 --> 01:02:37,900 d'aquesta línia, aquesta línia, aquesta línia, aquesta línia. 1330 01:02:37,900 --> 01:02:40,460 I ara fixeu-vos, va per ser endollar valors. 1331 01:02:40,460 --> 01:02:43,680 Així que el correu electrònic que John Harvard va rebre és, literalment, dirà 1332 01:02:43,680 --> 01:02:49,450 nom, de còlon, alguna cosa, més aviat, a continuació, ens tancar la cadena i concatenar el 1333 01:02:49,450 --> 01:02:52,220 el que l'usuari escriu a, a continuació, una nova línia. 1334 01:02:52,220 --> 01:02:54,570 >> Després, en la següent línia de John Harvard correu electrònic, que dirà 1335 01:02:54,570 --> 01:02:55,910 Capità, Encesa o Res. 1336 01:02:55,910 --> 01:02:57,810 Va a dir que el gènere, masculí o femení. 1337 01:02:57,810 --> 01:02:59,680 Dormitori serà Matthews en el meu cas. 1338 01:02:59,680 --> 01:03:03,400 I a continuació, observi coma familiaritzat al final. 1339 01:03:03,400 --> 01:03:07,830 I després, per aquí, avís, alguna cosa críptic encara, però de nou, després d'un 1340 01:03:07,830 --> 01:03:12,730 patró que es familiaritzi després de P lloc 7, si van a enviar per correu 1341 01:03:12,730 --> 01:03:16,610 retorna false, llavors endavant i morir. 1342 01:03:16,610 --> 01:03:19,610 >> Així que PHP té una funció anomenada matriu, que, literalment, només mata la 1343 01:03:19,610 --> 01:03:22,830 lloc web i només imprimeix al vostè li diu - és està morint 1344 01:03:22,830 --> 01:03:24,280 paraules, per dir-ho. 1345 01:03:24,280 --> 01:03:28,310 I això, en el cas, s'imprimirà el que la informació d'error és de 1346 01:03:28,310 --> 01:03:29,860 el que va passar a anar malament. 1347 01:03:29,860 --> 01:03:34,490 Sempre explico aquí, el que hem és un exemple en el que quan l'usuari 1348 01:03:34,490 --> 01:03:39,150 envia el formulari, froshim0, froshims3.php, va a 1349 01:03:39,150 --> 01:03:40,760 register3.php. 1350 01:03:40,760 --> 01:03:45,290 Però register3.php després procedeix per a executar totes aquestes línies. 1351 01:03:45,290 --> 01:03:46,620 >> Així que hi ha algunes escapades take aquí. 1352 01:03:46,620 --> 01:03:50,380 Un, és pel que sembla bastant fàcil, programació, per enviar missatges de correu electrònic, 1353 01:03:50,380 --> 01:03:50,830 la qual cosa és bo. 1354 01:03:50,830 --> 01:03:53,500 Quan els usuaris es registren per al seu lloc, en aquest cas, quan es registren per a la seva 1355 01:03:53,500 --> 01:03:56,220 esport, es pot enviar l'estudiant de primer any Proctor, o John 1356 01:03:56,220 --> 01:03:57,650 Harvard, en aquest cas. 1357 01:03:57,650 --> 01:04:01,630 >> Però també significa que vostè pot fer què? 1358 01:04:01,630 --> 01:04:03,970 Enviar missatges de correu electrònic de qualsevol persona a qualsevol persona. 1359 01:04:03,970 --> 01:04:05,430 I això és molt cert. 1360 01:04:05,430 --> 01:04:08,580 Això no es fa tan fàcilment si estàs acostumat a fer servir Gmail. 1361 01:04:08,580 --> 01:04:11,310 Però si alguna vegada has fet servir o Eudora Outlook, es pot gairebé explicar una 1362 01:04:11,310 --> 01:04:13,720 servidor de correu que són qui vulguis. 1363 01:04:13,720 --> 01:04:16,450 I aquí és on he de posar en el barret i dir, no ho facis. 1364 01:04:16,450 --> 01:04:21,140 Però aquesta és una prova de la facilitat és dur a terme atacs de phishing, i 1365 01:04:21,140 --> 01:04:24,310 enviar correus electrònics anònims, i correu no desitjat, en termes més generals. 1366 01:04:24,310 --> 01:04:27,330 I que realment es redueix a la fet que tot el que necessita és una mica de 1367 01:04:27,330 --> 01:04:28,500 accés mitjançant programació. 1368 01:04:28,500 --> 01:04:31,940 >> Com acotació al marge, la meva trobada més proper amb el tauler d'anuncis, el meu primer any, 1369 01:04:31,940 --> 01:04:34,320 Va ser llavors quan vaig descobrir aquest fresc truc que, wow, pot 1370 01:04:34,320 --> 01:04:36,850 enviar missatges de correu electrònic de qualsevol persona. 1371 01:04:36,850 --> 01:04:39,770 I així ens ho estàvem passant una estúpid argument, literalment, en Matthews, 1372 01:04:39,770 --> 01:04:40,790 entre el meu grup Proctor. 1373 01:04:40,790 --> 01:04:42,470 Ni tan sols recordo quin era el problema. 1374 01:04:42,470 --> 01:04:44,970 Però jo volia tractar de posar posar fi a aquest estúpid debat. 1375 01:04:44,970 --> 01:04:48,580 >> Així que vaig decidir simplement vaig a enviar un correu electrònic al meu grup Proctor, que pretén ser 1376 01:04:48,580 --> 01:04:52,000 l'altre, amb l'opinió no va estar d'acord, i que ell va aplanar a 1377 01:04:52,000 --> 01:04:54,680 el que la meva opinió era aquest debat particular. 1378 01:04:54,680 --> 01:04:59,320 I així vaig forjar aquest correu electrònic fent servir un tècnica semblant a la de la present. 1379 01:04:59,320 --> 01:05:01,256 Però en realitat era més fàcil en el moment. 1380 01:05:01,256 --> 01:05:02,435 Premi enviar. 1381 01:05:02,435 --> 01:05:06,660 Ell no estava content, ni tampoc han estat el tauler d'anuncis. 1382 01:05:06,660 --> 01:05:10,280 >> I em van agafar molt ràpidament dins segon, perquè, com vostè sap, jo signo 1383 01:05:10,280 --> 01:05:11,420 els meus correus electrònics d'una manera determinada. 1384 01:05:11,420 --> 01:05:14,200 I si ho faig manualment, en gran banda, 15 anys més tard, perquè era 1385 01:05:14,200 --> 01:05:15,080 traumatitzat per això. 1386 01:05:15,080 --> 01:05:16,960 No tinc una signatura en el meu correu electrònic ara. 1387 01:05:16,960 --> 01:05:20,440 Però en 1995, només tenia un sig, una signatura al meu correu electrònic. 1388 01:05:20,440 --> 01:05:24,630 Així que hi havia una nota que deia: Estimat Grup de Proctor, de consentir la meva opinió 1389 01:05:24,630 --> 01:05:31,240 i estic d'acord amb David, i el van signar així, la línia nova, nova línia, DJM. 1390 01:05:31,240 --> 01:05:36,220 >> Així que no facis això o, en general, prendre avantatge d'aquesta tècnica. 1391 01:05:36,220 --> 01:05:39,950 No obstant això, en fer un lloc web, com per el seu projecte final, en realitzar una 1392 01:05:39,950 --> 01:05:43,460 lloc web per a alguna cosa empresarial, és així com, de manera pragmàtica, pot 1393 01:05:43,460 --> 01:05:47,000 aprofitar altres serveis a Internet com el correu i després en realitat 1394 01:05:47,000 --> 01:05:49,440 enviar coses mitjançant codi. 1395 01:05:49,440 --> 01:05:51,240 >> Com podem millorar això? 1396 01:05:51,240 --> 01:05:54,370 Bé, primer anem a fer un ràpid recorregut per algunes de les coses que veuràs, 1397 01:05:54,370 --> 01:05:56,170 i després fer una ullada a un parell d'exemples. 1398 01:05:56,170 --> 01:05:59,500 Així que un, per tranquil · litzar, perquè estem volant a través de PHP. 1399 01:05:59,500 --> 01:06:02,470 I jo sé, en algun moment, haurà per realment començar a escriure això si 1400 01:06:02,470 --> 01:06:03,460 no ho ha fet. 1401 01:06:03,460 --> 01:06:06,220 Adonar-se que, un, el principal és una espècie de la finestra amb PHP. 1402 01:06:06,220 --> 01:06:09,420 Si voleu escriure codi que es executat, només comença a escriure en 1403 01:06:09,420 --> 01:06:13,970 un arxiu anomenat. php sempre que vostè té el suport obert 1404 01:06:13,970 --> 01:06:15,620 pregunta Suprimir etiqueta PHP. 1405 01:06:15,620 --> 01:06:19,730 >> Però noti aquestes són condicions en php. 1406 01:06:19,730 --> 01:06:22,610 Nota: això és exactament la mateixa diapositiva vam tenir en una setmana quan vam tenir 1407 01:06:22,610 --> 01:06:25,670 condicions en C. Condicions en PHP és estructural i 1408 01:06:25,670 --> 01:06:27,140 sintàcticament el mateix. 1409 01:06:27,140 --> 01:06:30,290 L'única diferència real és que si tens les variables involucrades, té els 1410 01:06:30,290 --> 01:06:31,600 signes de dòlar. 1411 01:06:31,600 --> 01:06:33,970 >> Mentrestant, les expressions booleanes un aspecte com aquest per 1412 01:06:33,970 --> 01:06:35,725 o-ing o-ing i junts. 1413 01:06:35,725 --> 01:06:37,780 Interruptors veuen exactament el mateix. 1414 01:06:37,780 --> 01:06:42,180 El millor en PHP, mentre que en C, interruptors han de ser en casos 1415 01:06:42,180 --> 01:06:46,380 primitius com enters o carbons, en PHP seus estats de compte de casos en realitat pot ser 1416 01:06:46,380 --> 01:06:48,430 en unes cadenes senceres, que és realment bonic. 1417 01:06:48,430 --> 01:06:49,480 Li estalvia temps. 1418 01:06:49,480 --> 01:06:50,820 No es pot fer això en C. 1419 01:06:50,820 --> 01:06:52,880 >> Aquí hi ha un bucle en PHP. 1420 01:06:52,880 --> 01:06:53,740 És idèntica. 1421 01:06:53,740 --> 01:06:55,400 Podria tenir alguns signes de dòlar per a les variables. 1422 01:06:55,400 --> 01:06:57,530 No cal esmentar que alguna cosa és un int. 1423 01:06:57,530 --> 01:07:00,580 Vostè acaba de declarar amb un signe de dòlar i el nom de la variable. 1424 01:07:00,580 --> 01:07:01,430 No obstant això, un bucle for és la mateixa. 1425 01:07:01,430 --> 01:07:02,760 Un bucle while és la mateixa. 1426 01:07:02,760 --> 01:07:04,870 Un bucle do while és la mateixa. 1427 01:07:04,870 --> 01:07:06,170 >> Això és una mica diferent. 1428 01:07:06,170 --> 01:07:12,410 Així que amb PHP, amb una gran varietat, pot Declarar estàticament una matriu, com en C, 1429 01:07:12,410 --> 01:07:14,420 però utilitza claudàtors. 1430 01:07:14,420 --> 01:07:17,060 En C, s'utilitza claus, si fins i tot sabia. 1431 01:07:17,060 --> 01:07:20,910 Però això és en realitat molt comú en PHP per declarar una matriu, en aquest cas, 1432 01:07:20,910 --> 01:07:23,640 dels nombres, i cridar a la un nombre variable. 1433 01:07:23,640 --> 01:07:25,300 >> Les mateixes variables es veuen així. 1434 01:07:25,300 --> 01:07:28,710 Aquí està una cadena, citant Fi de la cita "hola món. "Vostè podria tenir una barra invertida n. 1435 01:07:28,710 --> 01:07:30,950 Jo simplement no ho faig en aquest cas. 1436 01:07:30,950 --> 01:07:32,640 >> Ara bé, això és una construcció interessant. 1437 01:07:32,640 --> 01:07:33,700 C no té això. 1438 01:07:33,700 --> 01:07:34,700 Però això és molt servicial. 1439 01:07:34,700 --> 01:07:38,160 I veuràs això en conjunt P 7 especificacions - una per a cada construcció. 1440 01:07:38,160 --> 01:07:41,800 Per reiterar sobre tota la elements d'una matriu, que no tenen 1441 01:07:41,800 --> 01:07:45,500 per fer front a $ i i $ n, i + +, i tot això. 1442 01:07:45,500 --> 01:07:47,640 Es pot dir, literalment, en PHP, aquest - 1443 01:07:47,640 --> 01:07:51,890 per a cada un dels números com el nombre, per la Estic assumint que $ xifres 1444 01:07:51,890 --> 01:07:53,380 és un conjunt de nombres. 1445 01:07:53,380 --> 01:07:56,460 I quan dic que per a cada nombre com el nombre, això va a 1446 01:07:56,460 --> 01:08:00,505 automàticament, ja que el meu bucle s'executa, actualitzar, en cada iteració, el valor 1447 01:08:00,505 --> 01:08:03,260 dins del nombre signe de dòlar - 1448 01:08:03,260 --> 01:08:07,730 una altra vegada, i una altra, i una altra caminant per a mi sobre aquesta matriu. 1449 01:08:07,730 --> 01:08:08,735 Pel que només ens salva codi. 1450 01:08:08,735 --> 01:08:12,250 No mengi, no + + 's, no is, n no ho és, és simplement agradable. 1451 01:08:12,250 --> 01:08:13,700 >> Però PHP també té aquesta. 1452 01:08:13,700 --> 01:08:14,830 I això és molt poderós. 1453 01:08:14,830 --> 01:08:17,410 I farem servir això, les mans endavant, en conjunt P 7. 1454 01:08:17,410 --> 01:08:21,990 I array associatiu també es declara amb claudàtors. 1455 01:08:21,990 --> 01:08:23,569 Però fixa't en la sintaxi ara. 1456 01:08:23,569 --> 01:08:26,880 És una reminiscència del que vam veure amb print_r fa un moment. 1457 01:08:26,880 --> 01:08:31,810 Quantes claus, com una petita prova de seny, no aquesta matriu semblen tenir. 1458 01:08:31,810 --> 01:08:32,689 >> Per tant, té dues. 1459 01:08:32,689 --> 01:08:33,830 I jo dic a això una matriu. 1460 01:08:33,830 --> 01:08:36,760 Però si ajuda, es pot pensar d'aquesta taula hash, o com 1461 01:08:36,760 --> 01:08:37,930 una matriu associativa. 1462 01:08:37,930 --> 01:08:39,580 Però és només una diferent tipus de matriu. 1463 01:08:39,580 --> 01:08:41,080 I de nou, diferents idiomes tenir aquests. 1464 01:08:41,080 --> 01:08:43,810 Anem a veure alguna cosa semblant en JavaScript també. 1465 01:08:43,810 --> 01:08:44,609 Hi ha dues claus. 1466 01:08:44,609 --> 01:08:48,390 Un d'ells és entre cometes, "símbol", és citar a fi de cita "preu". I aquestes claus 1467 01:08:48,390 --> 01:08:49,250 cada un té un valor. 1468 01:08:49,250 --> 01:08:54,420 En aquest cas el valor del símbol és FB, per Valor de Facebook, i el preu és de 49, 26, 1469 01:08:54,420 --> 01:08:56,899 que va ser l'acció de Facebook Preu a partir d'aquest matí. 1470 01:08:56,899 --> 01:09:00,170 >> Llavors, què és útil una matriu associativa. 1471 01:09:00,170 --> 01:09:02,620 Podria haver tingut una forma numèrica matriu indexada amb només 1472 01:09:02,620 --> 01:09:04,120 claudàtors simples. 1473 01:09:04,120 --> 01:09:09,380 I jo podria haver tingut signe de dòlar pressupost equival precisament això. 1474 01:09:09,380 --> 01:09:10,529 Déjame fer-ho realment. 1475 01:09:10,529 --> 01:09:14,796 Suposem que en comptes s'acaba de declarar aquesta sèrie així. 1476 01:09:14,796 --> 01:09:17,590 Això és perfectament vàlid, sintàcticament. 1477 01:09:17,590 --> 01:09:20,569 No perd cap informació, per se. 1478 01:09:20,569 --> 01:09:24,760 Encara veig que el símbol és fb, i que el preu és de 49, 26. 1479 01:09:24,760 --> 01:09:28,939 Per què són associatives matrius de pes? 1480 01:09:28,939 --> 01:09:30,189 >> AUDIÈNCIA: No ha de recordar on posar coses. 1481 01:09:30,189 --> 01:09:32,050 1482 01:09:32,050 --> 01:09:34,130 >> ALTAVEU 1: Exactament, no té recordar on posar coses. 1483 01:09:34,130 --> 01:09:37,670 Vostè no ha de recordar arbitràriament que és símbol de l'acció en el suport zero, 1484 01:09:37,670 --> 01:09:41,479 i el preu de les accions està en un suport, el que és particularment perillós si 1485 01:09:41,479 --> 01:09:43,220 canviar les coses, amb el temps. 1486 01:09:43,220 --> 01:09:46,399 És molt més agradable per associar el que anem a trucar a les metadades 1487 01:09:46,399 --> 01:09:48,340 amb les seves dades reals. 1488 01:09:48,340 --> 01:09:52,399 Jo diria que el que realment importa per aquí és fb i 49, 26. 1489 01:09:52,399 --> 01:09:57,020 El símbol i el preu és de metadades que descriu les dades que 1490 01:09:57,020 --> 01:09:58,180 realment importa. 1491 01:09:58,180 --> 01:10:01,910 Però això és només tant més fàcils d'accedir. 1492 01:10:01,910 --> 01:10:04,090 >> Ara, com un part el que és el preu que paguem? 1493 01:10:04,090 --> 01:10:06,600 Hem estat fent això en CS50 de setmana. 1494 01:10:06,600 --> 01:10:10,740 Aquesta característica ha d'arribar a algun cost. 1495 01:10:10,740 --> 01:10:11,350 Memòria. 1496 01:10:11,350 --> 01:10:13,830 Així que no només l'emmagatzematge de 32 bits nombre enter, per exemple. 1497 01:10:13,830 --> 01:10:17,980 Vostè està emmagatzemant símbol / 0, probablement. 1498 01:10:17,980 --> 01:10:19,160 Així que vostè està utilitzant més memòria. 1499 01:10:19,160 --> 01:10:22,540 >> ¿I quin és el rendiment de buscant alguna cosa en un 1500 01:10:22,540 --> 01:10:24,822 matriu associativa, probablement? 1501 01:10:24,822 --> 01:10:26,590 És probable que sigui més lent. 1502 01:10:26,590 --> 01:10:29,670 Accés aleatori és agradable, especialment quan es pot fer una cerca binària. 1503 01:10:29,670 --> 01:10:33,380 Però si en realitat estàs ara sense mirar per als números, però per a les cadenes, aquesta 1504 01:10:33,380 --> 01:10:37,630 realment s'aplica sota de la campana, probablement com una taula hash, on 1505 01:10:37,630 --> 01:10:42,950 utilitza ja sigui una taula hash amb encadenament separat. 1506 01:10:42,950 --> 01:10:46,040 O utilitzeu una oportunitat per realment emmagatzemar els valors. 1507 01:10:46,040 --> 01:10:50,550 Així que potser vostè pot fer a temps constant, però vostè encara ha de mirar a S-I-M-B-O-L, 1508 01:10:50,550 --> 01:10:54,510 potencialment, en lloc de només 32 bits per buscar alguna cosa. 1509 01:10:54,510 --> 01:10:58,430 Així que de nou, les mateixes idees que ve còpies que es repeteixi en aquest context. 1510 01:10:58,430 --> 01:11:02,120 >> Però, de nou, PHP ara té uns magnífics globals que, resulta, són 1511 01:11:02,120 --> 01:11:02,900 matrius associatives. 1512 01:11:02,900 --> 01:11:05,590 Vam veure un fa un moment, $ _POST. 1513 01:11:05,590 --> 01:11:08,400 I aquesta superpotència mundial té les claus i valors. 1514 01:11:08,400 --> 01:11:10,550 En concret, les tecles alinear-se amb què? 1515 01:11:10,550 --> 01:11:14,520 D'on les claus a $ _POST vénen? 1516 01:11:14,520 --> 01:11:15,380 Només per recapitular? 1517 01:11:15,380 --> 01:11:16,480 >> AUDIÈNCIA: Nom. 1518 01:11:16,480 --> 01:11:17,900 >> ALTAVEU 1: Nom, on? 1519 01:11:17,900 --> 01:11:19,860 >> AUDIÈNCIA: [inaudible] 1520 01:11:19,860 --> 01:11:20,750 >> ALTAVEU 1: nom és l'atribut. 1521 01:11:20,750 --> 01:11:23,480 Bé per on, a on van ser originalment ve? 1522 01:11:23,480 --> 01:11:24,120 La forma. 1523 01:11:24,120 --> 01:11:30,140 Així que si una pàgina HTML amb una etiqueta de formulari, dins de les quals hi ha algunes entrades, com 1524 01:11:30,140 --> 01:11:34,760 caselles de verificació, quadres de text, desplegables menús, cadascun dels quals té un nom, els 1525 01:11:34,760 --> 01:11:40,260 noms acaben com a claus en $ _POST, i, francament, per al cas, $ _GET. 1526 01:11:40,260 --> 01:11:42,130 Si el mètode és GET, la mateixa idea. 1527 01:11:42,130 --> 01:11:43,830 És només en una diferent superpotència mundial. 1528 01:11:43,830 --> 01:11:47,620 I els valors, per descomptat, vénen de tot el que l'usuari va escriure en al seu o 1529 01:11:47,620 --> 01:11:48,890 el seu navegador. 1530 01:11:48,890 --> 01:11:49,830 >> Però hi ha alguns altres. 1531 01:11:49,830 --> 01:11:52,140 Hi galetes, que anem a tornar a temps. 1532 01:11:52,140 --> 01:11:56,050 Però aquestes són les coses que vostè sap utilitza la web per a un determinat bé o malament. 1533 01:11:56,050 --> 01:11:57,420 Però anem a tornar a això. 1534 01:11:57,420 --> 01:12:01,720 Server i sessió, i els dos tenir alguna utilitat especial. 1535 01:12:01,720 --> 01:12:03,940 >> Però donem una ullada a això. 1536 01:12:03,940 --> 01:12:13,330 Déjame anar per davant i obrir un exemple anomenada mvc0.php Així MVC 1537 01:12:13,330 --> 01:12:14,900 significa el següent. 1538 01:12:14,900 --> 01:12:19,390 I et presentem aquesta abans del típic, de veritat, per aconseguir que el disseny 1539 01:12:19,390 --> 01:12:22,180 Butlletí de problemes 7, així com els projectes finals, en una espècie d'una indústria 1540 01:12:22,180 --> 01:12:23,670 forma estàndard i forma neta. 1541 01:12:23,670 --> 01:12:24,820 És un bon disseny. 1542 01:12:24,820 --> 01:12:29,090 >> Així que estàs a punt de veure, i vostè experiència, en conjunt P 7, paradigma, tipus 1543 01:12:29,090 --> 01:12:32,260 d'una mentalitat de programació, que es veu una mica d'alguna cosa com això. 1544 01:12:32,260 --> 01:12:35,570 M per al Model, C per al controlador, V per a Vista. 1545 01:12:35,570 --> 01:12:39,690 Llarga història curta, MVC és només una mica d'una metodologia, una forma de fer 1546 01:12:39,690 --> 01:12:43,360 llocs web, en particular, mitjançant el qual es posar tot la seva frase estúpida - 1547 01:12:43,360 --> 01:12:44,970 lògica de negoci - 1548 01:12:44,970 --> 01:12:49,710 tota la seva propietat intel · lectual en el que s'anomena un controlador, un arxiu 1549 01:12:49,710 --> 01:12:54,840 com index.php, o anem a veure, quote.php, o buy.php. 1550 01:12:54,840 --> 01:12:59,570 >> En el context del conjunt de problemes 7, el models típicament contenen les seves dades, 1551 01:12:59,570 --> 01:13:03,860 tot el relacionat amb una base de dades, com veurem finalment veure, i els seus punts de vista 1552 01:13:03,860 --> 01:13:07,510 contenir l'estètica de la seva lloc, l'HTML, el CSS. 1553 01:13:07,510 --> 01:13:10,420 Així que ja vam veure en C una mica bits utilitzant arxius. h. 1554 01:13:10,420 --> 01:13:15,010 Realment vam veure fa un moment amb CSS, per factorització l'estilització CSS 1555 01:13:15,010 --> 01:13:16,520 coses fora del nostre HTML. 1556 01:13:16,520 --> 01:13:20,730 >> Així MVC és en realitat sobre la loteria línies en la sorra i dir, la 1557 01:13:20,730 --> 01:13:25,400 interessant codi de programació per a la seva web pertany al que anomenem la 1558 01:13:25,400 --> 01:13:26,400 controlador. 1559 01:13:26,400 --> 01:13:29,280 Temes relacionats amb la base de dades general acaba en un model. 1560 01:13:29,280 --> 01:13:33,070 Però ja veuràs, en el Butlletí de problemes 7, que fusionar C i M que sigui senzill. 1561 01:13:33,070 --> 01:13:37,630 Però la visió és que tots els de la seva HTML i l'estètica solen anar. 1562 01:13:37,630 --> 01:13:39,160 >> Llavors, què significa això en termes reals? 1563 01:13:39,160 --> 01:13:45,980 Bé, deixa anar al nostre MVC directori de la següent manera. 1564 01:13:45,980 --> 01:13:48,880 I veuràs més d'aquests recorregut a través de l'especificació. 1565 01:13:48,880 --> 01:13:53,200 Així que en mvc0, afirmo que es tracta, igual que, Versió 0 dels llocs web de CS50. 1566 01:13:53,200 --> 01:13:56,670 >> Tot el que tenim és una mica d'HTML, com una etiqueta h1 gran, pel que sembla. 1567 01:13:56,670 --> 01:13:57,800 I llavors una llista amb vinyetes. 1568 01:13:57,800 --> 01:13:59,860 Mai he vist una llista amb vinyetes abans, però no és gran cosa. 1569 01:13:59,860 --> 01:14:01,590 Anem ràpidament mirar el codi font. 1570 01:14:01,590 --> 01:14:06,610 Resulta que una llista no ordenada amb bales és ul suport obert amb una o 1571 01:14:06,610 --> 01:14:09,065 més elements de la llista, Li. 1572 01:14:09,065 --> 01:14:10,650 Així que notar aquí és una etiqueta d'àncora. 1573 01:14:10,650 --> 01:14:12,130 El vam veure fa un moment. 1574 01:14:12,130 --> 01:14:13,810 >> Així és com he implementat aquesta pàgina. 1575 01:14:13,810 --> 01:14:18,460 Tinc dos enllaços, dos elements de la llista, un ul de llista desordenada, i el final 1576 01:14:18,460 --> 01:14:22,700 resultat, estèticament, aquest és molt pàgina web bonica, versió 0 aquí. 1577 01:14:22,700 --> 01:14:26,840 Però l'interessant és com aquesta s'aplica sota de la caputxa. 1578 01:14:26,840 --> 01:14:33,590 >> Déjame entrar gedit i obro aquest primer exemple de pintar un quadre. 1579 01:14:33,590 --> 01:14:37,070 I anem a veure el que és imperfecte, potencialment, aquí. 1580 01:14:37,070 --> 01:14:43,260 Ara si vaig a localhost, públic, MVC, observi alguns arxius. 1581 01:14:43,260 --> 01:14:45,780 Vaig a trucar a aquests, per a la Actualment, tots els controladors. 1582 01:14:45,780 --> 01:14:48,640 Però això és una mica d'un abús, perquè veuràs que tot està barrejats 1583 01:14:48,640 --> 01:14:49,620 dins d'ells. 1584 01:14:49,620 --> 01:14:52,330 >> I m'ho dius a mi anar dins index.php. 1585 01:14:52,330 --> 01:14:54,700 I veiem, literalment, el mateix HTML. 1586 01:14:54,700 --> 01:14:57,970 Així que tot i que l'arxiu acaba en . Php, no significa que hagi de 1587 01:14:57,970 --> 01:14:59,500 tenir qualsevol codi PHP. 1588 01:14:59,500 --> 01:15:02,290 Només pot ser HTML pur, encara que això és una mica tonto. 1589 01:15:02,290 --> 01:15:07,650 Però cal notar que no hi ha suport de PHP obert etiquetar, a excepció d'això, que, francament, 1590 01:15:07,650 --> 01:15:09,160 hi és per servir com un comentari. 1591 01:15:09,160 --> 01:15:12,080 Però això no és funcionalment àdhuc que interessant. 1592 01:15:12,080 --> 01:15:12,960 >> Però fixa't en això. 1593 01:15:12,960 --> 01:15:15,400 L'interessant ara és què canvis en aquesta pàgina. 1594 01:15:15,400 --> 01:15:16,650 Permetin-me clic Conferències. 1595 01:15:16,650 --> 01:15:18,560 I noti la URL està a punt de canviar. 1596 01:15:18,560 --> 01:15:20,930 Ara estic a lectures.php. 1597 01:15:20,930 --> 01:15:22,630 Permetin-me clic zero. 1598 01:15:22,630 --> 01:15:27,200 Ara estic a week0.php I ara deixo a obrir aquests arxius en gedit. 1599 01:15:27,200 --> 01:15:30,120 No només índex, però m'obro conferències. 1600 01:15:30,120 --> 01:15:33,900 I m'ho dius desfer-me dels comentaris per centrar-se en aquesta part només. 1601 01:15:33,900 --> 01:15:37,680 >> I ara m'ho dius obro un més, week0.php, rebutgi els comentaris, 1602 01:15:37,680 --> 01:15:39,910 només per netejar això. 1603 01:15:39,910 --> 01:15:41,720 I ara observa el següent. 1604 01:15:41,720 --> 01:15:47,340 Pensant realment tipus de compte sobre disseny, i farem que la línia 1605 01:15:47,340 --> 01:15:52,013 pel mateix, el que es podria fer millor aquí, què et sembla? 1606 01:15:52,013 --> 01:15:56,450 1607 01:15:56,450 --> 01:15:57,780 >> Com em faig una setmana un? 1608 01:15:57,780 --> 01:15:58,480 Què tal això. 1609 01:15:58,480 --> 01:16:00,450 Així que aquesta és la forma en que vaig fer la setmana un. 1610 01:16:00,450 --> 01:16:08,290 Em vaig acostar a Arxiu, Nou, Enganxa, Desa, week1.php, i després em vaig anar d'aquí. 1611 01:16:08,290 --> 01:16:09,875 I vaig canviar un - 1612 01:16:09,875 --> 01:16:11,646 el que era això, un a divendres. 1613 01:16:11,646 --> 01:16:14,430 1614 01:16:14,430 --> 01:16:15,810 He canviat els zeros a un. 1615 01:16:15,810 --> 01:16:17,150 He canviat això a un. 1616 01:16:17,150 --> 01:16:20,350 >> OK, així que ara mirar els meus arxius. 1617 01:16:20,350 --> 01:16:22,100 Què es podria fer d'una altra manera? 1618 01:16:22,100 --> 01:16:25,310 On és l'oportunitat, potser? 1619 01:16:25,310 --> 01:16:28,330 Així que hi ha l'oportunitat de començar factoring això a terme. 1620 01:16:28,330 --> 01:16:32,950 Deixeu que m'obro, com un spoiler, per que veurà en el conjunt P 7. 1621 01:16:32,950 --> 01:16:38,750 Si obro ara, index.php en la versió cinc això, es veu així 1622 01:16:38,750 --> 01:16:40,730 més críptic, cal reconèixer-ho. 1623 01:16:40,730 --> 01:16:43,710 >> Però, ara, és el que jo anomeno una controlador que està controlant la 1624 01:16:43,710 --> 01:16:44,770 lògica de la meva pàgina. 1625 01:16:44,770 --> 01:16:48,510 I vostè pot tipus de reconstruir, intuïtivament, potser, el que està passant. 1626 01:16:48,510 --> 01:16:50,630 A la primera línia, és una mica críptic. 1627 01:16:50,630 --> 01:16:54,040 Però noto que estic exigint, igual que amb aguda inclouen, un arxiu anomenat 1628 01:16:54,040 --> 01:16:55,930 helpers.php. 1629 01:16:55,930 --> 01:16:59,980 I després et truco, segons sembla, una funció, anomenada render, passant 1630 01:16:59,980 --> 01:17:00,850 dos arguments. 1631 01:17:00,850 --> 01:17:02,440 >> Un d'ells és cita cometes, encapçalat. 1632 01:17:02,440 --> 01:17:04,800 I l'altra és, quin tipus de tipus de dades és la següent, basat en 1633 01:17:04,800 --> 01:17:07,180 en la nostra sintaxi anterior? 1634 01:17:07,180 --> 01:17:08,160 És un conjunt associat. 1635 01:17:08,160 --> 01:17:11,730 En concret, s'està passant al títol amb algunes metadades que recorda 1636 01:17:11,730 --> 01:17:13,430 jo el que és i el seu valor. 1637 01:17:13,430 --> 01:17:16,340 Llavors veig un disc codificat ul, pel que alguns HTML pur. 1638 01:17:16,340 --> 01:17:20,020 Però estic de tornada en la manera PHP cridar a una funció de render. 1639 01:17:20,020 --> 01:17:24,390 Així que fins i tot si vostè mai ha usat HTML o PHP abans, i encara que això sembla 1640 01:17:24,390 --> 01:17:27,480 més por, per què és això probablement millor disseny? 1641 01:17:27,480 --> 01:17:31,310 Què és millor en això, sobre la base d'inferència? 1642 01:17:31,310 --> 01:17:32,130 >> AUDIÈNCIA: [inaudible] 1643 01:17:32,130 --> 01:17:35,750 >> ALTAVEU 1: Menys redundant en aquest no hi ha cap etiqueta HTML més, no més 1644 01:17:35,750 --> 01:17:38,410 cap etiqueta, no més cos de l'etiqueta en cada arxiu maleïda. 1645 01:17:38,410 --> 01:17:41,860 En canvi, tinc un factor fora de la comuns i probablement posar 1646 01:17:41,860 --> 01:17:45,150 en un arxiu d'alguna manera relacionats a un col · lector. 1647 01:17:45,150 --> 01:17:48,500 I el mateix per al tancament del cos etiqueta, l'etiqueta de tancament HTML. 1648 01:17:48,500 --> 01:17:52,165 Això és probablement per aquí dins alguna part del peu de pàgina. 1649 01:17:52,165 --> 01:17:57,050 I veuràs, en Butlletí de problemes 7, un petit recorregut a través d'aquest. 1650 01:17:57,050 --> 01:17:58,070 >> Llavors, què ens espera? 1651 01:17:58,070 --> 01:18:03,390 L'únic que no tenim la capacitat però, per és realment el d'emmagatzemar dades. 1652 01:18:03,390 --> 01:18:06,110 I així ho anem a començar a veure Dimecres, per exemple, és que el seu 1653 01:18:06,110 --> 01:18:08,450 vell amic Excel, o números, li permet emmagatzemar gran quantitat de 1654 01:18:08,450 --> 01:18:10,060 les dades en files i columnes. 1655 01:18:10,060 --> 01:18:12,570 Resulta que vostè pot fer que en el que és anomenat una base de dades, mitjançant programació. 1656 01:18:12,570 --> 01:18:16,620 maníac i resulta que, després d'això, serem capaços d'emmagatzemar coses com 1657 01:18:16,620 --> 01:18:20,550 això, que vostè veurà de nou en conjunt P 7, un munt de noms d'usuari i 1658 01:18:20,550 --> 01:18:23,690 contrasenyes, l'últim dels quals són realitat xifrada, igual que 1659 01:18:23,690 --> 01:18:25,550 estaven en l'edició del conjunt P 2 pirates cibernètics. 1660 01:18:25,550 --> 01:18:29,600 I amb el temps, podràs posar en pràctica aquest, seu propi lloc web eTrade-com la 1661 01:18:29,600 --> 01:18:32,220 s'implementa en conjunt CS50 finances. 1662 01:18:32,220 --> 01:18:36,000 >> Finalment, ja que es va allotjar aquí tan tard avui en dia, si tornes a aquesta part 1663 01:18:36,000 --> 01:18:41,120 del campus, a les 4.00 hores d'avui, anem a li donarà no només consells, en els SCES 1664 01:18:41,120 --> 01:18:44,200 Assessorament Fira, a les 4:00 PM a la Maxwell-Dworkin, et donarem alguns 1665 01:18:44,200 --> 01:18:47,470 Somni Americone, Cherry Garcia, Fudge Brownie de xocolata, Xocolata 1666 01:18:47,470 --> 01:18:50,840 Pasta de la galeta de l'encenall, i, quan Google Chunky Monkey, obtindrà això. 1667 01:18:50,840 --> 01:18:53,620 Així que tots els que l'espera a les 4:00 PM de Maxwell-Dworkin. 1668 01:18:53,620 --> 01:18:56,736 Ens veiem dimecres també. 1669 01:18:56,736 --> 01:18:59,960 >> ALTAVEU 2: En la següent CS50, RJ dorm polz 1670 01:18:59,960 --> 01:19:03,656 1671 01:19:03,656 --> 01:19:04,906 >> RJ: La meva secció! 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