1 00:00:00,000 --> 00:00:11,470 2 00:00:11,470 --> 00:00:12,764 >> SPEAKER 1: Всички, нали Добре дошъл. 3 00:00:12,764 --> 00:00:14,140 Това е CS50. 4 00:00:14,140 --> 00:00:16,800 И това е началото на седмица девет. 5 00:00:16,800 --> 00:00:19,960 И това е началото на останалата част от времето си в CS50, в която ние 6 00:00:19,960 --> 00:00:23,170 преход сега, най-накрая, в интернет аспект на курса, където ще 7 00:00:23,170 --> 00:00:26,200 откриете, че много от основите, че ние сме били износител в продължение на седмици 8 00:00:26,200 --> 00:00:29,270 дойдем отново, за да посетите, или преследва, нас. 9 00:00:29,270 --> 00:00:33,440 Но сега, ще откриете, че това е порядък по-лесно да се 10 00:00:33,440 --> 00:00:36,540 изпълни определени задачи и решаване на някои проблеми - 11 00:00:36,540 --> 00:00:41,050 толкова много, така че дори и да си мислите, определени групи проблемни бяха забавно в тяхната 12 00:00:41,050 --> 00:00:44,200 собствен начин, мисля, че ще намерите че р определила 7, стр. 8 зададете, и след това, 13 00:00:44,200 --> 00:00:47,990 в крайна сметка, крайният проект ще бъде още по-приятна, защото ще 14 00:00:47,990 --> 00:00:51,830 Смятат, че ние започваме да приемаме за даденост Сега нещата като управление на паметта, и 15 00:00:51,830 --> 00:00:54,190 указатели, и какво се случва на под предния капак. 16 00:00:54,190 --> 00:00:57,310 И отново, тематични, през целия семестър е това наслояване 17 00:00:57,310 --> 00:00:58,030 и наслояване. 18 00:00:58,030 --> 00:01:00,530 И сега сме някак нагоре тук, стои на 19 00:01:00,530 --> 00:01:01,930 раменете на седмица миналото. 20 00:01:01,930 --> 00:01:05,360 >> Сега, припомнят от последния път, че ние говорихме за това как интернет работи. 21 00:01:05,360 --> 00:01:08,120 И това е може би опростяване, но не забравяйте, че 22 00:01:08,120 --> 00:01:12,960 всеки компютър в света е с IP отговори, въпреки че е малко на 23 00:01:12,960 --> 00:01:14,570 опростяване все още. 24 00:01:14,570 --> 00:01:18,180 И тези адреси се използват за еднозначно идентифицират машини, така че 25 00:01:18,180 --> 00:01:22,010 Когато изпращате информация или пакети, така да се каже, те могат да имат произход 26 00:01:22,010 --> 00:01:24,000 адрес и адреса на дестинацията. 27 00:01:24,000 --> 00:01:27,830 И същите тези адреси могат да бъдат използвани както за добро, така и за зло, 28 00:01:27,830 --> 00:01:29,270 да ви проследят, например. 29 00:01:29,270 --> 00:01:32,200 В действителност, всеки един от вас с лаптоп отвори сега, или телефона си 30 00:01:32,200 --> 00:01:35,070 джоба, има IP адрес на мрежа на Харвард. 31 00:01:35,070 --> 00:01:39,120 И това не е всичко, което трудно да се корелират, че за това кой и къде 32 00:01:39,120 --> 00:01:40,180 са тези дни. 33 00:01:40,180 --> 00:01:42,090 Но повече за това може би в бъдеще. 34 00:01:42,090 --> 00:01:46,510 >> Сега реших да върна някои спомени от [? подобри?] и ще ви даде 35 00:01:46,510 --> 00:01:49,360 още един клип от вас шоу може да откриете запознати. 36 00:01:49,360 --> 00:01:52,710 Ако можехме да намаляване на осветлението само за няколко секунди. 37 00:01:52,710 --> 00:01:53,960 Шоуто Numb3rs. 38 00:01:53,960 --> 00:01:57,510 39 00:01:57,510 --> 00:02:00,540 >> SPEAKER 2: Това е 32-битова IPP4 адрес. 40 00:02:00,540 --> 00:02:01,610 >> SPEAKER 3: IPP, както и в интернет? 41 00:02:01,610 --> 00:02:02,968 >> SPEAKER 2: частна мрежа. 42 00:02:02,968 --> 00:02:04,960 За частна мрежа Амита. 43 00:02:04,960 --> 00:02:16,930 44 00:02:16,930 --> 00:02:19,602 Тя е толкова невероятно. 45 00:02:19,602 --> 00:02:21,030 >> SPEAKER 3: Хайде, Чарли. 46 00:02:21,030 --> 00:02:21,490 >> SPEAKER 2: Това е. 47 00:02:21,490 --> 00:02:22,470 A адрес огледало IP. 48 00:02:22,470 --> 00:02:27,680 Тя ни позволи да гледате това, което тя прави в реално време. 49 00:02:27,680 --> 00:02:30,930 >> SPEAKER 1: Добре, така, че няколко неща наред с тази картина. 50 00:02:30,930 --> 00:02:32,920 Така една страна, и това е приемливо, това е действително 51 00:02:32,920 --> 00:02:34,400 не е валиден адрес IP. 52 00:02:34,400 --> 00:02:38,190 A валиден имейл адрес IP трябва да е номера на формата w.x.y.z, където всеки един от 53 00:02:38,190 --> 00:02:40,000 тези писма е от 0 до 255. 54 00:02:40,000 --> 00:02:42,330 Но това е добре, защото точно като филми, когато те се фалшиви телефонни номера, 55 00:02:42,330 --> 00:02:43,520 те фалшив IP адреси. 56 00:02:43,520 --> 00:02:45,230 Вие всъщност не удари реални сървъри. 57 00:02:45,230 --> 00:02:46,760 >> Но имате ли нещо против, това е браузър. 58 00:02:46,760 --> 00:02:50,760 И браузъри не започне извеждане компютърен код, подобен на този. 59 00:02:50,760 --> 00:02:54,230 И ако погледнем малко по-дълбоко, забележите че езикът, че те виждаме 60 00:02:54,230 --> 00:02:57,040 на екрана е наречен език Цел С, който е на езика, 61 00:02:57,040 --> 00:02:59,520 iPhone приложения, които са дадени, особено тези, включващи 62 00:02:59,520 --> 00:03:03,540 пастели, както можете да видите от изходния код тук. 63 00:03:03,540 --> 00:03:06,600 64 00:03:06,600 --> 00:03:07,560 >> Добре, че това е смешно. 65 00:03:07,560 --> 00:03:12,240 Така че този фрагмент от кода няма абсолютно няма нищо общо с каквото и да 66 00:03:12,240 --> 00:03:13,940 конкретен епизод става дума. 67 00:03:13,940 --> 00:03:17,590 Така че шегата е вид на хора като за тази даденост. 68 00:03:17,590 --> 00:03:20,220 Но това не е всичко, което беше трудно да се тези технически подробности правилните. 69 00:03:20,220 --> 00:03:21,980 И аз ще ви насърчи. 70 00:03:21,980 --> 00:03:25,530 И действително, 50 може много добре развалят много телевизионни предавания и филми, или можете 71 00:03:25,530 --> 00:03:27,320 защото вие ще откриете, че това е просто не е възможно това, което те са 72 00:03:27,320 --> 00:03:28,630 правене на екрана. 73 00:03:28,630 --> 00:03:31,750 Но наистина, това е кода, който може да я видите в iPhone приложение 74 00:03:31,750 --> 00:03:33,640 или Mac OS приложение. 75 00:03:33,640 --> 00:03:35,685 Той има нищо общо със сигурността. 76 00:03:35,685 --> 00:03:38,610 Така че да държи под око за повече такива забавни неща като това. 77 00:03:38,610 --> 00:03:42,720 >> Но днес ние започваме да се потопите в наистина дълбоко към цял набор от езици. 78 00:03:42,720 --> 00:03:45,410 Един наистина, един от общите храна за вкъщи тази част на 79 00:03:45,410 --> 00:03:51,815 Разбира се не е да се научите как да програмирате в PHP не, за да научите SQL сам по себе си не 80 00:03:51,815 --> 00:03:58,100 , за да научите JavaScript сами по себе си, а по-скоро да се научи как да преподават 81 00:03:58,100 --> 00:04:02,030 себе си нови езици, защото, наистина, ние започваме да се вземат сега 82 00:04:02,030 --> 00:04:06,020 помощни колела на разстояние, така че след края Разбира се, вие не очакват 20 83 00:04:06,020 --> 00:04:08,890 Спецификация страница, за да ви кажа как да се приложат някои програма. 84 00:04:08,890 --> 00:04:12,970 Имате достатъчно съставки във вашата ум и достатъчно средства във вашата инструмент 85 00:04:12,970 --> 00:04:15,750 комплект, с които да започне изграждането на решения на проблемите, които представляват интерес за 86 00:04:15,750 --> 00:04:19,130 по някаква група студенти, за някои изследователски проект, или наистина нещо 87 00:04:19,130 --> 00:04:20,140 от интерес за вас. 88 00:04:20,140 --> 00:04:24,150 >> Така че към тази цел, припомни, че това е на снимката го обърна за последен път. 89 00:04:24,150 --> 00:04:27,620 И това е два компютъра, клиента и Север, говорим един с друг. 90 00:04:27,620 --> 00:04:31,130 И Протокола, на езика, така че да се каже, че тези два компютъра се случи 91 00:04:31,130 --> 00:04:33,220 да се говори, се нарича HTTP. 92 00:04:33,220 --> 00:04:37,730 И това е само протокол, използван от компютри за предаване на информация по 93 00:04:37,730 --> 00:04:38,710 на World Wide Web. 94 00:04:38,710 --> 00:04:41,770 В Мрежата, разбира се, е само една услуга , който работи на върха на 95 00:04:41,770 --> 00:04:43,000 така наречените интернет. 96 00:04:43,000 --> 00:04:48,660 Какво е друга услуга, предоставена на горната част на интернет тези дни? 97 00:04:48,660 --> 00:04:51,600 Някой друг протокол или - какво е това? 98 00:04:51,600 --> 00:04:52,300 >> Публика: FTP. 99 00:04:52,300 --> 00:04:52,790 >> SPEAKER 1: FTP. 100 00:04:52,790 --> 00:04:54,630 Така протокол за трансфер на файлове е друг. 101 00:04:54,630 --> 00:04:56,050 Повечето от вас вероятно не са го използвали. 102 00:04:56,050 --> 00:04:58,830 Но повечето от вас вероятно са използвали неща като Gchat, или незабавно 103 00:04:58,830 --> 00:05:00,970 съобщения по-общо, сигурност имейл. 104 00:05:00,970 --> 00:05:04,470 И тези, които също са услуги, които се движат по горната част на интернет, тъй като в 105 00:05:04,470 --> 00:05:08,180 края на деня, самата интернет наистина само получават данни от точка А до точка 106 00:05:08,180 --> 00:05:12,480 точка Б. И той използва редица частици себе си, един от тях, или две 107 00:05:12,480 --> 00:05:17,340 от тях най-общо наречен TCP / IP, което означава, че един компютър 108 00:05:17,340 --> 00:05:19,960 интернет може действително да се прави различни неща, електронна поща, 109 00:05:19,960 --> 00:05:20,980 и Мрежата, и така нататък. 110 00:05:20,980 --> 00:05:22,220 Google прави много от това. 111 00:05:22,220 --> 00:05:26,310 И така, как са тези услуги уникално идентифицирани, казахме, на компютър 112 00:05:26,310 --> 00:05:29,080 че всъщност може да се прави няколко неща? 113 00:05:29,080 --> 00:05:29,860 >> Номерът на порта. 114 00:05:29,860 --> 00:05:34,180 И това са само произволни човека конвенции, като 80 е интернет, 443 е 115 00:05:34,180 --> 00:05:36,580 криптирана уеб, 25 е-мейл. 116 00:05:36,580 --> 00:05:38,230 А има и букети от другите. 117 00:05:38,230 --> 00:05:41,860 И тези числа са просто включени в тези пакети от информация, тези 118 00:05:41,860 --> 00:05:46,230 виртуален пакет, че всъщност съдържа искане или отговор. 119 00:05:46,230 --> 00:05:51,300 >> Така че, когато се върнеш отговор от страна на Мрежата, обикновено, не виждам никаква 120 00:05:51,300 --> 00:05:54,780 номера каквато и от гледна точка на Код на статута на отговора. 121 00:05:54,780 --> 00:05:56,770 Вие всъщност не виждат вътрешната изработки на 122 00:05:56,770 --> 00:05:58,090 пакети, които да се върне. 123 00:05:58,090 --> 00:05:59,860 Но 200 наистина означава OK. 124 00:05:59,860 --> 00:06:01,530 И това означава, че всичко е добре. 125 00:06:01,530 --> 00:06:02,870 Може би сте виждали един куп от тях. 126 00:06:02,870 --> 00:06:05,710 Което е може би най-честата което сте виждали в интернет? 127 00:06:05,710 --> 00:06:05,980 >> 404. 128 00:06:05,980 --> 00:06:07,330 Това просто означава, файла не е намерен. 129 00:06:07,330 --> 00:06:08,270 Това означава, че някой прецаках. 130 00:06:08,270 --> 00:06:11,450 Справи се с mistyping на URL, или някой друго е като ви е 131 00:06:11,450 --> 00:06:15,100 невалиден URL, или те заличи файл и на URL е все още 132 00:06:15,100 --> 00:06:16,130 се използва от хора. 133 00:06:16,130 --> 00:06:19,670 Така редица причини могат да обяснят защо даден файл не е намерен. 134 00:06:19,670 --> 00:06:22,990 И ще видите, в идните седмици, тези други кодове за грешки, и ще 135 00:06:22,990 --> 00:06:24,195 да се възползват от някои от тях. 136 00:06:24,195 --> 00:06:25,760 Най-лошото е 500. 137 00:06:25,760 --> 00:06:29,820 Ако получите 500 грешка в кода, който съм писмено, мисля за това като вид на 138 00:06:29,820 --> 00:06:33,290 аналог на SEG грешки в Светът на уеб програмирането. 139 00:06:33,290 --> 00:06:34,560 Това не е чак толкова страшен. 140 00:06:34,560 --> 00:06:36,660 Но това просто означава, че някъде, ви прецака. 141 00:06:36,660 --> 00:06:38,260 Така че очаквам с нетърпение тези. 142 00:06:38,260 --> 00:06:39,910 >> Но нека да видим дали можем да виж това в контекст. 143 00:06:39,910 --> 00:06:43,460 Нека да отидем на браузъра тук и направете следното. 144 00:06:43,460 --> 00:06:45,710 Така че това е Chrome, която се случва да да бъдат инсталирани в уреда. 145 00:06:45,710 --> 00:06:49,410 Но почти всеки браузър тези дни има някои еквивалентни функции. 146 00:06:49,410 --> 00:06:52,610 Аз ще отида на менюто на Chrome, и отидете на Tools, и аз ще отида 147 00:06:52,610 --> 00:06:53,990 да Developer Tools. 148 00:06:53,990 --> 00:06:57,040 И ще видите, че този малък панел отваря в долната част на прозореца. 149 00:06:57,040 --> 00:07:00,190 Друг пряк път, за да бъдем честни, че обикновено използвам себе си е да Кликнете с десния бутон 150 00:07:00,190 --> 00:07:04,370 или Control щракнете някъде в интернет страница и просто отидете да инспектира Element. 151 00:07:04,370 --> 00:07:07,440 И това не само ще отвори Това има за вас. 152 00:07:07,440 --> 00:07:10,230 Тя също така ще се отвори, по-специално, Елементи на част от 153 00:07:10,230 --> 00:07:11,430 от лявата страна. 154 00:07:11,430 --> 00:07:12,460 >> Така че ние сме разбира се види Google. 155 00:07:12,460 --> 00:07:13,930 Те промениха своята логото си днес. 156 00:07:13,930 --> 00:07:20,200 Но ако аз превъртете надолу до тук, забележете че при Elements, ще видите 157 00:07:20,200 --> 00:07:23,460 което се нарича HTML, HyperText Markup Език, а това е езикът 158 00:07:23,460 --> 00:07:26,000 че това и всички уеб страници, наистина, са дадени инча 159 00:07:26,000 --> 00:07:28,950 Но всъщност е форматиран за ни много по-четливо 160 00:07:28,950 --> 00:07:29,970 отколкото обикновено е. 161 00:07:29,970 --> 00:07:34,810 В действителност, ако намалите, и аз вместо Просто десен клик или контрол клик 162 00:07:34,810 --> 00:07:39,630 кликнете върху страницата, а след това отидете на Преглед Page Source, това е буквално това, което 163 00:07:39,630 --> 00:07:42,150 Google изпраща до браузъра си. 164 00:07:42,150 --> 00:07:46,480 >> Така че някои лице или лица, пише Google.com използването на този код. 165 00:07:46,480 --> 00:07:47,790 Повечето от това не е HTML. 166 00:07:47,790 --> 00:07:49,340 Това всъщност е наречен език JavaScript, които 167 00:07:49,340 --> 00:07:50,880 ще дойдем до сряда. 168 00:07:50,880 --> 00:07:55,580 Но това, Chrome, и това, което всеки браузър може да направи за нас, е един вид виж 169 00:07:55,580 --> 00:07:59,610 миналото всички отвличане на вниманието на луд синтаксис, и отново празно пространство 170 00:07:59,610 --> 00:08:02,940 за нас, а дори и синтаксис подчертае, или използват цветове за нас неща. 171 00:08:02,940 --> 00:08:06,470 Така ще откриете, че тези така наречени инструменти за разработчици, вградени в браузърите 172 00:08:06,470 --> 00:08:10,830 ще направят живота ви, така, така че много по-лесно защото можете да се запознаете, чрез това меню 173 00:08:10,830 --> 00:08:13,940 интерфейс, точно това, което основната изходния код е за 174 00:08:13,940 --> 00:08:15,750 всяка страница в интернет. 175 00:08:15,750 --> 00:08:19,070 И наистина, това е една от най- ефективни начини да се научи как да се направи 176 00:08:19,070 --> 00:08:22,860 нещо ново, най-малко, ако страницата не е толкова сложна, че да смаже, е 177 00:08:22,860 --> 00:08:26,700 да започне дълго обикаляне това е HTML, изглеждат в така наречената CSS, които ще дойдем 178 00:08:26,700 --> 00:08:30,310 за малко, както и, за да получите разбиране за това как, че програмист 179 00:08:30,310 --> 00:08:33,480 изпълнява някои конкретни функция на страницата. 180 00:08:33,480 --> 00:08:36,530 >> Но по-интересно е технически правото сега тя ще е тази. 181 00:08:36,530 --> 00:08:39,429 Ако отида в мрежата на раздела Нека сега да изчистите това. 182 00:08:39,429 --> 00:08:43,429 Отивам да кликнете на малката пресичат символ тук, а след това 183 00:08:43,429 --> 00:08:45,630 отидете на друг сайт. 184 00:08:45,630 --> 00:08:48,430 И аз съм просто ще въведете в Facebook.com. 185 00:08:48,430 --> 00:08:51,940 Не HTTP, HTTPS не, не WWW. 186 00:08:51,940 --> 00:08:53,850 Нека видим какво се случва в действителност тук. 187 00:08:53,850 --> 00:08:55,030 >> Enter. 188 00:08:55,030 --> 00:08:58,480 Сега забележите един куп неща просто се появява в тази долния панел, в 189 00:08:58,480 --> 00:09:00,285 допълнение към уеб страница се появява в началото. 190 00:09:00,285 --> 00:09:04,890 Отивам да превъртите обратно в Network раздела тук, и аз отивам да 191 00:09:04,890 --> 00:09:06,080 кликнете върху първия ред. 192 00:09:06,080 --> 00:09:10,580 Какво този инструмент ще ни разкрие е всеки един от искания HTTP 193 00:09:10,580 --> 00:09:13,550 че бързо просто се върнах и изминава между браузъра си 194 00:09:13,550 --> 00:09:14,930 и Facebook на сървъра. 195 00:09:14,930 --> 00:09:17,830 И така всеки един от тези редове представлява едно такова искане или 196 00:09:17,830 --> 00:09:20,970 реакция, една или повече от тези, виртуален пакет. 197 00:09:20,970 --> 00:09:24,080 Или по-небрежно, това е като човек като човек, клиент в 198 00:09:24,080 --> 00:09:26,710 ресторант, пита за нещо отново и отново, и отново. 199 00:09:26,710 --> 00:09:29,400 И келнерът запазва привеждане тя отново едно по едно време. 200 00:09:29,400 --> 00:09:33,850 >> Така че сега, ако се увеличи по този, забележете и това ще бъде едно от нещата, 201 00:09:33,850 --> 00:09:36,600 че сте добре дошли да се насърчават и да играят с по своему, защото ние 202 00:09:36,600 --> 00:09:38,150 няма да мине през всичко в големи подробности. 203 00:09:38,150 --> 00:09:40,070 Но забележете, че има няколко под разделите тук - 204 00:09:40,070 --> 00:09:43,700 Headers, преглед, реакция, Cookies, и времето. 205 00:09:43,700 --> 00:09:48,280 Аз съм просто ще погледнете заглавията за сега, защото те са малко 206 00:09:48,280 --> 00:09:53,600 продуктите във вътрешността на плика, че помогне да получите данни към и от местата. 207 00:09:53,600 --> 00:09:57,590 >> Така че, първо, нека да щракнете върху тази, Разгледай Източник до заглавките. 208 00:09:57,590 --> 00:10:01,910 Има искане, че навигаторът ми, Chrome, в този случай, изпратени във вътрешността на 209 00:10:01,910 --> 00:10:02,910 този виртуален пакет. 210 00:10:02,910 --> 00:10:04,800 Вие си спомняте миналата седмица I ръчно написали него, докато 211 00:10:04,800 --> 00:10:06,380 който се представя за сваляне. 212 00:10:06,380 --> 00:10:09,980 След това припомни на сървър, който е търси нарича хост 213 00:10:09,980 --> 00:10:10,835 Facebook.com. 214 00:10:10,835 --> 00:10:13,630 И тогава там е малко по-мистериозен информация, която ще помаха 215 00:10:13,630 --> 00:10:14,830 нашите ръце за сега. 216 00:10:14,830 --> 00:10:18,640 >> Но ако започна да превъртите надолу, сега в този прозорец, нека да стигнем до 217 00:10:18,640 --> 00:10:19,980 отговор заглавията. 218 00:10:19,980 --> 00:10:23,270 Това е това, което е във виртуалното плик, който се върна от 219 00:10:23,270 --> 00:10:24,095 Facebook.com. 220 00:10:24,095 --> 00:10:27,390 И ако щракнете върху Преглед Source просто За да разгледате суров текст от него, 221 00:10:27,390 --> 00:10:28,400 забележите няколко неща. 222 00:10:28,400 --> 00:10:32,130 One, Facebook също говори същото протокол, версия 1.1 него. 223 00:10:32,130 --> 00:10:33,390 Така че това е хубаво. 224 00:10:33,390 --> 00:10:36,820 Но статус код 301, преместена за постоянно. 225 00:10:36,820 --> 00:10:38,880 >> Е, къде, по дяволите, е Facebook отидете? 226 00:10:38,880 --> 00:10:40,430 Какво е това опитват да предадат на нас? 227 00:10:40,430 --> 00:10:44,310 Е, забележите тук има и друг глава призова Location. 228 00:10:44,310 --> 00:10:51,050 Така че, защо се Facebook да ми кажеш, че те преместена за постоянно, че URL 229 00:10:51,050 --> 00:10:53,580 до местоположение? 230 00:10:53,580 --> 00:10:54,962 Забравих WWW. 231 00:10:54,962 --> 00:10:56,250 >> Така че това е моят избор. 232 00:10:56,250 --> 00:11:00,450 Всъщност, повечето от нас рядко, може би, въведете www.whatever.com тези дни. 233 00:11:00,450 --> 00:11:03,390 Но се оказва, системен администратор, като Facebook, могат да 234 00:11:03,390 --> 00:11:06,800 конфигурират сървъри по такъв начин, че или Facebook.com работи, или 235 00:11:06,800 --> 00:11:12,450 www.Facebook.com работи, или, наистина, такъв префикс пред тяхната 236 00:11:12,450 --> 00:11:13,210 име на домейн. 237 00:11:13,210 --> 00:11:14,500 Така че те го направил за нас. 238 00:11:14,500 --> 00:11:16,910 И те ни пренасочване, вероятно за техническа, 239 00:11:16,910 --> 00:11:18,100 някои маркетингови причини. 240 00:11:18,100 --> 00:11:21,570 Те просто искат да канонизира на www.Facebook.com. 241 00:11:21,570 --> 00:11:24,040 >> Но това не е съвсем това. 242 00:11:24,040 --> 00:11:28,560 Ако превъртете надолу, тук, да видим какво ще стане. 243 00:11:28,560 --> 00:11:30,810 Това ми се казва преместена за постоянно 244 00:11:30,810 --> 00:11:33,450 http://www.Facebook.com. 245 00:11:33,450 --> 00:11:36,620 Така че нека да погледнем на второто искане че навигаторът ми изпраща. 246 00:11:36,620 --> 00:11:40,070 За съжаление, тя изглежда като Facebook е преместен отново, защото второто 247 00:11:40,070 --> 00:11:44,420 искане, като изберете, че URL вместо казва, че също премества 248 00:11:44,420 --> 00:11:45,010 постоянно. 249 00:11:45,010 --> 00:11:48,140 И нека да превъртите надолу тук писмения отговор заглавията. 250 00:11:48,140 --> 00:11:51,530 Къде е Facebook вече го няма? 251 00:11:51,530 --> 00:11:52,680 >> Така HTTPS. 252 00:11:52,680 --> 00:11:56,130 Така че сега Facebook е започнал, особено в светлината на текущата 253 00:11:56,130 --> 00:11:59,750 събития в последните месеци, по-специално и Също така в последните няколко години 254 00:11:59,750 --> 00:12:03,670 да задължи всички свои потребители, по-добър начин, да използват HTTPS, който е по- 255 00:12:03,670 --> 00:12:06,210 осигуряване, въпреки че не е съвсем сигурно. 256 00:12:06,210 --> 00:12:10,000 И сега моята страница, навигаторът ми е ще поискат този трети URL. 257 00:12:10,000 --> 00:12:14,710 И сега, най-накрая, ще получите иначе невидима 200 OK. 258 00:12:14,710 --> 00:12:18,830 >> Така че това, което в света или всички тези други редове тук. 259 00:12:18,830 --> 00:12:22,630 Аз буквално написали едно нещо, и ми Браузърът изглежда са поискали като 260 00:12:22,630 --> 00:12:23,840 20 някои странни неща. 261 00:12:23,840 --> 00:12:24,640 Какво е това? 262 00:12:24,640 --> 00:12:25,810 >> Публика: Scripts? 263 00:12:25,810 --> 00:12:28,460 >> SPEAKER 1: скриптове, така че и другите файлове написан на езика и наречено 264 00:12:28,460 --> 00:12:30,780 JavaScript, които, отново, ще виж малко в сряда. 265 00:12:30,780 --> 00:12:32,760 Какво друго? 266 00:12:32,760 --> 00:12:33,390 Стил листове. 267 00:12:33,390 --> 00:12:36,350 Така че нещо в нарича език CSS, които ще видим след малко. 268 00:12:36,350 --> 00:12:40,690 Gifs и JPEG файлове и PNGs и изображения, и филмови файлове - независимо уеб страница 269 00:12:40,690 --> 00:12:43,280 е най-вероятно в формата на файла. 270 00:12:43,280 --> 00:12:46,750 И така това, което виждаме в ляво страна има всички файлове 271 00:12:46,750 --> 00:12:50,280 че Chrome е трябвало да изтеглите, рекурсивно, ако щете, за да се 272 00:12:50,280 --> 00:12:52,430 композирате цялост на страницата. 273 00:12:52,430 --> 00:12:56,210 >> Така че това, което видяхме преди малко с Google, ако щракнете върху елементите 274 00:12:56,210 --> 00:13:00,470 раздела, това, разбира се, е HTML, на език, който композира тази страница. 275 00:13:00,470 --> 00:13:01,890 Но има и букети от други неща. 276 00:13:01,890 --> 00:13:02,640 Има едно лого. 277 00:13:02,640 --> 00:13:04,680 Има тези, синкава икони там. 278 00:13:04,680 --> 00:13:07,610 А има и други елементи, все още На страницата, която се може да бъде 279 00:13:07,610 --> 00:13:08,610 отделни файлове. 280 00:13:08,610 --> 00:13:11,860 >> Така че това, което е хубаво за един браузър е, че той гледа на езика отиваме 281 00:13:11,860 --> 00:13:14,690 да започнете да пишете, или вече сте Започнах да пиша в P набор 7, фигури 282 00:13:14,690 --> 00:13:17,970 къде живеят тези файлове, и отива и ги хваща, както добре. 283 00:13:17,970 --> 00:13:21,010 И не мога да подчертая достатъчно, дори въпреки че някои от това може да изглежда малко 284 00:13:21,010 --> 00:13:24,820 Arcane или преобладаващото на пръв поглед, научите как да програмирате 285 00:13:24,820 --> 00:13:28,500 приложения за уеб, това е безценно да се разбере как тези 286 00:13:28,500 --> 00:13:29,410 малки инструменти за работа. 287 00:13:29,410 --> 00:13:33,830 Това са нещо като GDB като инструменти, но много по-просто, в крайна сметка, да се използва - 288 00:13:33,830 --> 00:13:37,690 и наистина дава очи в това, което ние сме били като за даденост, за 289 00:13:37,690 --> 00:13:39,170 от доста време. 290 00:13:39,170 --> 00:13:42,270 >> И така, какво можем да направим сега с тази информация? 291 00:13:42,270 --> 00:13:44,875 Е, нека наистина да разгледаме концепциите, базиращи HTML. 292 00:13:44,875 --> 00:13:49,025 И ние ще отложи, тъй като вече имаме, за да секции тази седмица за проблем 293 00:13:49,025 --> 00:13:53,260 определила 7 спецификация, на някои от по- данни за тези езици. 294 00:13:53,260 --> 00:13:57,020 Но нека да видим дали не можем да нарисува картина на това, което трябва да разберат, 295 00:13:57,020 --> 00:13:57,940 цялостната тук. 296 00:13:57,940 --> 00:14:02,280 >> Така че HTML, Hypertext Markup Language, не е език за програмиране. 297 00:14:02,280 --> 00:14:03,520 Какво всъщност означава това? 298 00:14:03,520 --> 00:14:05,690 Така HTML изглежда така. 299 00:14:05,690 --> 00:14:06,810 И някои от вас вече знаят това. 300 00:14:06,810 --> 00:14:08,130 Някои от вас са били прави това за известно време. 301 00:14:08,130 --> 00:14:10,270 Но нека да видим дали не можем да попълните в някои заготовки, както добре. 302 00:14:10,270 --> 00:14:11,760 Така че забележите няколко неща тук. 303 00:14:11,760 --> 00:14:13,030 One, това е просто текст. 304 00:14:13,030 --> 00:14:15,960 Така че това е точно като изходния код в C, или някакъв друг език. 305 00:14:15,960 --> 00:14:17,750 >> Забележете, че изглежда има ще бъде модел тук. 306 00:14:17,750 --> 00:14:20,870 Има отстъп, но технически вдлъбнатината е просто човешкото 307 00:14:20,870 --> 00:14:21,205 конвенция. 308 00:14:21,205 --> 00:14:24,980 А браузъри не се интересува дали има нова линии и разделите като виждаме там. 309 00:14:24,980 --> 00:14:27,410 Но забележете, че има симетрии тук. 310 00:14:27,410 --> 00:14:31,180 Има какво ще се обадя, в горната част на този файл, отворения етикет, или началото 311 00:14:31,180 --> 00:14:33,030 маркер, наречен HTML. 312 00:14:33,030 --> 00:14:36,800 И след това, по-долу, напълно облицована нагоре, подобно правим с фигурни скоби, 313 00:14:36,800 --> 00:14:40,910 виждаме отворена скоба, напред наклонена черта, HTML, близо скоба. 314 00:14:40,910 --> 00:14:44,610 Така че това е съответното близо етикет или краен маркер, за това нещо. 315 00:14:44,610 --> 00:14:47,990 >> Заедно, всичко вътрешността на така наречените отворени тагове и затварящия етикет 316 00:14:47,990 --> 00:14:50,440 композира това, което ние ще се обадя на един елемент. 317 00:14:50,440 --> 00:14:53,910 И ние ще видим, в един момент, това е наистина харесвам една нишка в дърветата. 318 00:14:53,910 --> 00:14:57,470 Защото, ако мислите, че за сега вдлъбнатина, която е подразбиращи се тук, 319 00:14:57,470 --> 00:15:00,780 вид има, като, баба или дядо, възела, наречен HTML. 320 00:15:00,780 --> 00:15:06,870 Колко деца могат да ви кажа, на базата на тази снимка, на HTML елемент има? 321 00:15:06,870 --> 00:15:07,720 >> Така че, може би две. 322 00:15:07,720 --> 00:15:10,240 Един от тях е ръководителят елемент, очевидно. 323 00:15:10,240 --> 00:15:11,710 И едно е тялото елемент. 324 00:15:11,710 --> 00:15:12,555 И защо две деца? 325 00:15:12,555 --> 00:15:15,840 Е, аз съм просто вид извод, че ако Имам отворен етикет главата и след това 326 00:15:15,840 --> 00:15:17,820 близо главата етикет, това е един елемент. 327 00:15:17,820 --> 00:15:21,200 И тогава, ако има и друг отворен тялото етикет и близък етикет тялото, това е все едно 328 00:15:21,200 --> 00:15:22,340 друг елемент. 329 00:15:22,340 --> 00:15:26,000 Така че, в смисъл, че ако аз вид завъртане на снимката на едната си страна, това е 330 00:15:26,000 --> 00:15:29,910 нещо като HTML тагове, а след това главата етикет, а след това етикет тялото, и 331 00:15:29,910 --> 00:15:34,290 След това някакъв текст, здравей свят, висящи разстояние от самия орган етикет. 332 00:15:34,290 --> 00:15:36,620 >> Така че може да се направи снимка, която може да изглежда така. 333 00:15:36,620 --> 00:15:38,020 Формите са произволни. 334 00:15:38,020 --> 00:15:40,870 Но забележете, че аз съм използвал нещо като елипсата на върха да представлява 335 00:15:40,870 --> 00:15:41,860 самия документ. 336 00:15:41,860 --> 00:15:45,980 Оказва се, може да има и други неща вътрешността на дадена уеб страница, че аз не съм 337 00:15:45,980 --> 00:15:46,940 съставен тук. 338 00:15:46,940 --> 00:15:50,800 Така че ние ще дори виси на HTML възел на разстояние от така наречения документ възел. 339 00:15:50,800 --> 00:15:53,730 И тогава ние имаме глава и тялото и заглавието, надпис, 340 00:15:53,730 --> 00:15:55,360 който е вложен повече. 341 00:15:55,360 --> 00:15:58,650 Аз не се притеснява пускането допълнителен ред паузи вътре в заглавието маркер. 342 00:15:58,650 --> 00:16:02,710 Тя просто се чувствах като ставаше малко прекалено многословен. 343 00:16:02,710 --> 00:16:07,000 Така че съм го оставила в един ред там, с отворен заглавие, здравей свят, в близост заглавието. 344 00:16:07,000 --> 00:16:09,380 И тогава имаме някакъв текст висящи на разстояние от тук. 345 00:16:09,380 --> 00:16:12,200 >> Така че тази картина ще се върна на нас, когато се потопите в JavaScript. 346 00:16:12,200 --> 00:16:15,110 И разбирането, че когато напиши HTML така, какво 347 00:16:15,110 --> 00:16:16,250 е браузър правиш? 348 00:16:16,250 --> 00:16:19,290 Е, ние не трябва да се притесняваш как се прави това, или с това, което 349 00:16:19,290 --> 00:16:23,090 алгоритъм, но в края на деня, когато един браузър получава HTML като 350 00:16:23,090 --> 00:16:27,510 че от Facebook или Google, той прави разбор тя, така да се каже, че се чете, 351 00:16:27,510 --> 00:16:31,160 с нещо като fread, отгоре отдолу, отляво надясно, и тъй като 352 00:16:31,160 --> 00:16:36,300 осъзнава, о, отворен етикет, и след това затворете етикет, тя започва да изчистване, така да се каже, 353 00:16:36,300 --> 00:16:37,800 възел в дърво. 354 00:16:37,800 --> 00:16:41,130 И когато го срещне, както сме подразбиращи тук с отстъп, а 355 00:16:41,130 --> 00:16:45,400 дете възел, то mallocs възел за тази и приложен, че на дървото. 356 00:16:45,400 --> 00:16:49,150 >> Така че дървесни структури, двоични дървета, трикомпонентни дървета, и по-големи дървета, които 357 00:16:49,150 --> 00:16:53,380 ние погледна към една или две седмици преди бележка че същият принцип е 358 00:16:53,380 --> 00:16:54,220 да се върне при нас. 359 00:16:54,220 --> 00:16:57,590 И който се прилага, независимо Chrome Екипът направи това, вероятно има 360 00:16:57,590 --> 00:17:00,800 да се приложат някои вид дървовидна структура под предния капак. 361 00:17:00,800 --> 00:17:05,329 А това от своя страна е вероятно в език като C или C + +, или по-ниска 362 00:17:05,329 --> 00:17:08,540 ниво на езика, че ще предприятието използва на върха на уеб. 363 00:17:08,540 --> 00:17:11,200 >> Така че сега, може би, това ще направи повече смисъл. 364 00:17:11,200 --> 00:17:15,420 Край на татуировка от някакъв човек, който може Съжалявам, че в крайна сметка, вид. 365 00:17:15,420 --> 00:17:17,359 ОК, добре, така че много уеб хумор. 366 00:17:17,359 --> 00:17:18,599 Това не е наистина се случва над, така и днес. 367 00:17:18,599 --> 00:17:19,560 Така че ние ще продължим. 368 00:17:19,560 --> 00:17:20,180 Добре. 369 00:17:20,180 --> 00:17:22,760 >> Така че нека да разгледаме сега няколко примера. 370 00:17:22,760 --> 00:17:24,660 Най-простият възможен нещо, което може да е това. 371 00:17:24,660 --> 00:17:29,170 Отивам да се продължи напред и да се отворят в Gedit файл, наречен hello.php. 372 00:17:29,170 --> 00:17:31,730 373 00:17:31,730 --> 00:17:36,330 А вътре от тук, аз отивам за бързо просто правя това, ФОРМАТ, цитирам 374 00:17:36,330 --> 00:17:38,590 във файловите, "Hello World". 375 00:17:38,590 --> 00:17:42,460 >> Така бележка, и аз ще направя всичко обратно наклонена черта N, Не сте си направили труда да декларират главната. 376 00:17:42,460 --> 00:17:45,310 Оказва се, че в PHP, и много езици, не е нужно основен 377 00:17:45,310 --> 00:17:46,090 функция по себе си. 378 00:17:46,090 --> 00:17:47,720 Можете просто да започнете да пишете вашата програма. 379 00:17:47,720 --> 00:17:51,210 Сега, когато запиша този файл, забележите, че съм ще трябва да направите следното. 380 00:17:51,210 --> 00:17:55,360 Аз няма да се използва се направи, и аз не съм ще използвате звън, защото PHP, за разлика от 381 00:17:55,360 --> 00:17:57,400 C, не е компилиран език. 382 00:17:57,400 --> 00:18:01,400 Това е, което се нарича интерпретиран език, което означава, че можете да го стартирате 383 00:18:01,400 --> 00:18:04,650 като вход за друга програма нарича преводач. 384 00:18:04,650 --> 00:18:08,150 И тази програма се чете, отгоре отдолу, отляво надясно, и не 385 00:18:08,150 --> 00:18:09,290 каквото и да му кажете да прави. 386 00:18:09,290 --> 00:18:12,920 >> Така че в този случай тук имам една линия, която казва ФОРМАТ. 387 00:18:12,920 --> 00:18:17,990 Така че, когато аз тичам този изходен код, hello.php, че една програма, която 388 00:18:17,990 --> 00:18:22,830 се случи, удобно, да се нарича PHP, тази програма PHP ще прочетете 389 00:18:22,830 --> 00:18:26,120 този файл, горе до долу, от ляво на дясно, и това ще направя това, което 390 00:18:26,120 --> 00:18:30,110 казвате да прави - изпълняващата код, и ако че не признава нещо, просто 391 00:18:30,110 --> 00:18:31,320 плюе го. 392 00:18:31,320 --> 00:18:34,940 Така че аз ще отида напред и PHP работи на hello.php. 393 00:18:34,940 --> 00:18:37,110 Enter. 394 00:18:37,110 --> 00:18:39,690 >> И това не е съвсем това, което възнамерявах. 395 00:18:39,690 --> 00:18:40,530 Е, защо е така? 396 00:18:40,530 --> 00:18:43,910 Е, PHP е език, който всъщност проектиран да бъде достатъчно 397 00:18:43,910 --> 00:18:46,150 преплетени с уеб. 398 00:18:46,150 --> 00:18:50,460 Когато се прави уеб страници с този език PHP, както скоро ще видим, ще 399 00:18:50,460 --> 00:18:54,560 Искам да направя нещо като печат от подобни на тези редове. 400 00:18:54,560 --> 00:18:55,940 >> Така че аз ще го направя. 401 00:18:55,940 --> 00:19:00,810 Open скоба, въпросителен знак, PHP, и сега аз съм просто ще тире само за да поддържат 402 00:19:00,810 --> 00:19:01,960 неща Ница. 403 00:19:01,960 --> 00:19:04,910 И сега аз ще направя един въпрос марка близо скоба. 404 00:19:04,910 --> 00:19:06,270 Така че там е малко на асиметрия тук. 405 00:19:06,270 --> 00:19:07,490 Не прави това. 406 00:19:07,490 --> 00:19:10,530 И не правиш наклонена черта, така че PHP е малко по-различна. 407 00:19:10,530 --> 00:19:14,610 >> Но сега, ако аз разясняване на тази програма, PHP hello.php, сега 408 00:19:14,610 --> 00:19:16,090 всъщност става дума Hello World. 409 00:19:16,090 --> 00:19:17,750 И ще видим защо това е ценно. 410 00:19:17,750 --> 00:19:20,960 Едно, че ми позволява да се уточни, супер изрично, че това е 411 00:19:20,960 --> 00:19:22,480 код, изпълнение на това. 412 00:19:22,480 --> 00:19:25,480 И това е наистина това, което те специални тагове предполагат тук. 413 00:19:25,480 --> 00:19:30,330 >> Но това също така означава, че ако аз просто правя нещо подобно се стремя тук, че 414 00:19:30,330 --> 00:19:34,000 означава, че, буквално, че просто ще да бъдат отпечатани без да е необходимо да 415 00:19:34,000 --> 00:19:36,850 всъщност наричаме ФОРМАТ или печат, или подобна функция. 416 00:19:36,850 --> 00:19:39,445 Така че ние ще се върна на това Само след минута. 417 00:19:39,445 --> 00:19:40,470 >> Първо, нека да го направим. 418 00:19:40,470 --> 00:19:43,950 Вътрешността на уреда, ние имаме директория, наречена Vhosts, за виртуалния 419 00:19:43,950 --> 00:19:47,000 Силите, наклонена черта локалния хост, наклонена черта обществеността. 420 00:19:47,000 --> 00:19:50,240 Така че това е малко многословен, но дълга история Накратко, уредът не е предназначена 421 00:19:50,240 --> 00:19:53,770 само за подкрепа на C. Това е също проектиран да поддържа PHP. 422 00:19:53,770 --> 00:19:57,440 Но тя също е проектиран да бъде в Мрежата сървър и сървър за база данни. 423 00:19:57,440 --> 00:20:00,230 И тя е проектирана, и наистина е конфигурирано, да напомня на всеки 424 00:20:00,230 --> 00:20:04,230 търговски уеб хостинг компания, която може да плати $ 5 на месец за, 425 00:20:04,230 --> 00:20:05,040 $ 100 на месец за. 426 00:20:05,040 --> 00:20:08,200 Каквато и да е услуга, дали е конфигуриран да бъде много подобен на 427 00:20:08,200 --> 00:20:10,170 недвижими сървъра световното производство. 428 00:20:10,170 --> 00:20:13,485 >> И какво означава това е, че работи на уреда е софтуер, уеб сървър. 429 00:20:13,485 --> 00:20:15,060 Това се случва, да се нарича Apache. 430 00:20:15,060 --> 00:20:17,790 Това е просто свободен и с отворен код, и много популярни. 431 00:20:17,790 --> 00:20:23,260 И ние конфигуриран Apache да знаете че ако посетите определен URL, с 432 00:20:23,260 --> 00:20:28,060 Chrome или сваляне вътрешността на уреда, да погледна в тази директория 433 00:20:28,060 --> 00:20:31,030 за файловете, че потребителя се иска. 434 00:20:31,030 --> 00:20:32,790 >> С други думи, нека отидете напред и да го направя. 435 00:20:32,790 --> 00:20:36,890 Вътре в моя публичен указател, ще да вървим напред и да създадете файл 436 00:20:36,890 --> 00:20:39,580 нарича index.html. 437 00:20:39,580 --> 00:20:41,000 Това ми дава раздела тук. 438 00:20:41,000 --> 00:20:44,210 И аз ще отида много бързо и давай напред и взрив 439 00:20:44,210 --> 00:20:45,010 тази програма тук. 440 00:20:45,010 --> 00:20:48,410 DOCTYPE HTML, което за сега, просто Предполагам, че трябва да въведете. 441 00:20:48,410 --> 00:20:53,490 Това е просто една тайнствена етикет, който не е наистина един етикет HTML, в който се посочва, че 442 00:20:53,490 --> 00:20:55,050 тук идва някои HTML. 443 00:20:55,050 --> 00:20:57,400 >> Аз ще отида напред и да пресъздаде това, което видяхме преди малко. 444 00:20:57,400 --> 00:20:58,650 Ето главата на страницата. 445 00:20:58,650 --> 00:21:01,170 Вътре в главата беше - 446 00:21:01,170 --> 00:21:01,890 така заглавието. 447 00:21:01,890 --> 00:21:04,340 Затова ще кажа здрасти, света. 448 00:21:04,340 --> 00:21:06,570 И след това тук е тялото маркер. 449 00:21:06,570 --> 00:21:08,580 Позволете ми да затворите тага тялото. 450 00:21:08,580 --> 00:21:12,280 И след това в тук аз ще кажа също, само за яснота, здравей свят. 451 00:21:12,280 --> 00:21:14,770 >> Така че това е, може би, най-простият Възможно уеб страницата, която 452 00:21:14,770 --> 00:21:15,770 може да направи това е валидно. 453 00:21:15,770 --> 00:21:17,030 Това е синтактично валидна. 454 00:21:17,030 --> 00:21:18,620 Всичко, което отвори е затворен. 455 00:21:18,620 --> 00:21:20,910 Всичко е добре в оформена и разчленена. 456 00:21:20,910 --> 00:21:23,600 Така че нека да видим сега как да получите достъп до този файл. 457 00:21:23,600 --> 00:21:25,540 >> Е, нека да отидете на Chrome тук. 458 00:21:25,540 --> 00:21:35,050 И ме пусна да http://localhost/index.html. 459 00:21:35,050 --> 00:21:36,200 Така че това, което е локалния хост? 460 00:21:36,200 --> 00:21:39,400 Е, най-всеки компютър в света, Linux, Mac OS, Windows, има псевдоним 461 00:21:39,400 --> 00:21:40,680 нарича локалния хост. 462 00:21:40,680 --> 00:21:42,900 Така че, ако някога искате да говорите към вашия собствен компютър - 463 00:21:42,900 --> 00:21:45,140 макар, странно инстинктивно - 464 00:21:45,140 --> 00:21:47,080 се наричаш локалния хост. 465 00:21:47,080 --> 00:21:50,390 Без значение какво си застроена компютърът е нарича, независимо дали е на Дейвид MacBook 466 00:21:50,390 --> 00:21:52,490 Air, или нещо повече многословен така. 467 00:21:52,490 --> 00:21:57,760 >> Така че този URL е очевидно ще използвате на HTTP да говоря с локалния хост, 468 00:21:57,760 --> 00:22:00,800 един и същ компютър, уредът, и че ще поиска, просто да се 469 00:22:00,800 --> 00:22:02,570 Предполагам, това, което файл? 470 00:22:02,570 --> 00:22:04,460 Index.html. 471 00:22:04,460 --> 00:22:08,650 Така че уреда е конфигуриран в предварително да се знае, че ако те питам 472 00:22:08,650 --> 00:22:13,460 за нещо като index.html, потърсете в папка, наречена Vhosts, в 473 00:22:13,460 --> 00:22:17,950 папка, наречена Localhost, в папка в него призова обществеността. 474 00:22:17,950 --> 00:22:20,400 Това е, когато всички си публично файлове ще бъдат. 475 00:22:20,400 --> 00:22:22,610 Така че аз съм сега ще удари Enter. 476 00:22:22,610 --> 00:22:27,100 >> И по дяволите, там е, че забраненото съобщение, иначе известни като 403, на 477 00:22:27,100 --> 00:22:28,490 цифров код за него. 478 00:22:28,490 --> 00:22:30,130 И така, какво не е наред тук? 479 00:22:30,130 --> 00:22:33,210 Е, това не е достатъчно, за да съм сложил файла вътре в папката ми. 480 00:22:33,210 --> 00:22:35,790 Трябва действително да направите следното. 481 00:22:35,790 --> 00:22:40,210 >> Нека отида в моя Vhosts директория, в Localhost, в обществения, и нека 482 00:22:40,210 --> 00:22:41,680 ми направиш ли пробив л. 483 00:22:41,680 --> 00:22:44,510 И има няколко други неща тук за целите на днешния ден. 484 00:22:44,510 --> 00:22:50,540 Но забележете на лявата страна, до към index.html, виждаме само едно RW. 485 00:22:50,540 --> 00:22:53,560 И в миналото, което е RW застана за? 486 00:22:53,560 --> 00:22:54,240 >> Просто да четат или пишат. 487 00:22:54,240 --> 00:22:58,000 Фактът, че той казва RW в ляво означава, че собственикът на този файл, може 488 00:22:58,000 --> 00:22:59,020 чете и пише тя. 489 00:22:59,020 --> 00:23:05,010 Но аз трябва да позволи на всички хора в свят прочетете това, макар и не го напиша. 490 00:23:05,010 --> 00:23:09,650 Така че аз отивам да промените режима на файл, коригирате, всички плюс R за да се получи 491 00:23:09,650 --> 00:23:13,910 всички права за четене на файл с име index.html. 492 00:23:13,910 --> 00:23:18,040 >> И ако сега Повтори ли пробив л, бележка че тук, още 493 00:23:18,040 --> 00:23:19,160 R е се промъкват. 494 00:23:19,160 --> 00:23:21,090 И за сега, спец. отива по-подробно. 495 00:23:21,090 --> 00:23:24,450 За P набор 7, това означава само всеки вече могат да четат този файл. 496 00:23:24,450 --> 00:23:27,790 Ако се върна към моя браузър сега и презареди, готово. 497 00:23:27,790 --> 00:23:28,750 Здравей свят. 498 00:23:28,750 --> 00:23:32,260 >> И дори мога да си отворя Chrome инструменти и да видим, точно като с Google и 499 00:23:32,260 --> 00:23:34,590 Facebook, че там ми е HTML, форматирани малко 500 00:23:34,590 --> 00:23:35,930 по различен начин и оцветите. 501 00:23:35,930 --> 00:23:40,450 Ако отида до мрежата раздела и се презарежда на страницата, забележите, че там е да 502 00:23:40,450 --> 00:23:42,900 поиска Chrome изпраща на уреда. 503 00:23:42,900 --> 00:23:46,020 Там е 200 за това определен файл. 504 00:23:46,020 --> 00:23:49,340 Така че, накратко, това е начина, всичко това различни части се доставят заедно. 505 00:23:49,340 --> 00:23:53,530 Просто така се случи, че на уеб сървъра ние използваме точно сега не е дистанционно, 506 00:23:53,530 --> 00:23:54,210 като Facebook. 507 00:23:54,210 --> 00:23:58,330 Това е буквално на същия компютър, което е напълно OK. 508 00:23:58,330 --> 00:24:00,590 >> И така, какво повече можем да направим в страницата? 509 00:24:00,590 --> 00:24:03,110 Ами, просто, да бриз през Няколко от тези неща. 510 00:24:03,110 --> 00:24:07,860 Но нека да вървим напред и отново Gedit с index.html. 511 00:24:07,860 --> 00:24:13,980 И нека да вървим напред и да кажа здравей CS50, запишете файла, да се върнете в 512 00:24:13,980 --> 00:24:16,260 сваляне, наистина underwhelming промяна. 513 00:24:16,260 --> 00:24:19,130 >> Но какво, ако искаме действително да линк към нещо сега? 514 00:24:19,130 --> 00:24:23,480 Така се оказва, че ние можем да имаме връзки в HTML, които са просто етикети 515 00:24:23,480 --> 00:24:24,140 себе си. 516 00:24:24,140 --> 00:24:27,320 Това се случва, да се нарича котва маркер. един HREF равен 517 00:24:27,320 --> 00:24:33,190 https://www.cs50.net, www.cs50.net близо цитат, в близост скоба. 518 00:24:33,190 --> 00:24:35,230 А сега нека да видим какво останало идва след това. 519 00:24:35,230 --> 00:24:36,500 >> Отворил съм етикет. 520 00:24:36,500 --> 00:24:38,990 Аз сега трябва да му се даде фраза като CS50. 521 00:24:38,990 --> 00:24:40,600 Позволете ми да затворите тага. 522 00:24:40,600 --> 00:24:42,010 И забележи някои неща. 523 00:24:42,010 --> 00:24:45,270 Въпреки че има едно нещо загадъчно тук, аз не съм го многократно, когато 524 00:24:45,270 --> 00:24:46,010 затворите тага. 525 00:24:46,010 --> 00:24:48,230 Просто затворете тагове с името си сами. 526 00:24:48,230 --> 00:24:50,940 И това е, което е известно като атрибут със стойност. 527 00:24:50,940 --> 00:24:56,070 Атрибути само промените поведението на някои етикет вътрешността на страницата. 528 00:24:56,070 --> 00:24:59,150 >> Така че това се уточнява, че хипер препращане, луксозен начин на казвайки на 529 00:24:59,150 --> 00:25:03,660 URL за тази котва, за тази връзка, трябва да бъде CS50.net. 530 00:25:03,660 --> 00:25:07,440 И текста, който искаме да покажем на Потребителят все още не е, че суровото URL, а по-скоро 531 00:25:07,440 --> 00:25:08,730 думата CS50. 532 00:25:08,730 --> 00:25:13,710 >> Така че, ако сега се презареди, нека да увеличи за яснота, нека да презаредите страницата, 533 00:25:13,710 --> 00:25:16,460 забележите, че имаме тази старото училище синьо подчерта връзката. 534 00:25:16,460 --> 00:25:20,000 И ако мишката върху него, и то се случва да бъде трудно да се види, в долния ляв ъгъл 535 00:25:20,000 --> 00:25:23,690 ъгъл на екрана, забележете че той казва, че URL към която 536 00:25:23,690 --> 00:25:24,430 Аз ще отида. 537 00:25:24,430 --> 00:25:27,940 И ако щракнете там, готово, сега аз съм на уеб страници. 538 00:25:27,940 --> 00:25:30,140 И ние се доведе към началната страница. 539 00:25:30,140 --> 00:25:32,670 >> Забележете какво потенциал Това ни предлага. 540 00:25:32,670 --> 00:25:34,890 Сигурността е много на мода тези дни. 541 00:25:34,890 --> 00:25:41,210 Ами ако вместо да каже нещо като това, а аз вместо да отида, да речем, да 542 00:25:41,210 --> 00:25:42,460 виж, fakeCS50.net. 543 00:25:42,460 --> 00:25:44,660 544 00:25:44,660 --> 00:25:46,360 Зареди тази страница. 545 00:25:46,360 --> 00:25:50,180 >> OK, за да забележите, че все още изглежда сякаш съм ще CS50, освен ако проницателен око 546 00:25:50,180 --> 00:25:51,560 Ще забележите, че ще фалшив CS50. 547 00:25:51,560 --> 00:25:54,550 Аз съм се познае този домейн не е взето. 548 00:25:54,550 --> 00:25:55,960 ОК, така че не е на разположение. 549 00:25:55,960 --> 00:25:56,600 Така че, това е добре. 550 00:25:56,600 --> 00:25:57,900 Всъщност никой не е този домейн. 551 00:25:57,900 --> 00:26:00,380 >> Но нека да бъдем малко по-злонамерен защото това е много глупаво. 552 00:26:00,380 --> 00:26:02,240 Ами ако го смените с Paypal. 553 00:26:02,240 --> 00:26:09,960 И какво, ако ние наричаме това, като, www.paypal.badguy.com, 554 00:26:09,960 --> 00:26:12,070 каквото и да е домейн. 555 00:26:12,070 --> 00:26:13,700 Това вероятно съществува. 556 00:26:13,700 --> 00:26:16,260 Така, да се презарежда страницата. 557 00:26:16,260 --> 00:26:22,890 И тук имаме нещо като фишинг атака, Р-Н-I-S-H-I-N-G, който е 558 00:26:22,890 --> 00:26:26,760 глупава дума дадени за атака, че се опитва да риба информация, или, по-добре 559 00:26:26,760 --> 00:26:30,450 Все още, пари, от хора от хитруваш ги в предоставяне на информация, които 560 00:26:30,450 --> 00:26:31,990 те иначе може да не правя. 561 00:26:31,990 --> 00:26:33,500 Това изглежда напълно легитимни, нали? 562 00:26:33,500 --> 00:26:34,930 Трябва да има линк тук, за да Paypal.com. 563 00:26:34,930 --> 00:26:37,700 564 00:26:37,700 --> 00:26:40,430 В интерес на истината, ако я сексапилен с някои графики, можем да го правят да изглежда 565 00:26:40,430 --> 00:26:41,310 по-скоро като PayPal. 566 00:26:41,310 --> 00:26:41,510 Така ли е? 567 00:26:41,510 --> 00:26:43,815 Защото можех, като отмени, Мога да отида да Paypal.com. 568 00:26:43,815 --> 00:26:47,110 И ние току-що видяхме как може да се виж цялата си HTML. 569 00:26:47,110 --> 00:26:50,560 Мога просто да го копирате и пресъздаде естетиката на Paypal, а не отиват 570 00:26:50,560 --> 00:26:51,490 старото училище тук. 571 00:26:51,490 --> 00:26:55,010 Но забележете, разбира се, и това е малко малка още, само в долната 572 00:26:55,010 --> 00:26:59,190 левия ъгъл, като в точка 10 шрифта, виждаш ли какво URL сте 573 00:26:59,190 --> 00:27:01,310 всъщност ще се доведе до. 574 00:27:01,310 --> 00:27:06,580 >> И така, ако някога сте придобили спам казвайки давай напред, а ти си акаунт 575 00:27:06,580 --> 00:27:07,420 е нарушена. 576 00:27:07,420 --> 00:27:10,615 Моля, кликнете на тази връзка и да споделите с нас парола за да можем да се гарантира, че сте 577 00:27:10,615 --> 00:27:13,010 ви, никога не прави това. 578 00:27:13,010 --> 00:27:14,180 Тези неща трябва да се разбира. 579 00:27:14,180 --> 00:27:17,670 Но това е чудесно забавен, и трагична, как всяка година това изглежда 580 00:27:17,670 --> 00:27:19,660 се случи с някои не-нула Броят на хората. 581 00:27:19,660 --> 00:27:21,400 >> И това е красотата от фишинг атаки. 582 00:27:21,400 --> 00:27:23,160 Можете да изпрати един милион имейли. 583 00:27:23,160 --> 00:27:27,720 А дори и 0,01% от хората, които всъщност кликнете върху Paypal и ти дам 584 00:27:27,720 --> 00:27:31,040 парола, това е все още различна от нула номер на хора, които току-що, даващи 585 00:27:31,040 --> 00:27:32,200 ти парите си. 586 00:27:32,200 --> 00:27:36,170 И изпращане на имейли, разбира се, е доста лесно и по същество безплатно 587 00:27:36,170 --> 00:27:36,970 тези дни. 588 00:27:36,970 --> 00:27:40,410 >> Така че, дълга история кратко, чудесно красива идея, нали? 589 00:27:40,410 --> 00:27:44,620 Преди години, това е най-ранната интернет, което позволява на мрежа от 590 00:27:44,620 --> 00:27:46,330 хипервръзки, като ресурс. 591 00:27:46,330 --> 00:27:49,520 Но толкова бързо би могло да бъде използвани за болни цели. 592 00:27:49,520 --> 00:27:54,100 И електронна поща, достатъчно е да се каже, те дни, са вградени в HTML. 593 00:27:54,100 --> 00:27:55,410 >> Е, нека само още едно нещо. 594 00:27:55,410 --> 00:27:58,640 И ние ще отложи до голяма степен на раздел в Проблемът определени седем за да ви позволи да 595 00:27:58,640 --> 00:28:00,000 проучи данните. 596 00:28:00,000 --> 00:28:01,990 Но нека да вървим напред и направите няколко неща тук. 597 00:28:01,990 --> 00:28:04,840 Аз ще ида и обяви , което се нарича дивизия, или 598 00:28:04,840 --> 00:28:06,080 деление на страницата. 599 00:28:06,080 --> 00:28:07,770 Позволете ми да завърша, че таг DIV. 600 00:28:07,770 --> 00:28:11,460 >> И аз ще кажа на тук горе на страницата. 601 00:28:11,460 --> 00:28:14,940 И тогава по-долу това, аз ще направя нещо като друга дивизия, затворете 602 00:28:14,940 --> 00:28:17,800 етикет, и направи дъното на страницата. 603 00:28:17,800 --> 00:28:18,840 И нека си го спести. 604 00:28:18,840 --> 00:28:21,040 >> Така че сега нека се върнем към моя файл. 605 00:28:21,040 --> 00:28:22,120 Много underwhelming. 606 00:28:22,120 --> 00:28:25,520 Но това, което се използва за разделяне, под предния капак, е всъщност 607 00:28:25,520 --> 00:28:26,920 приятно структурен елемент. 608 00:28:26,920 --> 00:28:30,300 Тя не разполага с естетика, доколкото можем да видим, освен, както изглежда, 609 00:28:30,300 --> 00:28:31,890 удар неща на нови линии. 610 00:28:31,890 --> 00:28:36,290 >> Но забележете, Като настрана, просто се разхождаш Въведете не го нарежете на HTML като го 611 00:28:36,290 --> 00:28:39,840 е в C. Може би си мислите, че това е ще сложи хубава голяма разлика между 612 00:28:39,840 --> 00:28:41,300 горната и долната част на страницата. 613 00:28:41,300 --> 00:28:43,420 Но това е игнориран. 614 00:28:43,420 --> 00:28:48,040 White пространство е по същество пренебрегва уеб страници, различни от самото начало 615 00:28:48,040 --> 00:28:51,530 характер бар пространство, или връщане, че ви удари на клавиатурата. 616 00:28:51,530 --> 00:28:55,370 Ако искате повече редове, вие Трябва да си сам да определи. 617 00:28:55,370 --> 00:28:59,080 >> Така че аз ще направя няколко неща, тук, за да покаже какво става. 618 00:28:59,080 --> 00:29:02,700 Отивам да добавите атрибут, че съществува и отново, начина, по който учат 619 00:29:02,700 --> 00:29:07,110 какво атрибути, какво тагове съществуват, наистина, е онлайн справки. 620 00:29:07,110 --> 00:29:09,750 HTML е вид език - това е не е език за програмиране. 621 00:29:09,750 --> 00:29:12,460 Това е език за маркиране - че след добър половин час, може би, един час с 622 00:29:12,460 --> 00:29:15,930 това, със сигурност ще разбере, най- вероятно, основната идея. 623 00:29:15,930 --> 00:29:20,350 И тогава за търсене Google далеч е всичко възможните тагове, които може да 624 00:29:20,350 --> 00:29:21,170 прегледали 625 00:29:21,170 --> 00:29:24,290 И на спецификацията, която е доста Приветствам и насърчавани тук. 626 00:29:24,290 --> 00:29:26,120 >> Така че сега нека да вървим напред и направил нещо подобно. 627 00:29:26,120 --> 00:29:28,690 Фон-цвят. 628 00:29:28,690 --> 00:29:32,060 И сега, аз ще направя нещо като червено, точка и запетая. 629 00:29:32,060 --> 00:29:33,970 И вие можете да направите това в по няколко различни начина. 630 00:29:33,970 --> 00:29:36,770 Аз съм просто един вид го пишете като супер изрично е възможно. 631 00:29:36,770 --> 00:29:41,960 >> Но се оказва, че тази стойност е тук което се нарича CSS, Cascading Style 632 00:29:41,960 --> 00:29:43,700 Листове, което е още един език като цяло. 633 00:29:43,700 --> 00:29:46,770 CSS няма нищо общо с отворите тагове и близки тагове. 634 00:29:46,770 --> 00:29:48,230 Той е свързан с имоти. 635 00:29:48,230 --> 00:29:52,660 >> И свойства са просто ключова стойност двойки, които просто означава няколко думи, 636 00:29:52,660 --> 00:29:54,680 дебелото черво, и след това някои други думи. 637 00:29:54,680 --> 00:29:57,940 И ако имате няколко такива, или само един тук, можете да го завърши с 638 00:29:57,940 --> 00:29:59,390 точка и запетая, само за яснота. 639 00:29:59,390 --> 00:30:01,370 Но това също ще работи тук. 640 00:30:01,370 --> 00:30:02,500 >> Сега какво е това смяташ да правиш? 641 00:30:02,500 --> 00:30:03,610 Можете да се досещате. 642 00:30:03,610 --> 00:30:05,930 Нека да вървим напред и заредете страницата отново. 643 00:30:05,930 --> 00:30:07,300 И сега тя наистина идва заедно. 644 00:30:07,300 --> 00:30:09,150 Така горната част на страницата ми е червен. 645 00:30:09,150 --> 00:30:12,380 Но това, което е ключът тук е, че споменах по-рано, че Div дава 646 00:30:12,380 --> 00:30:13,220 подразделение на страницата. 647 00:30:13,220 --> 00:30:14,410 И това е наистина това, което прави. 648 00:30:14,410 --> 00:30:17,920 По същество той разделя на страницата в правоъгълник, който след това може да 649 00:30:17,920 --> 00:30:18,720 манипулира. 650 00:30:18,720 --> 00:30:22,330 >> И тази идея на правоъгълника е вид убедителни в това, ако мислите, че на 651 00:30:22,330 --> 00:30:26,410 Най-всеки сайт, вероятно има някаква структура към него. 652 00:30:26,410 --> 00:30:29,620 Повечето от вас вероятно са рядко срещани Начална страница на Facebook, ако сте влезли 653 00:30:29,620 --> 00:30:30,440 в цялото време. 654 00:30:30,440 --> 00:30:33,920 >> Но на началната страница на Facebook, има някаква Div в горната. 655 00:30:33,920 --> 00:30:36,140 И това може да не е толкова просто като една дивизия, но има 656 00:30:36,140 --> 00:30:37,560 правоъгълна област има. 657 00:30:37,560 --> 00:30:40,290 В останалата част от страницата е като огромен Div, като много 658 00:30:40,290 --> 00:30:41,910 голяма правоъгълна област. 659 00:30:41,910 --> 00:30:44,540 Така че, дълга история кратко, просто като тези малки блокове сградата, 660 00:30:44,540 --> 00:30:49,250 способността за модела неща като правоъгълници, дали широки или тесни, можете също да 661 00:30:49,250 --> 00:30:53,680 да колони потенциално, ви позволява да изложи страници, наистина, но можете 662 00:30:53,680 --> 00:30:54,100 би искал. 663 00:30:54,100 --> 00:30:56,170 В действителност ние просто чесане повърхността тук. 664 00:30:56,170 --> 00:30:59,820 >> Всъщност, ако го направя още един милион, позволете ми да отида напред и да направим стил, 665 00:30:59,820 --> 00:31:05,410 фон-цвят, ще направим нещо като синьо, близки кавички. 666 00:31:05,410 --> 00:31:06,620 Нека да презаредите тази. 667 00:31:06,620 --> 00:31:08,260 Така че сега, че става още по-грозна. 668 00:31:08,260 --> 00:31:11,520 Но сега мога да вид покаже ми P зададете пет умения, нали? 669 00:31:11,520 --> 00:31:12,690 Red. 670 00:31:12,690 --> 00:31:15,640 Това ми напомня за RGB, Red Зелен Син утроява. 671 00:31:15,640 --> 00:31:19,330 Е, оказва се, в уеб програмиране, или уеб дизайн, който е това, ние имаме 672 00:31:19,330 --> 00:31:21,650 все още не е програмиран нищо сам по себе си, всъщност можете да 673 00:31:21,650 --> 00:31:22,880 имат шестнадесетичен код. 674 00:31:22,880 --> 00:31:26,480 Така че нещо, нещо, нещо нещо, нещо нещо. 675 00:31:26,480 --> 00:31:30,650 Така че можете да имате шест шестнадесетичен символи, или три, в някои случаи, 676 00:31:30,650 --> 00:31:33,480 и всяка от тези въпросителни знаци Трябва да има шестнадесетични цифри, 677 00:31:33,480 --> 00:31:34,985 нула чрез F. 678 00:31:34,985 --> 00:31:41,000 >> Ако искам да имам много червени, и не зелено, а не синьо, какво е 679 00:31:41,000 --> 00:31:43,740 обратното на нула, когато се използва шестнадесетичен? 680 00:31:43,740 --> 00:31:44,480 Това е. 681 00:31:44,480 --> 00:31:51,130 Така че мога да направя FF, нула нула нула нула, запишете това, а сега идвам тук. 682 00:31:51,130 --> 00:31:52,700 И аз всъщност не виждам промяна. 683 00:31:52,700 --> 00:31:56,230 Така че, цитирам цитата "червените" е очевидно синоним за всички червено, 684 00:31:56,230 --> 00:31:57,610 не зелени, не синьо. 685 00:31:57,610 --> 00:31:59,960 В същото време, нека съзнателно променя това да бъде нещо 686 00:31:59,960 --> 00:32:01,210 случаен принцип, като ABCDF. 687 00:32:01,210 --> 00:32:03,790 688 00:32:03,790 --> 00:32:05,860 >> Нека да видим какво е това. 689 00:32:05,860 --> 00:32:08,530 Това е много хубаво синьо, всъщност, бебешко синьо. 690 00:32:08,530 --> 00:32:11,820 Добре, така че това са само сега донякъде произволни комбинации от 691 00:32:11,820 --> 00:32:12,210 героите. 692 00:32:12,210 --> 00:32:13,410 Така че ние няма да получите затънал в тук. 693 00:32:13,410 --> 00:32:15,930 Но отново, това говори за точност че можете да започнете да 694 00:32:15,930 --> 00:32:19,090 прилага - дори ако сте много претоварени от естетиката. 695 00:32:19,090 --> 00:32:21,750 Всъщност, ако наистина искате да бъде впечатлен, позволете ми да отида напред и да се промени 696 00:32:21,750 --> 00:32:23,500 размера на шрифта, например. 697 00:32:23,500 --> 00:32:25,960 И забележи точка и запетая, които Необходимо е там. 698 00:32:25,960 --> 00:32:29,570 >> Размер на шрифта, можем да бъдем просто нелепо тук, 96 точка. 699 00:32:29,570 --> 00:32:31,280 Запази това. 700 00:32:31,280 --> 00:32:33,670 Уау, това е голям размер на шрифта. 701 00:32:33,670 --> 00:32:35,490 Добре, така че е много лесно. 702 00:32:35,490 --> 00:32:38,260 И всъщност, вие сте по същество виждат първата уеб страница, направих 703 00:32:38,260 --> 00:32:40,060 преди години, когато за първи път научих тези неща. 704 00:32:40,060 --> 00:32:42,190 Това е много лесно да се направи много отвратителни неща бързо. 705 00:32:42,190 --> 00:32:46,115 >> И ако сте запознати с Wayback Машина за archive.org, можете 706 00:32:46,115 --> 00:32:48,210 да намеря всички мой отвратителен студент уеб страници. 707 00:32:48,210 --> 00:32:50,090 Човек трябваше Жабока Кърмит на предната част. 708 00:32:50,090 --> 00:32:53,150 Минах през фаза, когато си мислех че е готино да се вземат на фона на 709 00:32:53,150 --> 00:32:56,320 червена завеса, когато научих как могат плочки снимки отново, и отново, и 710 00:32:56,320 --> 00:32:59,540 отново, за да запълни една страница с голяма лепкава червена завеса. 711 00:32:59,540 --> 00:33:03,120 И тогава, на върха на тази, е икона че трябва да кликнете за да влиза моя дом 712 00:33:03,120 --> 00:33:04,960 страница, защото това е много на мода. 713 00:33:04,960 --> 00:33:08,870 >> И тогава първата ми програма, която някога съм писал не е в PHP, но на език 714 00:33:08,870 --> 00:33:12,260 наречен Pearl, написал книга за гости, които е нещо чудесно, че 715 00:33:12,260 --> 00:33:14,250 Много хора очаквате да има на началната страница. 716 00:33:14,250 --> 00:33:17,510 Когато стигнете до страницата, те искате За да влезете, и да кажа, кой си ти, 717 00:33:17,510 --> 00:33:18,720 и защо сте там. 718 00:33:18,720 --> 00:33:21,320 Това е много 1990-те години стил в дизайна на уеб. 719 00:33:21,320 --> 00:33:24,130 >> Но в наши дни, разбира се, ние сме дойде много по-далеч. 720 00:33:24,130 --> 00:33:27,560 И ще видите, в точка, а дори и в проблема определени седем, от 721 00:33:27,560 --> 00:33:31,570 деблокирането библиотеки тези дни, това е много по-лесно да се направи 722 00:33:31,570 --> 00:33:33,400 хубави неща бързо. 723 00:33:33,400 --> 00:33:36,550 Наистина тук, ние просто чесане повърхността на това, което можете да направите, 724 00:33:36,550 --> 00:33:37,400 стилистично. 725 00:33:37,400 --> 00:33:41,660 >> И всъщност, вече, позволете ми да подчертая, че това вече е все грозни, не 726 00:33:41,660 --> 00:33:46,030 само естетически, но и от гледна точка на стила на моя код, или 727 00:33:46,030 --> 00:33:47,260 дизайн на моя код. 728 00:33:47,260 --> 00:33:52,350 Аз в момента comingled HTML, които е най-зеленикави отворени тагове там, с 729 00:33:52,350 --> 00:33:55,160 CSS свойства, които е напълно легален. 730 00:33:55,160 --> 00:33:57,200 Това е наистина, когато езикът имаше своя произход. 731 00:33:57,200 --> 00:34:01,030 >> Но в интерес на изчистен дизайн, много прилича започнахме факторинг неща 732 00:34:01,030 --> 00:34:05,370 вън от файлове в C. файлове ч, нека ми всъщност практикуват този вид 733 00:34:05,370 --> 00:34:07,990 принцип и започнете да правите вместо това. 734 00:34:07,990 --> 00:34:13,280 Нека сложи етикет стил тук, които съществува и в HTML, и ме пусна 735 00:34:13,280 --> 00:34:15,330 зададени следното. 736 00:34:15,330 --> 00:34:16,360 Позволете ми да изтриете това. 737 00:34:16,360 --> 00:34:18,110 Цвят на фона ще бъде червено. 738 00:34:18,110 --> 00:34:19,800 Отивам да изтриете това изцяло. 739 00:34:19,800 --> 00:34:22,580 Отивам да се отървете от стила приписват, и аз отивам да може еднозначно да 740 00:34:22,580 --> 00:34:24,620 идентифицира тази дивизия с една дума - 741 00:34:24,620 --> 00:34:28,750 произволно, но разумно, цитат край на цитата "отгоре". И ID е специален 742 00:34:28,750 --> 00:34:32,530 атрибут, който еднозначно определя определен HTML елемент 743 00:34:32,530 --> 00:34:33,850 като имащи че ID. 744 00:34:33,850 --> 00:34:37,969 >> Ако аз сега искам да го стилизирана, тук, в главата на моята страница, вътрешността на 745 00:34:37,969 --> 00:34:41,730 тагове стил, забележите, че Мога да го направя хеш върха. 746 00:34:41,730 --> 00:34:45,300 И след това мога да сложа няколко къдрава скоби, напомнящ на C и след това оставете 747 00:34:45,300 --> 00:34:47,130 ме поставите в тази стилизация. 748 00:34:47,130 --> 00:34:49,929 И нека да вървим напред тук и да предвидят къде отивам с това. 749 00:34:49,929 --> 00:34:53,380 Позволете ми също така да създадете един за долната дивизия. 750 00:34:53,380 --> 00:34:58,010 Нека вземат този отвратителен кода от определени тук, слага се в тук, и аз ще се 751 00:34:58,010 --> 00:35:00,770 малко повече анален сега и стилизирана го само с пускането нещата сами 752 00:35:00,770 --> 00:35:02,540 линия, завършваща с точка и запетая. 753 00:35:02,540 --> 00:35:04,430 Позволете ми да се отървете от стил тагове. 754 00:35:04,430 --> 00:35:05,320 >> Но аз не съм свършил още. 755 00:35:05,320 --> 00:35:07,406 Трябва да направя още нещо. 756 00:35:07,406 --> 00:35:10,070 Да, ID равнява цитат кавички, "дъното" или каквото ID Искам да 757 00:35:10,070 --> 00:35:11,740 даде този елемент. 758 00:35:11,740 --> 00:35:13,420 А сега нека да се върнем тук. 759 00:35:13,420 --> 00:35:14,360 И това е брутално. 760 00:35:14,360 --> 00:35:15,805 Не мога да се справят с 96 точка. 761 00:35:15,805 --> 00:35:16,960 Да го направим 24 точка. 762 00:35:16,960 --> 00:35:18,320 Или пък може да бъдем по-точни. 763 00:35:18,320 --> 00:35:21,800 Всъщност можете да използвате пиксела, пиксела, така че че наистина се даде жито фина 764 00:35:21,800 --> 00:35:23,220 контрол върху вашия сайт. 765 00:35:23,220 --> 00:35:26,860 >> Като настрана, това не е задължително най-доброто нещо, ако потребителите, за 766 00:35:26,860 --> 00:35:29,650 достъпност причини, искам да да бъде в състояние да увеличи размера. 767 00:35:29,650 --> 00:35:32,650 Така че осъзнават, че има начини за правене на неща, които не е задължително да 768 00:35:32,650 --> 00:35:34,230 твърд код всичко. 769 00:35:34,230 --> 00:35:37,220 >> Добре, така че е по-голям, 24 точка, от каквото и да е по подразбиране. 770 00:35:37,220 --> 00:35:38,630 Но сега това е малко по-чиста. 771 00:35:38,630 --> 00:35:40,230 И нека да се възползвам от една стъпка напред. 772 00:35:40,230 --> 00:35:47,220 Точно като идеята за заглавието файлове, забележите, че сме една крачка по-близо до това. 773 00:35:47,220 --> 00:35:52,000 Имам фактор, но все още са останали, вътрешността на страницата ми, тези CSS правила. 774 00:35:52,000 --> 00:35:56,200 Защо да искам да се възползвам от една стъпка Освен това, премахнете този напълно, и 775 00:35:56,200 --> 00:35:59,860 Сложете го в отделен файл? 776 00:35:59,860 --> 00:36:01,070 >> Така че мога да го повторно, нали? 777 00:36:01,070 --> 00:36:03,155 Това е просто вид на интуицията точно сега. 778 00:36:03,155 --> 00:36:06,340 Преди се твърдеше, че това е просто Първи грозна като стил 779 00:36:06,340 --> 00:36:08,480 характеристики вътрешността на ДСИ себе си. 780 00:36:08,480 --> 00:36:09,750 Но просто вид мисля, че сам. 781 00:36:09,750 --> 00:36:13,560 Както вашата страница получава по-дълго и по-дълго, ако сте пускането тук, и тук, и 782 00:36:13,560 --> 00:36:18,350 тук, и тук, всички тези различни цветове и размери на шрифта, и други подобни 783 00:36:18,350 --> 00:36:22,550 атрибути, вашата страница е много бързо ще станат неуправляеми за вас. 784 00:36:22,550 --> 00:36:24,570 >> Ако някой дойде при вас и казва: О, знаеш ли какво? 785 00:36:24,570 --> 00:36:28,070 Наистина искам да се промени размера на шрифта от две допълнителни точки, можете 786 00:36:28,070 --> 00:36:31,275 Може би трябва да отида и търсене и заместване огромен брой редове код. 787 00:36:31,275 --> 00:36:35,170 Това е много по-убедителен за централизиране всички тези естетика тук. 788 00:36:35,170 --> 00:36:38,850 Но ако искате да се използва повече тези, естетика в множество уеб страници, всички 789 00:36:38,850 --> 00:36:41,100 толкова по-убедителна да, за Например, да създадете файл 790 00:36:41,100 --> 00:36:45,290 нарича с това съдържание. 791 00:36:45,290 --> 00:36:46,680 >> И нека да направим това. 792 00:36:46,680 --> 00:36:51,150 793 00:36:51,150 --> 00:36:51,920 Запишете този файл. 794 00:36:51,920 --> 00:36:55,580 Казвам styles.css, произволно, но конвенционален. 795 00:36:55,580 --> 00:36:58,770 Ще го сложа в дома Джон Харвард директория сега за простота. 796 00:36:58,770 --> 00:37:03,880 И това, което мога да направя в моята уеб страница, е да отърве от стил тагове напълно, 797 00:37:03,880 --> 00:37:08,270 и донякъде unintuitively, използвайте връзката етикет, който не ви дава линк в 798 00:37:08,270 --> 00:37:13,140 хипервръзката, кликва смисъл, но когато казвам връзка, HREF равен 799 00:37:13,140 --> 00:37:15,120 styles.css. 800 00:37:15,120 --> 00:37:20,050 А връзката, че този елемент е с уеб страница е да служи като 801 00:37:20,050 --> 00:37:21,280 си стил лист. 802 00:37:21,280 --> 00:37:22,670 >> И така, как да разбера това? 803 00:37:22,670 --> 00:37:25,950 One, можете просто да прочетете ръководството, или Google наоколо, и вие 804 00:37:25,950 --> 00:37:27,000 Посетете различните ресурси. 805 00:37:27,000 --> 00:37:30,520 Искам да кажа, че наистина е как те взема техники като този, и в съответствие 806 00:37:30,520 --> 00:37:34,720 с тази идея за преподаване себе си ново езици, отново, ще откриете, че 807 00:37:34,720 --> 00:37:38,830 има само краен брой неща на всеки език, който, след като се 808 00:37:38,830 --> 00:37:41,310 тях, вие ще откриете, че става по-бързо и по-бързо да пиша. 809 00:37:41,310 --> 00:37:44,180 Всъщност изучаването на нов програмен език е много по-бързо от нов 810 00:37:44,180 --> 00:37:47,380 говоримия език, защото тези неща са много по-малък и много по- 811 00:37:47,380 --> 00:37:48,820 точно определени. 812 00:37:48,820 --> 00:37:51,590 >> Но аз съм подчертано малко на аномалия тук. 813 00:37:51,590 --> 00:37:57,750 Защо аз изложи този наклонена черта тук? 814 00:37:57,750 --> 00:37:59,420 Защото трябва да затворите тага. 815 00:37:59,420 --> 00:38:00,530 Аз трябва да се затвори етикет. 816 00:38:00,530 --> 00:38:02,750 И вие ще откриете безброй ресурси онлайн, че не 817 00:38:02,750 --> 00:38:04,080 задължително в близост тагове. 818 00:38:04,080 --> 00:38:08,770 И реално, това не е строго необходима по технически и има 819 00:38:08,770 --> 00:38:11,950 причини, свързани с реалността, браузъри са само доста толерантни към грешки в уеб 820 00:38:11,950 --> 00:38:14,360 страници, за добро или за лошо, но най-вече по-лошо. 821 00:38:14,360 --> 00:38:18,830 >> Така че това тук е просто една по-чиста начин на казвайки нещо глупаво като това, 822 00:38:18,830 --> 00:38:22,330 където, ако искате да отворите маркер връзка но я затвори, че наистина няма понятие 823 00:38:22,330 --> 00:38:23,720 на съдържание за връзка етикет. 824 00:38:23,720 --> 00:38:26,000 Това просто означава, зареди това файл и да го сложи тук. 825 00:38:26,000 --> 00:38:30,610 Това е като остър включи в C. Можете да отваряне и затваряне на етикет наведнъж 826 00:38:30,610 --> 00:38:31,660 в рамките на същия етикет. 827 00:38:31,660 --> 00:38:33,520 А има и други примери за това. 828 00:38:33,520 --> 00:38:37,280 Това не е начин да се направи това, но на ДВУСТАЕН етикет, за редове, ако мога 829 00:38:37,280 --> 00:38:41,780 Наистина исках да се постигне това, което беше се опитва да преди, като натиснете Enter, ако 830 00:38:41,780 --> 00:38:45,380 Аз категорично да заявява нов ред, нов ред, нов ред, нов ред, и 831 00:38:45,380 --> 00:38:49,100 след това заредете отново тази страница, сега ще забележите че долната част на страницата е, 832 00:38:49,100 --> 00:38:51,940 наистина, много по-надолу в долната част на страницата. 833 00:38:51,940 --> 00:38:55,840 Но дори и това може да се направи много повече чисто с CSS, и с маржове, 834 00:38:55,840 --> 00:38:58,120 и други подобни естетически техники. 835 00:38:58,120 --> 00:38:59,940 >> Така че за сега, на храна за вкъщи са това. 836 00:38:59,940 --> 00:39:02,320 В HTML, ние имаме тези неща наречени тагове. 837 00:39:02,320 --> 00:39:04,830 В CSS, ние имаме тези неща наречена свойства. 838 00:39:04,830 --> 00:39:08,700 Ние можем да comingle тези два езика, или чрез използване на стил атрибут, 839 00:39:08,700 --> 00:39:14,240 или етикет стил, или най-добре още, факторинг тя съвсем да спре, както правим 840 00:39:14,240 --> 00:39:17,270 в проблем определила 7. 841 00:39:17,270 --> 00:39:23,820 Въпроси, тогава, за концептуалните основи тук? 842 00:39:23,820 --> 00:39:24,740 >> Публика: Аз имам един въпрос. 843 00:39:24,740 --> 00:39:25,630 >> SPEAKER 1: О, съжалявам. 844 00:39:25,630 --> 00:39:28,880 >> Публика: Защо не беше оцветен - 845 00:39:28,880 --> 00:39:31,410 >> SPEAKER 1: О, в другия раздел? 846 00:39:31,410 --> 00:39:32,232 Това тук? 847 00:39:32,232 --> 00:39:33,482 >> Публика: Не, това е като - 848 00:39:33,482 --> 00:39:35,330 849 00:39:35,330 --> 00:39:39,480 >> SPEAKER 1: О, това е така, защото I беше помия. 850 00:39:39,480 --> 00:39:41,350 Сложих файла на грешното място. 851 00:39:41,350 --> 00:39:47,840 Така че, ако аз всъщност го сложи тук, и аз коригирате това, всички + R за styles.css, и 852 00:39:47,840 --> 00:39:52,050 сега се презарежда страницата, сега ние получите стилизация обратно. 853 00:39:52,050 --> 00:39:54,530 И тъй като шрифтовете са различни, ние не виждаме толкова много 854 00:39:54,530 --> 00:39:55,010 празно пространство. 855 00:39:55,010 --> 00:39:58,240 Ние вместо да види какво е подразбиране е вместо това. 856 00:39:58,240 --> 00:40:00,050 Добър въпрос. 857 00:40:00,050 --> 00:40:00,846 Да? 858 00:40:00,846 --> 00:40:02,630 >> Публика: Защо е връзката етикет вътре в заглавието? 859 00:40:02,630 --> 00:40:06,270 >> SPEAKER 1: Защо връзките етикет от вътрешната страна на заглавието - 860 00:40:06,270 --> 00:40:07,650 Краткият отговор, просто защото. 861 00:40:07,650 --> 00:40:08,930 Това е, което беше решено. 862 00:40:08,930 --> 00:40:10,720 Това е, когато връзката тагове отида, когато Имате ли какво е наречена 863 00:40:10,720 --> 00:40:13,650 външен стилов лист. 864 00:40:13,650 --> 00:40:16,430 Други въпроси? 865 00:40:16,430 --> 00:40:17,770 >> Добре, добре да го направим. 866 00:40:17,770 --> 00:40:20,500 Ние имаме толкова много забавно пред нас днес. 867 00:40:20,500 --> 00:40:22,480 Това е просто чесане повърхността на CSS. 868 00:40:22,480 --> 00:40:23,010 Да го направим. 869 00:40:23,010 --> 00:40:25,980 Нека погледнем по пет минути почивка тук защото, на моя имейл, да се мотае в 870 00:40:25,980 --> 00:40:27,200 там до 02:30-Иш днес. 871 00:40:27,200 --> 00:40:28,540 Но ако го направите, трябва да напусне, това е добре. 872 00:40:28,540 --> 00:40:30,380 Но ние ще продължим напред след на пет минути почивка. 873 00:40:30,380 --> 00:40:35,930 И ние ще научите нещо малко за PHP, MySQL и др. 874 00:40:35,930 --> 00:40:44,520 >> Добре, нека се опитаме, сега, да вържеш Някои от тези идеи заедно и да направите, 875 00:40:44,520 --> 00:40:46,180 да речем, нашата собствена търсачка. 876 00:40:46,180 --> 00:40:48,570 Забелязах, скоро любопитство, следното. 877 00:40:48,570 --> 00:40:52,610 Когато сте в Google.com, ти си обикновено на URL като този тук 878 00:40:52,610 --> 00:40:54,870 с нищо след дот ком. 879 00:40:54,870 --> 00:40:59,760 Но ако търсите нещо глупаво като котки и да се натисне Enter, ние ще стигнем - не 880 00:40:59,760 --> 00:41:01,300 глупаво, но нали знаете. 881 00:41:01,300 --> 00:41:05,410 >> OK, за да забележите, в горната част на страницата, Сега, URL е, разбира се, се промени. 882 00:41:05,410 --> 00:41:07,190 И това не е всичко, нова на всеки от нас. 883 00:41:07,190 --> 00:41:09,290 Можете кликнете връзки и неща се случва в интернет. 884 00:41:09,290 --> 00:41:11,420 Но това, което е интересно тук е следното. 885 00:41:11,420 --> 00:41:14,500 Има един куп елементарно, но нека ме изхвърлите неща, които аз не 886 00:41:14,500 --> 00:41:16,600 разбирам или не наистина изглеждат уместни. 887 00:41:16,600 --> 00:41:18,490 >> Позволете ми да се отърва от това. 888 00:41:18,490 --> 00:41:20,030 Позволете ми да се отърва от това. 889 00:41:20,030 --> 00:41:22,630 И нека просто да се отървем от всичко това. 890 00:41:22,630 --> 00:41:28,840 И сега забелязвам, че котките е в URL, последвана от Q, след равен 891 00:41:28,840 --> 00:41:29,710 подпише пред нея. 892 00:41:29,710 --> 00:41:32,110 Така се оказва, че това е начина, по който начина му на работа, когато става въпрос 893 00:41:32,110 --> 00:41:33,360 за вход и изход. 894 00:41:33,360 --> 00:41:37,510 >> Ние дълго говорихме за черни кутии, нали? 895 00:41:37,510 --> 00:41:41,650 Така че, ако това е изпълнява функцията тук като черна кутия, тя отнема вход 896 00:41:41,650 --> 00:41:45,290 и произвежда продукция, както и средствата, , чрез които можете да допринася за една 897 00:41:45,290 --> 00:41:49,270 Сайтът е с другото, често, на неговото URL адреси. 898 00:41:49,270 --> 00:41:52,850 Можете просто да сложи въпросителен знак и след това се равнява на ключовата стойност. 899 00:41:52,850 --> 00:41:56,740 И тогава може би амперсанд, а след това Друг ключов равнява стойност, тогава може би 900 00:41:56,740 --> 00:41:58,810 друга амперсанд, ключова равнява стойност. 901 00:41:58,810 --> 00:42:03,030 Ето как се преминава в клавишите и ценности, чифта входове. 902 00:42:03,030 --> 00:42:07,050 >> Така че, ако аз хит Въведете сега, това, което е интересно за Google е, че всички 903 00:42:07,050 --> 00:42:10,420 че елементарно Изтрих не се появи да е непременно необходимо. 904 00:42:10,420 --> 00:42:15,120 Всичко, което трябва да се изпрати на Google е въпрос марка Q равнява котки, за да получите 905 00:42:15,120 --> 00:42:16,160 резервно някои котки. 906 00:42:16,160 --> 00:42:20,160 Е, влиянието на това, тогава, е, ако аз спра Gedit, аз започнах 907 00:42:20,160 --> 00:42:24,360 направи си собствена търсачка тук във файл, наречен seach0.html. 908 00:42:24,360 --> 00:42:26,750 >> И нека да вървим напред и да изтриете още една линия, която 909 00:42:26,750 --> 00:42:27,910 бяха не трябваше да се види. 910 00:42:27,910 --> 00:42:31,070 А сега, нека да отидат в собствения си браузър, така че да не се Google, и отидете на 911 00:42:31,070 --> 00:42:34,900 http://localhost. 912 00:42:34,900 --> 00:42:36,220 И това ще стане по пътя. 913 00:42:36,220 --> 00:42:43,240 Така че ние ще трябва да се сбогува с че за сега, преместете този тук, 914 00:42:43,240 --> 00:42:46,270 О, сега ще трябва да кажете сбогом на този файл. 915 00:42:46,270 --> 00:42:51,700 >> Винаги, когато имате файл, наречен index.html или index.php в 916 00:42:51,700 --> 00:42:54,980 директория, ако уеб сървър е конфигуриран по този начин, това, което ще 917 00:42:54,980 --> 00:42:59,600 виж, по подразбиране, е съдържанието на тази файл, а не списък на 918 00:42:59,600 --> 00:43:02,330 директория, колкото ми се искаше тук. 919 00:43:02,330 --> 00:43:03,750 Повече за това в спекулация. 920 00:43:03,750 --> 00:43:04,610 Не видя ли, че. 921 00:43:04,610 --> 00:43:06,360 >> Така че това е, което всъщност исках. 922 00:43:06,360 --> 00:43:08,810 Но преди малко, е имало файл в тази папка, наречена 923 00:43:08,810 --> 00:43:11,290 index.html и index.php. 924 00:43:11,290 --> 00:43:13,380 И така, на уеб сървъра е ми показва тези файлове. 925 00:43:13,380 --> 00:43:15,900 Вместо това, аз искам тази директория листинг тук. 926 00:43:15,900 --> 00:43:18,340 >> Така че аз ще отида в CSS и да преминете към search0. 927 00:43:18,340 --> 00:43:21,770 И аз твърдя, че това е тя ще бъде началото на собствения си конкурентен 928 00:43:21,770 --> 00:43:22,490 търсачката. 929 00:43:22,490 --> 00:43:27,630 И за да направите това, аз ще отида в тук, в CSS, и да се отворят с 930 00:43:27,630 --> 00:43:30,190 Gedit, търсене 0. 931 00:43:30,190 --> 00:43:32,280 Но за съжаление, има не много става тук. 932 00:43:32,280 --> 00:43:35,690 Всичко, което направих, беше използването на позиция тагове, които се случва да се нарича h1, които 933 00:43:35,690 --> 00:43:38,180 по същество означава голям и смели, и това е всичко. 934 00:43:38,180 --> 00:43:40,810 Но средствата, чрез които може да предоставяне на съдействие са посредством тези 935 00:43:40,810 --> 00:43:42,180 неща наречени форми. 936 00:43:42,180 --> 00:43:46,040 >> Така че нека да вървим напред и се отваря и затваря, изпреварващо, форма маркер там. 937 00:43:46,040 --> 00:43:48,060 И нека да вървим напред и да направим нещо като това. 938 00:43:48,060 --> 00:43:51,430 Input, тип равнява текст. 939 00:43:51,430 --> 00:43:56,320 И тогава нека да затворите тага в самите скоби. 940 00:43:56,320 --> 00:43:58,800 Не ми трябва да започне текстово поле и да се спре текстово поле. 941 00:43:58,800 --> 00:44:01,080 Той просто ще бъде там или не. 942 00:44:01,080 --> 00:44:06,210 >> И тогава под това, да го направим Вид на входа се равнява изпратете. 943 00:44:06,210 --> 00:44:06,870 Запази това. 944 00:44:06,870 --> 00:44:08,630 А сега нека да направим Бързо здрав разум проверите. 945 00:44:08,630 --> 00:44:09,820 Нека да се презареди. 946 00:44:09,820 --> 00:44:10,890 >> ОК, така че не е зле. 947 00:44:10,890 --> 00:44:13,260 Това не е стил на Google, но това е доста близо. 948 00:44:13,260 --> 00:44:13,920 Има текстовото поле. 949 00:44:13,920 --> 00:44:17,190 Мога да въведете някои неща в, натиснете Enter, но нищо не се случва, все още. 950 00:44:17,190 --> 00:44:21,090 И това е, защото не сте посочили иск за тази форма, така да се каже. 951 00:44:21,090 --> 00:44:23,860 Така че, ако се върнем към формата елемент, Оказва се, че и аз знам това, само 952 00:44:23,860 --> 00:44:27,460 от като прочетете документацията, която формата етикет отнема атрибут 953 00:44:27,460 --> 00:44:31,880 нарича действие, което е URL на сайта, към който 954 00:44:31,880 --> 00:44:34,790 искате да изпратите формуляра. 955 00:44:34,790 --> 00:44:37,610 >> Аз наистина не мисля, че имаме време да изпълнение на целия заден край за 956 00:44:37,610 --> 00:44:38,570 търсите днес двигателя. 957 00:44:38,570 --> 00:44:41,900 Така че ние просто ще кажа, нали, отидете на google.com / търсене. 958 00:44:41,900 --> 00:44:43,450 А сега нека да затворя кавичките. 959 00:44:43,450 --> 00:44:46,070 И нека да се уточни, че по-нататък метода да се използва ще 960 00:44:46,070 --> 00:44:47,120 да се нарича точка. 961 00:44:47,120 --> 00:44:50,650 >> Накратко, има два начина, по малко, че можете да подадете информация 962 00:44:50,650 --> 00:44:51,880 от браузъра, за да сървър. 963 00:44:51,880 --> 00:44:55,340 Един от тях е да, и, за целите на днешните, това означава само в URL. 964 00:44:55,340 --> 00:44:58,730 Вие виждате точно въпросителни знаци, на знака за равенство и амперсанди че 965 00:44:58,730 --> 00:44:59,780 видяхме по-рано. 966 00:44:59,780 --> 00:45:02,890 Или има алтернатива нарича пост. 967 00:45:02,890 --> 00:45:06,490 За сега знаем, че след често се използва когато искате да качвате файлове, като 968 00:45:06,490 --> 00:45:09,820 снимки и т.н., или когато искате да представя информация за кредитната карта, или 969 00:45:09,820 --> 00:45:13,810 пароли, нищо, че това не е така наистина има смисъл, концептуално, или 970 00:45:13,810 --> 00:45:18,020 сигурността мъдър, за да свърши в URL на браузъра, когато е подслушване родителите, 971 00:45:18,020 --> 00:45:21,520 или съквартиранти, или всеки, който има достъп на вашия компютър може да види. 972 00:45:21,520 --> 00:45:23,110 >> Така че нека да спаси това тук. 973 00:45:23,110 --> 00:45:24,480 И аз трябва да направя нещо друго. 974 00:45:24,480 --> 00:45:27,250 Не е достатъчно само да казват ми даде текстовото поле. 975 00:45:27,250 --> 00:45:29,850 Аз трябва да дам, че областта на ценим име. 976 00:45:29,850 --> 00:45:34,500 Така че нека да заеме място на Google на имена, Q, и уточнява, че втората 977 00:45:34,500 --> 00:45:38,150 приписват Не ми пука за името на бутона Submit. 978 00:45:38,150 --> 00:45:40,890 Всичко, което се грижи за подаване това, което потребителят видове инча 979 00:45:40,890 --> 00:45:41,940 >> И сега това е нещо грозно. 980 00:45:41,940 --> 00:45:42,820 Тя просто казва, изпратете. 981 00:45:42,820 --> 00:45:46,350 Оказва се, че и аз знам това от документация, всъщност мога да кажа, 982 00:45:46,350 --> 00:45:51,710 стойност е равна цитат край на цитата "CS50 търсене, за "тясно цитат. 983 00:45:51,710 --> 00:45:53,030 Тогава да се презареди отново. 984 00:45:53,030 --> 00:45:57,020 Така че аз държа удря Command-R, или Control-R на моя клавиатурата, за да презареди. 985 00:45:57,020 --> 00:45:58,605 >> Сега имаме по-интересно търсачката. 986 00:45:58,605 --> 00:46:00,340 Тя не изглежда като доста На Google все още, все пак. 987 00:46:00,340 --> 00:46:04,100 Така че нека да вървим напред в тук и Не малко нов ред. 988 00:46:04,100 --> 00:46:06,066 >> ОК, така че сега имаме Google. 989 00:46:06,066 --> 00:46:08,260 Ние всъщност почти е нужно Google. 990 00:46:08,260 --> 00:46:10,460 И сега какво ще се случи? 991 00:46:10,460 --> 00:46:12,220 Отивам да напишете нещо като котки. 992 00:46:12,220 --> 00:46:16,570 И на браузъра ще се прави разбор тази форма на моето определение. 993 00:46:16,570 --> 00:46:19,470 И това става, за да изпратите ръководство на този URL. 994 00:46:19,470 --> 00:46:23,420 Така че този път, за някои любопитни причина, Имам повече информация за запасите 995 00:46:23,420 --> 00:46:24,410 от около действителните котки. 996 00:46:24,410 --> 00:46:30,580 Но това е добре, защото ние забележите още стигна до тук, е равно котки. 997 00:46:30,580 --> 00:46:35,200 >> Така че, дълга история накратко, изглежда доста тривиално, за да получите информация от страна на потребителя. 998 00:46:35,200 --> 00:46:38,190 И за да бъдем честни, има букети на други видове полетата на формуляра. 999 00:46:38,190 --> 00:46:41,510 Има квадратчетата, и малко по взаимно специалните бутони радио и 1000 00:46:41,510 --> 00:46:42,960 падащи менюта, и др. 1001 00:46:42,960 --> 00:46:46,160 Но всички тези са сравнително лесно изпълнени като 1002 00:46:46,160 --> 00:46:48,040 този текст е полето. 1003 00:46:48,040 --> 00:46:52,050 И в крайна сметка, ние просто трябва да се направи сигурен, че някой не слуша, от друга 1004 00:46:52,050 --> 00:46:56,490 края на линията, за да се получи, че информация, обработвана, по някакъв начин, и 1005 00:46:56,490 --> 00:46:58,440 ни дават обратно нашите котки. 1006 00:46:58,440 --> 00:47:00,840 >> Нека да разгледаме малко по-голямо участие пример. 1007 00:47:00,840 --> 00:47:06,020 Пусни ме в указателя ми Vhost е, в локалния хост, обществени, и където съм 1008 00:47:06,020 --> 00:47:06,980 сложи изходния код на днешния ден. 1009 00:47:06,980 --> 00:47:09,800 Всичко това ще бъде на курса сайт за вас да калайджия с. 1010 00:47:09,800 --> 00:47:15,420 И като отида в froshims, позволете ми да се отвори до този файл сега, froshim0.php. 1011 00:47:15,420 --> 00:47:18,460 Това е малко по-многословен, така ние няма да напиша това от нулата. 1012 00:47:18,460 --> 00:47:21,970 Но точно сега забележите няколко донякъде познати характеристики. 1013 00:47:21,970 --> 00:47:24,550 >> One, формата етикет, различно действие. 1014 00:47:24,550 --> 00:47:25,670 Това не е пълен URL. 1015 00:47:25,670 --> 00:47:29,930 Сега, това е очевидно за файл с име register0.php, тъй като в момента, 1016 00:47:29,930 --> 00:47:32,660 Отивам да се науча малко нещо за PHP, програмиране 1017 00:47:32,660 --> 00:47:37,360 език, защото PHP може да се използва прилагат това, което Google прилага като 1018 00:47:37,360 --> 00:47:39,650 задния край на техните търсачките. 1019 00:47:39,650 --> 00:47:42,890 >> Google, в действителност, вероятно използва някои Python, някои C + +, и 1020 00:47:42,890 --> 00:47:44,230 букети от други езици. 1021 00:47:44,230 --> 00:47:48,230 Но ние със сигурност може да прилага търсене резултати при използване на PHP, ако искахме. 1022 00:47:48,230 --> 00:47:49,610 Но за сега, ние ще продължаваме да го прости. 1023 00:47:49,610 --> 00:47:53,320 И това е действително напомня на една на други първите сайтове I 1024 00:47:53,320 --> 00:47:54,490 направени преди години. 1025 00:47:54,490 --> 00:47:58,160 >> Обратно в моя ден, регистрирани за интрамурални спортове като първокурсник по 1026 00:47:58,160 --> 00:48:00,880 попълване на лист хартия, разходки през двора, и го пуснете в 1027 00:48:00,880 --> 00:48:04,890 пощенската кутия на Proctor в Уигълзуърт, и това е начина, по който 1028 00:48:04,890 --> 00:48:05,460 регистриран. 1029 00:48:05,460 --> 00:48:09,650 И така моя проект малко след CS50, е да се сложи това, което го прави перфектен 1030 00:48:09,650 --> 00:48:13,460 смисъл върху Мрежата, която не е била като на мода тогава, както е сега. 1031 00:48:13,460 --> 00:48:17,510 Но всичко, което трябваше да направя, беше да се създаде, по същество, с HTML форма. 1032 00:48:17,510 --> 00:48:19,640 >> И тази форма погледна приблизително така. 1033 00:48:19,640 --> 00:48:22,480 Имах един вход за първокурсник име. 1034 00:48:22,480 --> 00:48:27,780 Имах друга отметка в квадратчето за това дали или или не са искали да бъде капитан, какво 1035 00:48:27,780 --> 00:48:30,400 пола им е бил, и какво им общежитието беше. 1036 00:48:30,400 --> 00:48:33,370 И тогава трудно кодирани в нещата като Apley съд, и Канадей, 1037 00:48:33,370 --> 00:48:34,880 Сивите, и така нататък. 1038 00:48:34,880 --> 00:48:36,300 >> Така че, отново нови етикети. 1039 00:48:36,300 --> 00:48:39,820 Не съм виждал тези преди, нова характеристики, но доста достъпни. 1040 00:48:39,820 --> 00:48:42,360 След като видим един пример, можете да вид на заемат тази идея и да направи една капка 1041 00:48:42,360 --> 00:48:43,820 меню за почти всичко. 1042 00:48:43,820 --> 00:48:46,350 Но това, което е важното е, че всеки от тези неща си имат имена. 1043 00:48:46,350 --> 00:48:49,720 И в края на тази форма, има на бутона Подаване, чиито етикет, 1044 00:48:49,720 --> 00:48:51,510 или стойност, е да се регистрирате. 1045 00:48:51,510 --> 00:48:52,670 >> Така че нека да отидете на тази страница. 1046 00:48:52,670 --> 00:48:55,050 Нека се върнем в директории. 1047 00:48:55,050 --> 00:48:59,410 Нека да отидат в froshims, и отидете на froshim0.php. 1048 00:48:59,410 --> 00:49:01,150 Така че това е отвратително, за да бъдем честни. 1049 00:49:01,150 --> 00:49:03,950 Така че определено мога да стилизирам това с някои CSS, бих могъл да направя някои 1050 00:49:03,950 --> 00:49:06,890 графика, може би добавите някои цветове, и ще я направи по-красива. 1051 00:49:06,890 --> 00:49:10,530 Но функционално, ще твърдят, че това всъщност е доста пълна. 1052 00:49:10,530 --> 00:49:15,190 >> За съжаление, когато за попълването на формуляра, David, капитан, мъж, ще изберете, 1053 00:49:15,190 --> 00:49:20,510 да речем Matthews, регистър, всичко, което се случва, е това. 1054 00:49:20,510 --> 00:49:21,910 Но забележете няколко храна за вкъщи. 1055 00:49:21,910 --> 00:49:27,130 One, това, което файл върнат тези, резултати, очевидно? 1056 00:49:27,130 --> 00:49:29,470 Така е, наистина, register0.php. 1057 00:49:29,470 --> 00:49:34,570 Така че това, че видяхме, че действията стойност преди малко за register0, това 1058 00:49:34,570 --> 00:49:37,500 потвърждава, че ние наистина приключи На този конкретен файл. 1059 00:49:37,500 --> 00:49:39,040 >> Сега това е само грозен текст. 1060 00:49:39,040 --> 00:49:42,810 Но забележете, че този текст е идващ от локалния хост, 1061 00:49:42,810 --> 00:49:44,170 което е от уреда. 1062 00:49:44,170 --> 00:49:46,350 Помислете за уреда сега като просто уеб сървър, който може да бъде в 1063 00:49:46,350 --> 00:49:46,910 Science Center. 1064 00:49:46,910 --> 00:49:48,060 Тя може да бъде на действителната мрежата. 1065 00:49:48,060 --> 00:49:49,850 Така че това е обществено достъпна. 1066 00:49:49,850 --> 00:49:55,480 >> Затова е ясно, има някакъв начин да се премине образуват полеви входове към сървър 1067 00:49:55,480 --> 00:49:56,840 така че да може да се направи нещо с тях. 1068 00:49:56,840 --> 00:49:59,020 За съжаление, register0 е доста глупаво. 1069 00:49:59,020 --> 00:50:01,870 Всичко, което прави е разпечатате масив , който изглежда така. 1070 00:50:01,870 --> 00:50:04,790 И това не е за масив в смисъл, че ние го знаем. 1071 00:50:04,790 --> 00:50:08,760 Оказва се, че PHP, и много езици, имат не само числено 1072 00:50:08,760 --> 00:50:12,350 индексирани масиви, чиито първи индекс е нула, един, след това две, след точка, 1073 00:50:12,350 --> 00:50:13,780 точка, точка, п минус 1. 1074 00:50:13,780 --> 00:50:16,400 >> Това е това, което се нарича асоциативен масив. 1075 00:50:16,400 --> 00:50:21,150 An асоциативен масив е такъв, в който можете да съхранявате двойки ключови стойности, където 1076 00:50:21,150 --> 00:50:23,160 ключът не е непременно номер. 1077 00:50:23,160 --> 00:50:25,580 Тя може в действителност да е низ, и дума. 1078 00:50:25,580 --> 00:50:28,230 И така, това може да се прилага, под предния капак, се оказва, 1079 00:50:28,230 --> 00:50:31,896 използване на данни структура, известна като? 1080 00:50:31,896 --> 00:50:33,600 Мислех, че нещо драматично щеше да се случи - 1081 00:50:33,600 --> 00:50:34,840 хеш-таблица. 1082 00:50:34,840 --> 00:50:38,955 >> Така че една хеш-таблица, изземване, тези от вас, кой го е направил за набор P 6 или дори припомни, 1083 00:50:38,955 --> 00:50:44,110 това, най-малко, дори и да направи опит, а хеш таблица, в нашата употреба, се използва за 1084 00:50:44,110 --> 00:50:45,090 само съхранява думи. 1085 00:50:45,090 --> 00:50:47,980 Но наистина, вие сте били съхранение ключове и стойности. 1086 00:50:47,980 --> 00:50:51,940 Ако реализира хеш таблица за P настроите 6 речник, клавишите са 1087 00:50:51,940 --> 00:50:56,890 самите думи, и стойностите на практика бяха истина или лъжа. 1088 00:50:56,890 --> 00:51:00,190 Да, тук, или косвено, Не, не е тук. 1089 00:51:00,190 --> 00:51:02,140 >> Е, можем да обобщим, че идеята. 1090 00:51:02,140 --> 00:51:06,230 И можем да използваме много подобни данни структура, която да се съхранява не на низ 1091 00:51:06,230 --> 00:51:10,180 се сам в хеш таблицата, но Предполагам, че във всеки един от вашите хеш 1092 00:51:10,180 --> 00:51:11,130 маса на възли. 1093 00:51:11,130 --> 00:51:14,210 И вие дори може да направи това в опит а не просто да има булев. 1094 00:51:14,210 --> 00:51:15,350 Вие може да има нещо друго. 1095 00:51:15,350 --> 00:51:19,590 Ами ако ключът не е Максуел, за Например, но цитирам цитата "име", или 1096 00:51:19,590 --> 00:51:22,900 цитирам цитата "капитан". А вътре на си C структурата на данните, сложите 1097 00:51:22,900 --> 00:51:26,170 стойност, а не само булеви, но на стойност като цитат край на цитата "Давид", или 1098 00:51:26,170 --> 00:51:28,690 "М" или "Matthews," и така нататък. 1099 00:51:28,690 --> 00:51:33,170 >> Така че същите тези структури от данни, които използвахме очевидно съществуват и в други езици. 1100 00:51:33,170 --> 00:51:37,650 И бих твърдят, те са всъщност много, много по-лесно за достъп до тук. 1101 00:51:37,650 --> 00:51:40,300 Нека всъщност да разгледаме сега в някои такива синтаксис. 1102 00:51:40,300 --> 00:51:43,120 >> Аз ще отида в директорията PHP. 1103 00:51:43,120 --> 00:51:48,390 И аз ще се отвори по-добра версия на здравей-0 от преди. 1104 00:51:48,390 --> 00:51:50,270 Забележете, че всичко, което направих, беше добави някои коментари. 1105 00:51:50,270 --> 00:51:52,530 Така че можем да се отървем от това отвличане на вниманието. 1106 00:51:52,530 --> 00:51:57,610 >> И тази програма наистина отпечатва Здравейте, защото съм уточни между 1107 00:51:57,610 --> 00:52:01,420 тагове, които искам да се изпълни този код. 1108 00:52:01,420 --> 00:52:03,380 Сега, ние ще видим след малко защо това е полезно. 1109 00:52:03,380 --> 00:52:05,630 Но да отворим още един пример тук. 1110 00:52:05,630 --> 00:52:10,430 Нека да вървим напред и да се отворят кажа, Gedit условия един. 1111 00:52:10,430 --> 00:52:12,970 >> Това е начин назад във времето сега. 1112 00:52:12,970 --> 00:52:16,320 Но преди седмици, мисля, че в една седмица или седмица две, имахме нарича например 1113 00:52:16,320 --> 00:52:18,470 conditions1.c. 1114 00:52:18,470 --> 00:52:22,050 И реших да го reimplement в PHP, просто някак да се подчертае, че 1115 00:52:22,050 --> 00:52:26,500 PHP, синтактично, е почти идентичен да C. Това не е огромен скок 1116 00:52:26,500 --> 00:52:27,840 от миналата седмица за това. 1117 00:52:27,840 --> 00:52:31,230 >> Забележете, в горната част на тази програма, която започва, както и преди, с някои 1118 00:52:31,230 --> 00:52:34,260 Коментарите, които ще се отървете на като отвличане на вниманието. 1119 00:52:34,260 --> 00:52:37,410 Забележете, че аз съм в PHP режим в този файл. 1120 00:52:37,410 --> 00:52:40,160 Така че този код, ще видим, ще се изпълни. 1121 00:52:40,160 --> 00:52:42,670 Забележете, че има Readline, които е вероятно 1122 00:52:42,670 --> 00:52:46,230 аналогов в PHP на getstring. 1123 00:52:46,230 --> 00:52:47,390 Забележете, това е малко по-различна. 1124 00:52:47,390 --> 00:52:51,410 Вие всъщност посочите ред на функция, наречена прочетете ред, и това е 1125 00:52:51,410 --> 00:52:52,180 това, което потребителят вижда. 1126 00:52:52,180 --> 00:52:53,520 Така че не е нужно да ФОРМАТ ръчно. 1127 00:52:53,520 --> 00:52:54,860 Но това не е голяма работа. 1128 00:52:54,860 --> 00:52:59,150 Отивам да съхранявате, вътрешността на $ М, на върне стойността на това, така че независимо от 1129 00:52:59,150 --> 00:53:00,490 потребителят е в тяхната вътр. 1130 00:53:00,490 --> 00:53:01,660 Ето и още един любопитство. 1131 00:53:01,660 --> 00:53:05,810 Оказва се, че в PHP, всяка променлива просто трябва да се предшества 1132 00:53:05,810 --> 00:53:06,970 със знака за долар. 1133 00:53:06,970 --> 00:53:08,110 Това е малко досадно. 1134 00:53:08,110 --> 00:53:10,870 Забележете какво не съм направил в PHP. 1135 00:53:10,870 --> 00:53:13,980 Какво липсва на лявата ръка страна на знак за равенство? 1136 00:53:13,980 --> 00:53:15,430 >> Не се споменава от тип. 1137 00:53:15,430 --> 00:53:19,400 Това е различно от C. За по-добро или за лошо, PHP е свободно 1138 00:53:19,400 --> 00:53:20,550 типов език. 1139 00:53:20,550 --> 00:53:22,010 Тя има номера. 1140 00:53:22,010 --> 00:53:23,240 Тя има струни. 1141 00:53:23,240 --> 00:53:24,015 Тя има Булев. 1142 00:53:24,015 --> 00:53:26,220 И тя има няколко други типове данни. 1143 00:53:26,220 --> 00:53:30,570 Но вие, програмист, обикновено не трябва да се грижи за тях. 1144 00:53:30,570 --> 00:53:34,010 В главата за това е, че го прави малко по-лесно да програма. 1145 00:53:34,010 --> 00:53:35,380 Можете да мислите малко по-малко. 1146 00:53:35,380 --> 00:53:39,840 Недостатъкът е, но и ви се отваря до потенциални бъгове ако случайно 1147 00:53:39,840 --> 00:53:43,080 лечение на редица като низ, низ като число, потенциално, но дори 1148 00:53:43,080 --> 00:53:46,150 След това, PHP, и много езици, са доста толерантни. 1149 00:53:46,150 --> 00:53:49,050 Те ще използват това, което се нарича имплицитно леене. 1150 00:53:49,050 --> 00:53:55,220 И ако се опитате да използвате п в контекста на числов ситуация, то ще 1151 00:53:55,220 --> 00:53:58,040 конвертирате което тук ще бъде низ, защото, ако потребителят 1152 00:53:58,040 --> 00:54:01,570 нещо, и ще получите резултат, като с Readline, или да получите низ, 1153 00:54:01,570 --> 00:54:02,910 че ще се върне низ. 1154 00:54:02,910 --> 00:54:07,360 >> Но забележете, няколко реда по-късно, проверете дали п е по-голямо от нула. 1155 00:54:07,360 --> 00:54:13,370 Така че PHP ще имплицитно хвърля "Низ" 123, или каквото и ръководство 1156 00:54:13,370 --> 00:54:14,860 видове в, във Int. 1157 00:54:14,860 --> 00:54:18,730 Така че, накратко, нещата просто работи много по-интуитивно. 1158 00:54:18,730 --> 00:54:23,410 Така че ние сега започват да се отпуснете няколко от неща, които сме правили в миналото. 1159 00:54:23,410 --> 00:54:24,780 >> Много от тези неща е същото, все пак. 1160 00:54:24,780 --> 00:54:26,340 Все още имат равен равни. 1161 00:54:26,340 --> 00:54:30,350 Като настрана PHP също е равен равен равен, но повече за това, може би, в 1162 00:54:30,350 --> 00:54:30,850 бъдеще. 1163 00:54:30,850 --> 00:54:31,150 Това беше. 1164 00:54:31,150 --> 00:54:35,660 Типо но два знака за равенство означава същото нещо, както и преди, за сравнение. 1165 00:54:35,660 --> 00:54:37,060 ФОРМАТ означава едно и също нещо, както преди. 1166 00:54:37,060 --> 00:54:39,160 Обратно наклонена черта п означава същото нещо, както преди. 1167 00:54:39,160 --> 00:54:40,390 >> Е, как да стартирате тази програма? 1168 00:54:40,390 --> 00:54:44,400 Е, както и преди, ако го направя, PHP, conditions1.php, и въведете 1169 00:54:44,400 --> 00:54:46,560 редица като 123. 1170 00:54:46,560 --> 00:54:47,720 Това е положително число. 1171 00:54:47,720 --> 00:54:49,510 Ако въведете 0, I вземете 0. 1172 00:54:49,510 --> 00:54:53,700 И ако напишете в отрицателна 123, получавам резервно отрицателно число, което е само 1173 00:54:53,700 --> 00:54:59,050 да се каже, синтактично, PHP е супер, супер сходни. 1174 00:54:59,050 --> 00:55:03,250 >> Така че, защо е това сега полезно в уеб контекст? 1175 00:55:03,250 --> 00:55:06,710 Е, нека се върнем към този froshims Например, който изглеждаше, 1176 00:55:06,710 --> 00:55:08,600 отново, като този тук. 1177 00:55:08,600 --> 00:55:11,580 И нека действително издърпайте уеб страница отново, което изглеждаше така. 1178 00:55:11,580 --> 00:55:14,930 Какво можем да направим с данни, които представени? 1179 00:55:14,930 --> 00:55:18,770 >> Е, нека се отворят по-нова версия на тази. 1180 00:55:18,770 --> 00:55:20,920 И ще видите, че проблемът комплекти спецификация ви води 1181 00:55:20,920 --> 00:55:22,850 чрез няколко от тях. 1182 00:55:22,850 --> 00:55:29,610 Вместо да започнем с нула, нека да разгледаме froshims3, 1183 00:55:29,610 --> 00:55:31,410 което прави малко повече. 1184 00:55:31,410 --> 00:55:34,780 >> Забележете, първо, действително, да отворим това, което е 0, така че виждате 1185 00:55:34,780 --> 00:55:37,170 какво е регистър 0. 1186 00:55:37,170 --> 00:55:40,040 Забележете какво регистър 0 направих. 1187 00:55:40,040 --> 00:55:41,730 Едно, имам коментари на върха. 1188 00:55:41,730 --> 00:55:43,900 Изтриване на тези и се съсредоточи само върху това. 1189 00:55:43,900 --> 00:55:48,730 Повечето от съдържанието на register0.php са, очевидно, на какъв език? 1190 00:55:48,730 --> 00:55:49,980 Просто сурово PHP. 1191 00:55:49,980 --> 00:55:53,430 >> Така предизвестие, този файл не започне с, в момента, отворена скоба, 1192 00:55:53,430 --> 00:55:54,970 въпросителен знак, PHP. 1193 00:55:54,970 --> 00:55:59,800 PHP ви позволява да общувам PHP код с HTML тагове. 1194 00:55:59,800 --> 00:56:04,130 Но аз съм направил, че тук вътре на страницата тук. 1195 00:56:04,130 --> 00:56:08,180 >> Сега, отново, ще знаят само това от като погледна към ръководството. print_r, 1196 00:56:08,180 --> 00:56:13,410 Оказва се, че е print_recursive. _recursive И това е само удобен 1197 00:56:13,410 --> 00:56:16,780 функцията на полезността, че просто отпечатва, рекурсивно, каквото и да го предаде. 1198 00:56:16,780 --> 00:56:18,760 Ако го предаде масив, това ще отпечатате масив. 1199 00:56:18,760 --> 00:56:20,180 Ако го предаде на номер, това ще отпечатате номер. 1200 00:56:20,180 --> 00:56:21,570 Страна, низ, ще отпечатване на низ. 1201 00:56:21,570 --> 00:56:24,500 Ако го предаде на хеш таблицата, тя ще отпечатате хеш таблица. 1202 00:56:24,500 --> 00:56:26,730 Не е нужно да напишете всички на себе си, че код. 1203 00:56:26,730 --> 00:56:29,490 >> Сега забелязвам, че Влизам PHP режим тук. 1204 00:56:29,490 --> 00:56:32,070 Аз излизане PHP режим тук. 1205 00:56:32,070 --> 00:56:35,950 Така че, когато уеб сървър чете този файл горе до долу, от ляво на дясно, защото 1206 00:56:35,950 --> 00:56:40,750 тя завършва с име на т.нар. PHP, всичко, което не е вътре в тагове PHP е 1207 00:56:40,750 --> 00:56:42,820 Просто ще се плюе навън, като суров HTML. 1208 00:56:42,820 --> 00:56:43,630 Не е голяма работа. 1209 00:56:43,630 --> 00:56:49,280 Но веднага след като уеб сървъра забелязва това, той ще каже, че не трябва 1210 00:56:49,280 --> 00:56:51,850 изплюе, буквално, print_r на мнение. 1211 00:56:51,850 --> 00:56:54,910 Трябваше изпълнете следната ред код. 1212 00:56:54,910 --> 00:56:59,850 >> Така че на последния въпрос, а след това, на този файл е, добре, какво по дяволите е това? 1213 00:56:59,850 --> 00:57:00,530 Вземете предположение. 1214 00:57:00,530 --> 00:57:04,230 Какво е $ _POST, може би? 1215 00:57:04,230 --> 00:57:07,070 >> Публиката: [недоловим] 1216 00:57:07,070 --> 00:57:08,830 >> SPEAKER 1: Да, публикуваните данни. 1217 00:57:08,830 --> 00:57:11,350 Спомнете си, нека да превъртите обратно в време само за миг. 1218 00:57:11,350 --> 00:57:13,165 froshim0, отново, изглеждаше така. 1219 00:57:13,165 --> 00:57:15,640 А супер-голямата част от това е само HTML. 1220 00:57:15,640 --> 00:57:18,410 Отново, някои тагове не сте виждал още, или с които 1221 00:57:18,410 --> 00:57:19,360 вече сте запознати. 1222 00:57:19,360 --> 00:57:21,990 Но интересното беше това. 1223 00:57:21,990 --> 00:57:27,270 Тази линия е това, което наистина свързва то в нашия register0.php файл. 1224 00:57:27,270 --> 00:57:29,200 Аз съм подаване чрез метод мнение. 1225 00:57:29,200 --> 00:57:33,130 Това означава, че параметрите потребителят пише в не са 1226 00:57:33,130 --> 00:57:35,150 ще свърши къде. 1227 00:57:35,150 --> 00:57:36,175 >> Те няма да показва в URL. 1228 00:57:36,175 --> 00:57:39,020 Те все още ще бъде изпратено от клиента, от сваляне, за 1229 00:57:39,020 --> 00:57:42,080 сървър, но чрез някои други механизъм, който ще се откаже нашите ръце 1230 00:57:42,080 --> 00:57:44,330 в за днес, но не е в URL. 1231 00:57:44,330 --> 00:57:47,630 Но забележете връзката сега с мнение, което, по силата на споразумение, е 1232 00:57:47,630 --> 00:57:49,160 малки букви тук. 1233 00:57:49,160 --> 00:57:54,090 >> Но ако се отвори register0.php, Аз очевидно отпечатване това. 1234 00:57:54,090 --> 00:57:56,450 Така че това е нещо странно именуване. 1235 00:57:56,450 --> 00:58:01,430 Но това, което е хубаво в PHP е, че когато използване на PHP в Мрежата контекст, не по- 1236 00:58:01,430 --> 00:58:04,480 командния ред, както направих аз преди малко, когато сте в действителност тя се използва на уеб 1237 00:58:04,480 --> 00:58:10,580 страница, в Vhost директория като нас, автоматично ще запълни тази PHP 1238 00:58:10,580 --> 00:58:15,560 нещо, което е асоциативен масив, така да се каже, хеш таблица, с 1239 00:58:15,560 --> 00:58:17,290 всичко на потребителя написали инча 1240 00:58:17,290 --> 00:58:22,000 >> С една дума, $ _POST във всички капачки е глобална променлива PHP, че само 1241 00:58:22,000 --> 00:58:25,050 магически създава за вас, когато използване на PHP в Мрежата контекст. 1242 00:58:25,050 --> 00:58:29,160 И това поставя вътре в него всички Имената на параметри под формата, че 1243 00:58:29,160 --> 00:58:33,200 бе подадено до този файл и всички стойностите, че потребителят въвели инча 1244 00:58:33,200 --> 00:58:37,790 Така че я подава ли това, което потребителят въвели в този вид. 1245 00:58:37,790 --> 00:58:42,210 >> Така че, преди, имаме наистина глупаво изход на просто виждам това, защото всичко, което направих 1246 00:58:42,210 --> 00:58:44,400 е рекурсивно отпечатате този масив. 1247 00:58:44,400 --> 00:58:46,060 Ключът е името, стойността е Дейвид. 1248 00:58:46,060 --> 00:58:46,980 Ключът е капитан. 1249 00:58:46,980 --> 00:58:47,970 Стойността е включен. 1250 00:58:47,970 --> 00:58:52,300 И двойна стрелка и ъгъла скоба има, това е само произволно. 1251 00:58:52,300 --> 00:58:53,270 Това не е код. 1252 00:58:53,270 --> 00:58:57,690 Това е просто начин на PHP на ви показва каква е стойността на някои основни е. 1253 00:58:57,690 --> 00:59:03,000 >> Но сега нека да предложи в froshIMs3, това е почти идентичен 1254 00:59:03,000 --> 00:59:04,950 с изключение го представя този файл. 1255 00:59:04,950 --> 00:59:08,570 И отново, ние ще вид само погледне това, само за да видя някои 1256 00:59:08,570 --> 00:59:12,040 синтаксис, но забележете какво този файл прави. 1257 00:59:12,040 --> 00:59:14,930 Да предположите само въз основа на линиите на код, който може би ми приличаш 1258 00:59:14,930 --> 00:59:17,410 Гръцки, до известна степен, е очевидно прави. 1259 00:59:17,410 --> 00:59:20,580 1260 00:59:20,580 --> 00:59:23,110 >> Този файл е по някакъв начин свързана на поща, електронна поща. 1261 00:59:23,110 --> 00:59:24,770 И така, какво е тази програма правиш? 1262 00:59:24,770 --> 00:59:28,740 В тази версия, ако аз действително попълнете този формуляр - за да си отида до 1263 00:59:28,740 --> 00:59:30,760 froshIMs3 не froshIMs0 - 1264 00:59:30,760 --> 00:59:33,280 1265 00:59:33,280 --> 00:59:34,540 формата изглежда по същия начин. 1266 00:59:34,540 --> 00:59:37,980 David, капитан, мъж, общежитието, Matthews. 1267 00:59:37,980 --> 00:59:42,980 Но ако подам това, този файл е ще отида да register3.php. 1268 00:59:42,980 --> 00:59:46,330 >> И аз твърдя, като погледнете в това е изходния код, това ще 1269 00:59:46,330 --> 00:59:47,650 някак си да включва имейл. 1270 00:59:47,650 --> 00:59:49,620 Позволете ми да отида напред и да отворите този в по-голяма прозорец, така че ние 1271 00:59:49,620 --> 00:59:51,030 можете да го видите по-чисто. 1272 00:59:51,030 --> 00:59:57,220 Ние сме в Vhosts, локалния хост, обществеността, froshims. 1273 00:59:57,220 --> 00:59:58,680 Ще се отвори друг програма, за да сме 1274 00:59:58,680 --> 01:00:00,160 може да видите повече наведнъж. 1275 01:00:00,160 --> 01:00:03,100 >> Така че сега, тук, обърнете внимание на няколко неща. 1276 01:00:03,100 --> 01:00:06,530 В горната част на файла е отворен скоба, въпросителен знак, PHP. 1277 01:00:06,530 --> 01:00:08,920 След това има един куп коментари, които ние можем да пренебрегнем, е 1278 01:00:08,920 --> 01:00:10,450 безинтересно за сега. 1279 01:00:10,450 --> 01:00:11,300 >> Сега има това. 1280 01:00:11,300 --> 01:00:14,200 Оказва се, PHP има много на код, наречен изискват. 1281 01:00:14,200 --> 01:00:19,110 Много подобни по дух на C е включват, хеш включват, които 1282 01:00:19,110 --> 01:00:21,980 същество грабва съдържанието на някои друг файл и просто да ги Plops тук, 1283 01:00:21,980 --> 01:00:22,930 така че можете да ги използвате. 1284 01:00:22,930 --> 01:00:27,060 В този случай, уредът има, предварително инсталиран, библиотека, свободен и 1285 01:00:27,060 --> 01:00:29,900 библиотека отворен код наречен PHP писмото, че всеки може да 1286 01:00:29,900 --> 01:00:30,770 изтеглите от интернет. 1287 01:00:30,770 --> 01:00:32,000 Ние просто го е направил за вас. 1288 01:00:32,000 --> 01:00:36,130 А това означава, че сега имам имейл функционалност на мое разположение. 1289 01:00:36,130 --> 01:00:38,170 >> Сега забележите няколко неща. 1290 01:00:38,170 --> 01:00:41,120 Отивам да валидира форма на представяне. 1291 01:00:41,120 --> 01:00:45,980 Оказа се, PHP, едно, има удивителен точки от не оператор, точно като 1292 01:00:45,980 --> 01:00:49,810 C. Но PHP също така има функция нарича празна. 1293 01:00:49,810 --> 01:00:53,920 >> Empty се връща истина, ако стойността на нещо, което го предайте в 1294 01:00:53,920 --> 01:00:57,190 скоби е празна, като потребител не объркате нещо инча 1295 01:00:57,190 --> 01:01:02,680 Така че това се казва, и забележи, че синтаксис, много напомня на C, ако 1296 01:01:02,680 --> 01:01:07,730 Име ключ, така името на полето във формата, която е подадена по пощата, чрез 1297 01:01:07,730 --> 01:01:13,010 указание, не е за да се изпразни, и тяхното полът не е празна във формата, в 1298 01:01:13,010 --> 01:01:15,980 добре, и си общежитието, не е празна - 1299 01:01:15,980 --> 01:01:19,980 Забелязах, че не ми пука за капитан, тогава какво ще правим? 1300 01:01:19,980 --> 01:01:21,990 >> Отивам да се изпълни този ред код. 1301 01:01:21,990 --> 01:01:24,100 И вие можете да мислите за този вид като изчистване, но това е малко 1302 01:01:24,100 --> 01:01:24,800 любител от това. 1303 01:01:24,800 --> 01:01:29,200 Но за сега това ми дава специална структура от тип PHP писмото. 1304 01:01:29,200 --> 01:01:31,410 Но игнорира ключовата дума нова за днес. 1305 01:01:31,410 --> 01:01:35,670 >> Сега ще се обадя на функция, наречена IsSMTP, в която се казва, използвайте SMTP. 1306 01:01:35,670 --> 01:01:39,380 Това е порт 25, точно като на видео миналата седмица, когато нещо се хвърлят 1307 01:01:39,380 --> 01:01:40,710 имейли в защитната стена. 1308 01:01:40,710 --> 01:01:42,440 Port 25 е SMTP. 1309 01:01:42,440 --> 01:01:44,410 SMTP означава използване на сървър за електронна поща. 1310 01:01:44,410 --> 01:01:46,215 Кой от тях, можем да използваме Харвард SMTP.fas.harvard.edu. 1311 01:01:46,215 --> 01:01:48,850 1312 01:01:48,850 --> 01:01:51,590 >> Можем да зададете от адрес да бъде Джон Харвард. 1313 01:01:51,590 --> 01:01:55,090 Ако превъртете надолу, по-нататък, аз да настроите адреса на получателя, само 1314 01:01:55,090 --> 01:01:56,840 произволно, за да бъде John Харвард е, както добре. 1315 01:01:56,840 --> 01:01:59,210 Така той ще бъде себе си електронната поща. 1316 01:01:59,210 --> 01:02:01,600 >> Сега мога да зададете този въпрос за регистрация. 1317 01:02:01,600 --> 01:02:03,700 И мога да настроите тялото на електронна поща, както следва. 1318 01:02:03,700 --> 01:02:06,500 Тази линия изглежда малко по-загадъчен, но това е само, защото има много 1319 01:02:06,500 --> 01:02:07,450 на информация в него. 1320 01:02:07,450 --> 01:02:10,670 One, има една точка оператор. 1321 01:02:10,670 --> 01:02:14,510 Някой трябва да знае вече какво операторът точка прави. 1322 01:02:14,510 --> 01:02:15,436 Това е конкатенация. 1323 01:02:15,436 --> 01:02:19,240 Така че, ако искате да вземете низ в PHP, и да ги добавите, или да го добавя нищо, за да 1324 01:02:19,240 --> 01:02:23,500 друг низ в PHP, благодаря ти Бог не трябва да се използва strcopy и изчистване, 1325 01:02:23,500 --> 01:02:25,490 и всичко това вече. 1326 01:02:25,490 --> 01:02:28,765 >> Ако искате да се слеят две струни, който се грижи за паметта. 1327 01:02:28,765 --> 01:02:30,850 Нека PHP цифра, която за вас. 1328 01:02:30,850 --> 01:02:35,200 Какво PHP ще направи с оператора точка Тук е само да направи голяма присъда от 1329 01:02:35,200 --> 01:02:37,900 на тази линия, тази линия, тази линия, тази линия. 1330 01:02:37,900 --> 01:02:40,460 И сега известие, че ще да се включите в ценности. 1331 01:02:40,460 --> 01:02:43,680 Така на имейл, че Джон Харвард става да получават буквално ще каже 1332 01:02:43,680 --> 01:02:49,450 име, дебелото черво, нещо, по-скоро, тогава ние затворете низ и свързвам на 1333 01:02:49,450 --> 01:02:52,220 независимо от потребителя написали в, а след това на нов ред. 1334 01:02:52,220 --> 01:02:54,570 >> След това, на следващия ред на Джон Харвард електронна поща, тя ще каже 1335 01:02:54,570 --> 01:02:55,910 Капитане, On или нищо. 1336 01:02:55,910 --> 01:02:57,810 Той ще каже пол, мъж или жена. 1337 01:02:57,810 --> 01:02:59,680 Dorm ще бъде Matthews в моя случай. 1338 01:02:59,680 --> 01:03:03,400 И тогава забележите запознати запетая в самия край. 1339 01:03:03,400 --> 01:03:07,830 И след това, тук долу, надпис, донякъде загадъчен все още, но отново, след 1340 01:03:07,830 --> 01:03:12,730 модел, който ще стане по-запознати след P определила 7, ако изпращане на поща 1341 01:03:12,730 --> 01:03:16,610 връща фалшиви, след което продължете напред и да умре. 1342 01:03:16,610 --> 01:03:19,610 >> Така че PHP има функция, наречена матрица, което, буквално, просто убива 1343 01:03:19,610 --> 01:03:22,830 сайт и просто отпечатва независимо ти го кажа - си умира 1344 01:03:22,830 --> 01:03:24,280 думи, така да се каже. 1345 01:03:24,280 --> 01:03:28,310 И това, в случая, той ще отпечата какво грешката информация е за 1346 01:03:28,310 --> 01:03:29,860 каквото и да стане да се объркат. 1347 01:03:29,860 --> 01:03:34,490 Така че, дълга история накратко тук, това, което имаме е пример, където, когато потребителят 1348 01:03:34,490 --> 01:03:39,150 предава форма, froshim0, froshims3.php, той отива при 1349 01:03:39,150 --> 01:03:40,760 register3.php. 1350 01:03:40,760 --> 01:03:45,290 Но register3.php след това продължава да изпълни всички тези линии. 1351 01:03:45,290 --> 01:03:46,620 >> Така че има няколко отсечки доведе тук. 1352 01:03:46,620 --> 01:03:50,380 Едно, че е очевидно доста лесно, програмно, да изпращате имейли, 1353 01:03:50,380 --> 01:03:50,830 , което е добро. 1354 01:03:50,830 --> 01:03:53,500 Когато потребителите се регистрират за сайта си, в този случай, когато се регистрират за 1355 01:03:53,500 --> 01:03:56,220 спорт, можете да пишете на първокурсник Proctor, или John 1356 01:03:56,220 --> 01:03:57,650 Харвард, в този случай. 1357 01:03:57,650 --> 01:04:01,630 >> Но той също така означава, че може да направи какво? 1358 01:04:01,630 --> 01:04:03,970 Изпращане на имейли от никого на никого. 1359 01:04:03,970 --> 01:04:05,430 И това е много вярно. 1360 01:04:05,430 --> 01:04:08,580 Това не е толкова лесно да се направи, ако сте свикнали да използвате Gmail. 1361 01:04:08,580 --> 01:04:11,310 Но ако някога сте се използва Eudora или Outlook, можете да хубав много разкажа една 1362 01:04:11,310 --> 01:04:13,720 сървър за електронна поща, които сте всеки, който желаете. 1363 01:04:13,720 --> 01:04:16,450 И това е мястото, където трябва да се постави на тази шапка и да кажа, не го прави. 1364 01:04:16,450 --> 01:04:21,140 Но това е свидетелство за това колко лесно е да изпълнява фишинг атаки, и 1365 01:04:21,140 --> 01:04:24,310 Изпрати Анонимен имейли, както и спам, по-общо. 1366 01:04:24,310 --> 01:04:27,330 И това наистина се свежда до Фактът, че всичко, което трябва е някакъв 1367 01:04:27,330 --> 01:04:28,500 програмен достъп. 1368 01:04:28,500 --> 01:04:31,940 >> Като настрана, най-близките ми среща с обявата борда, моя първокурсник година, 1369 01:04:31,940 --> 01:04:34,320 беше, когато открих този страхотен трик, който, уау, можете да 1370 01:04:34,320 --> 01:04:36,850 изпращане на имейли от никого. 1371 01:04:36,850 --> 01:04:39,770 И така, ние бяхме като някаква глупава аргумент, буквално, в Matthews, 1372 01:04:39,770 --> 01:04:40,790 Сред моите Proctor група. 1373 01:04:40,790 --> 01:04:42,470 Аз дори не си спомням какъв е проблемът беше. 1374 01:04:42,470 --> 01:04:44,970 Но аз исках да се опита да сложи край на този глупав дебат. 1375 01:04:44,970 --> 01:04:48,580 >> Затова реших, че просто ще изпрати съобщение да ми Proctor група, който се представя за 1376 01:04:48,580 --> 01:04:52,000 другият, с чието становище I не са съгласни, и да го съгласят да 1377 01:04:52,000 --> 01:04:54,680 каквото и моето мнение е в този дебат. 1378 01:04:54,680 --> 01:04:59,320 И така, аз ковани този имейл, като се използва Техниката подобни по дух на това. 1379 01:04:59,320 --> 01:05:01,256 Но това е действително по-лесно по това време. 1380 01:05:01,256 --> 01:05:02,435 Хит изпратите. 1381 01:05:02,435 --> 01:05:06,660 Той не е доволен, нито пък са били на борда на рекламата. 1382 01:05:06,660 --> 01:05:10,280 >> И аз бях много бързо, уловен в рамките секунди, защото, както знаете, се регистрирам 1383 01:05:10,280 --> 01:05:11,420 моите писма по определен начин. 1384 01:05:11,420 --> 01:05:14,200 И ако го направите ръчно, в голям част, 15 години по-късно, защото бях 1385 01:05:14,200 --> 01:05:15,080 травматизирани от това. 1386 01:05:15,080 --> 01:05:16,960 Аз нямам подпис на моя имейл сега. 1387 01:05:16,960 --> 01:05:20,440 Но през 1995 г., току-що имаше SIG, на подпис в моя имейл. 1388 01:05:20,440 --> 01:05:24,630 Така имаше тази бележка казва: Уважаеми Proctor група, I съгласявам мое мнение 1389 01:05:24,630 --> 01:05:31,240 и съм съгласен с Дейвид, подписано така и така, нов ред, нов ред, DJM. 1390 01:05:31,240 --> 01:05:36,220 >> Така че не го прави, или общо казано, да вземе Предимството на тази техника. 1391 01:05:36,220 --> 01:05:39,950 Но когато се прави сайта, като за окончателния си проект, при вземане на 1392 01:05:39,950 --> 01:05:43,460 сайт за нещо, предприемаческа, това е начина, прагматично, можете да 1393 01:05:43,460 --> 01:05:47,000 мобилизиране на други услуги в интернет като поща и след това действително 1394 01:05:47,000 --> 01:05:49,440 изпрати неща използващи код. 1395 01:05:49,440 --> 01:05:51,240 >> Така че как можем да се подобри това? 1396 01:05:51,240 --> 01:05:54,370 Ами, първо нека да бърза обиколка на някои от нещата, които ще видите, 1397 01:05:54,370 --> 01:05:56,170 и след това да разгледаме няколко примера. 1398 01:05:56,170 --> 01:05:59,500 Така един, да успокои, защото летим през PHP. 1399 01:05:59,500 --> 01:06:02,470 И аз знам, в някакъв момент, ще трябва действително да започнете да пишете това, ако 1400 01:06:02,470 --> 01:06:03,460 вече не сте. 1401 01:06:03,460 --> 01:06:06,220 Осъзнайте, че, едно, основната е вид на през прозореца с PHP. 1402 01:06:06,220 --> 01:06:09,420 Ако искате да пишете код, който получава изпълнена, можете просто да започнете да я пиша в 1403 01:06:09,420 --> 01:06:13,970 файл с име. PHP толкова дълго, колкото имате отворена скоба 1404 01:06:13,970 --> 01:06:15,620 въпросителен знак PHP тагове. 1405 01:06:15,620 --> 01:06:19,730 >> Но забележете това са условия в PHP. 1406 01:06:19,730 --> 01:06:22,610 Забележете, това е точно същия слайд имахме една седмица, когато трябваше 1407 01:06:22,610 --> 01:06:25,670 условия В. Условия в PHP са структурно и 1408 01:06:25,670 --> 01:06:27,140 синтактично същото. 1409 01:06:27,140 --> 01:06:30,290 Единствената разлика е, ако имаш променливи участват, трябва тези, 1410 01:06:30,290 --> 01:06:31,600 доларови знаци. 1411 01:06:31,600 --> 01:06:33,970 >> В същото време, булеви изрази изглежда точно като този за 1412 01:06:33,970 --> 01:06:35,725 или-или и-ING ING заедно. 1413 01:06:35,725 --> 01:06:37,780 Ключове изглеждат напълно еднакво. 1414 01:06:37,780 --> 01:06:42,180 Какво е хубаво в PHP, докато в C, ключове трябва да са случаи на 1415 01:06:42,180 --> 01:06:46,380 примитиви като цели числа или овъгли, в PHP Вашият случай отчети може действително да бъде 1416 01:06:46,380 --> 01:06:48,430 на цяло струни, което е всъщност е доста приятно. 1417 01:06:48,430 --> 01:06:49,480 Спестява време. 1418 01:06:49,480 --> 01:06:50,820 Не може да се направи, че в C. 1419 01:06:50,820 --> 01:06:52,880 >> Ето за линия в PHP. 1420 01:06:52,880 --> 01:06:53,740 Това е идентична. 1421 01:06:53,740 --> 01:06:55,400 Може да има някои доларови знаци за променливите. 1422 01:06:55,400 --> 01:06:57,530 Не е нужно да се спомене, че нещо, което е едно цяло число. 1423 01:06:57,530 --> 01:07:00,580 Можете просто да го декларира със знака за долар и името на променливата. 1424 01:07:00,580 --> 01:07:01,430 Но за линия е една и съща. 1425 01:07:01,430 --> 01:07:02,760 А линия, докато е една и съща. 1426 01:07:02,760 --> 01:07:04,870 A направи линия, докато е същото. 1427 01:07:04,870 --> 01:07:06,170 >> Това е малко по-различна. 1428 01:07:06,170 --> 01:07:12,410 Така че с PHP, с масив, можете да статично декларира масив, като в C, 1429 01:07:12,410 --> 01:07:14,420 но вие използвате квадратни скоби. 1430 01:07:14,420 --> 01:07:17,060 В C, трябва да използвате фигурни скоби, ако дори знаеше това. 1431 01:07:17,060 --> 01:07:20,910 Но това всъщност е много често в PHP да декларира масив, в този случай, 1432 01:07:20,910 --> 01:07:23,640 на номера, и се обадете на променливи номера. 1433 01:07:23,640 --> 01:07:25,300 >> Променливи само изглежда така. 1434 01:07:25,300 --> 01:07:28,710 Тук е низ, цитирам във файловите "здравей свят. "Може да има наклонена черта п. 1435 01:07:28,710 --> 01:07:30,950 Аз просто не се направи в този случай. 1436 01:07:30,950 --> 01:07:32,640 >> Сега това е интересна конструкция. 1437 01:07:32,640 --> 01:07:33,700 C не разполага с тази. 1438 01:07:33,700 --> 01:07:34,700 Но това е супер полезно. 1439 01:07:34,700 --> 01:07:38,160 И ще видите това в комплект P 7 спец. - един за всяка конструкция. 1440 01:07:38,160 --> 01:07:41,800 Ако искате да повторя, по цялата елементи масив, не е нужно 1441 01:07:41,800 --> 01:07:45,500 да се справят с $ I и $ М, и + +, и всичко това. 1442 01:07:45,500 --> 01:07:47,640 Буквално може да се каже, в PHP, това - 1443 01:07:47,640 --> 01:07:51,890 за всеки числа като брой, така че Аз съм се предположи, че $ номера 1444 01:07:51,890 --> 01:07:53,380 е масив от числа. 1445 01:07:53,380 --> 01:07:56,460 И когато казвам за всеки брой като брой, това ще 1446 01:07:56,460 --> 01:08:00,505 автоматично, като си линия изпълнява, актуализира на всяка итерация, стойността 1447 01:08:00,505 --> 01:08:03,260 вътрешността на брой знака за долар - 1448 01:08:03,260 --> 01:08:07,730 отново и отново, и отново ходене за мен през този масив. 1449 01:08:07,730 --> 01:08:08,735 Така че просто ни спасява код. 1450 01:08:08,735 --> 01:08:12,250 Не запетаи, не + + е, не, е, NO Не, това е просто хубаво. 1451 01:08:12,250 --> 01:08:13,700 >> Но PHP има това. 1452 01:08:13,700 --> 01:08:14,830 И това е супер мощен. 1453 01:08:14,830 --> 01:08:17,410 И че ще използвате този, ръцете на, в P определила 7. 1454 01:08:17,410 --> 01:08:21,990 И асоциативен масив също е обявена за с квадратни скоби. 1455 01:08:21,990 --> 01:08:23,569 Но забележете синтаксиса сега. 1456 01:08:23,569 --> 01:08:26,880 Това напомня на това, което видяхме с print_r преди малко. 1457 01:08:26,880 --> 01:08:31,810 Колко ключове, като малко проверка здрав разум, е този масив изглежда да има. 1458 01:08:31,810 --> 01:08:32,689 >> Така че има две. 1459 01:08:32,689 --> 01:08:33,830 И аз наричам този масив. 1460 01:08:33,830 --> 01:08:36,760 Но ако това помага, можеш да се сетиш за това като хеш таблица, или като 1461 01:08:36,760 --> 01:08:37,930 асоциативен масив. 1462 01:08:37,930 --> 01:08:39,580 Но това е просто различен тип масив. 1463 01:08:39,580 --> 01:08:41,080 И отново, на различни езици имат тези. 1464 01:08:41,080 --> 01:08:43,810 Ще видите нещо подобно в JavaScript, както добре. 1465 01:08:43,810 --> 01:08:44,609 Има два ключа. 1466 01:08:44,609 --> 01:08:48,390 Един от тях е цитат кавички, "символ", един е цитирам цитата "цена". И тези ключове 1467 01:08:48,390 --> 01:08:49,250 всеки да има стойност. 1468 01:08:49,250 --> 01:08:54,420 В този случай стойността символ е FB, за Стойността Facebook, и цената е 49, 26, 1469 01:08:54,420 --> 01:08:56,899 което е в наличност на Facebook цена от тази сутрин. 1470 01:08:56,899 --> 01:09:00,170 >> Така че това, което е полезно за асоциативен масив. 1471 01:09:00,170 --> 01:09:02,620 I биха могли да имат числено индексиран масив с просто 1472 01:09:02,620 --> 01:09:04,120 прости квадратни скоби. 1473 01:09:04,120 --> 01:09:09,380 И аз можеше да има знак за долар цитат равнява точно това. 1474 01:09:09,380 --> 01:09:10,529 Нека наистина го направи. 1475 01:09:10,529 --> 01:09:14,796 Да предположим, че вместо просто декларирани този масив подобно. 1476 01:09:14,796 --> 01:09:17,590 Това е напълно валидни, синтактично. 1477 01:09:17,590 --> 01:09:20,569 Той не губи никаква информация, сам по себе си. 1478 01:09:20,569 --> 01:09:24,760 Аз все още виждам, че символът е еб, и че цената е 49, 26. 1479 01:09:24,760 --> 01:09:28,939 Така че, защо са асоциативен масиви непреодолими? 1480 01:09:28,939 --> 01:09:30,189 >> Публика: Не е нужно да се помни, къде сте скрили нещо. 1481 01:09:30,189 --> 01:09:32,050 1482 01:09:32,050 --> 01:09:34,130 >> SPEAKER 1: Точно така, не е нужно да помните къде сте скрили нещо. 1483 01:09:34,130 --> 01:09:37,670 Вие не трябва произволно да запомни този запас символ е в скобата нула, 1484 01:09:37,670 --> 01:09:41,479 и цените на акциите е в една скоба, , което е особено опасно, ако 1485 01:09:41,479 --> 01:09:43,220 промени нещата, в крайна сметка. 1486 01:09:43,220 --> 01:09:46,399 Това е много по-хубаво да се сдружават това, което ние ще се обадя на метаданни 1487 01:09:46,399 --> 01:09:48,340 с реални данни. 1488 01:09:48,340 --> 01:09:52,399 Бих твърдят, че това, което ме интересува тук, е еб и 49, 26. 1489 01:09:52,399 --> 01:09:57,020 Символът и цената е метаданни , който описва данните, които 1490 01:09:57,020 --> 01:09:58,180 всъщност е грижа. 1491 01:09:58,180 --> 01:10:01,910 Но това е само толкова по-лесен достъп. 1492 01:10:01,910 --> 01:10:04,090 >> Сега, като отмени това, което е цената, която плащаме? 1493 01:10:04,090 --> 01:10:06,600 Ние се занимаваме с това CS50 в продължение на седмици. 1494 01:10:06,600 --> 01:10:10,740 Тази функция трябва да дойде в някакъв разход. 1495 01:10:10,740 --> 01:10:11,350 Memory. 1496 01:10:11,350 --> 01:10:13,830 Значи не само съхраняване на 32-битова цяло число, например. 1497 01:10:13,830 --> 01:10:17,980 Ти съхраняване символ / 0, вероятно. 1498 01:10:17,980 --> 01:10:19,160 Така че, който използвате повече памет. 1499 01:10:19,160 --> 01:10:22,540 >> И това, което е изпълнение на търсите нещо в 1500 01:10:22,540 --> 01:10:24,822 асоциативен масив, може би? 1501 01:10:24,822 --> 01:10:26,590 Това е може би по-бавно. 1502 01:10:26,590 --> 01:10:29,670 Произволен достъп е хубаво, особено когато можете да направите двоично търсене. 1503 01:10:29,670 --> 01:10:33,380 Но ако вие всъщност сега не търси за брой, но за струнни, това 1504 01:10:33,380 --> 01:10:37,630 наистина се осъществява под качулка, вероятно в хеш таблица, където 1505 01:10:37,630 --> 01:10:42,950 вие използвате или хеш-таблица с отделен верижното. 1506 01:10:42,950 --> 01:10:46,040 Или използвате Опитайте се да действително съхраняване на ценности. 1507 01:10:46,040 --> 01:10:50,550 Така че може би можеш да направиш константно време, но все пак трябва да разгледаме S-Y-M-B-O-L, 1508 01:10:50,550 --> 01:10:54,510 потенциално, а не само 32 бита, за да търсите нещо. 1509 01:10:54,510 --> 01:10:58,430 Така че отново, същите тези идеи идва назад, за да се възпроизведе и в този контекст. 1510 01:10:58,430 --> 01:11:02,120 >> Но отново, PHP вече има някои супер глобални, които, оказва се, са 1511 01:11:02,120 --> 01:11:02,900 асоциативни масиви. 1512 01:11:02,900 --> 01:11:05,590 Видяхме едно преди малко, $ _POST. 1513 01:11:05,590 --> 01:11:08,400 И това супер глобалната има ключове и стойности. 1514 01:11:08,400 --> 01:11:10,550 По-конкретно, ключове подреждат с какво? 1515 01:11:10,550 --> 01:11:14,520 Къде ключове в $ _POST идват от? 1516 01:11:14,520 --> 01:11:15,380 Само да обобщим? 1517 01:11:15,380 --> 01:11:16,480 >> Публика: Name. 1518 01:11:16,480 --> 01:11:17,900 >> SPEAKER 1: Име, къде? 1519 01:11:17,900 --> 01:11:19,860 >> Публиката: [недоловим] 1520 01:11:19,860 --> 01:11:20,750 >> SPEAKER 1: Име е атрибут. 1521 01:11:20,750 --> 01:11:23,480 Ами къде, където те направиха първоначално идват от? 1522 01:11:23,480 --> 01:11:24,120 Формата. 1523 01:11:24,120 --> 01:11:30,140 Така че, ако една HTML страница има форма етикет, в които някои суровини, като 1524 01:11:30,140 --> 01:11:34,760 отметки, текстови полета, падащото менюта, всяка от които си има име, тези 1525 01:11:34,760 --> 01:11:40,260 имена свърши като ключове в $ _POST, и, честно казано, за този въпрос, $ _GET. 1526 01:11:40,260 --> 01:11:42,130 Ако методът е GET, същата идея. 1527 01:11:42,130 --> 01:11:43,830 Това е просто по различен супер глобален. 1528 01:11:43,830 --> 01:11:47,620 И стойностите, разбира се, идват от независимо от потребителя напечатани в на негово или 1529 01:11:47,620 --> 01:11:48,890 си браузър. 1530 01:11:48,890 --> 01:11:49,830 >> Но има и няколко други. 1531 01:11:49,830 --> 01:11:52,140 Има бисквитка, които ние ще се върна в крайна сметка. 1532 01:11:52,140 --> 01:11:56,050 Но това са нещата, които знаете, че в интернет използва за някои добро или зло. 1533 01:11:56,050 --> 01:11:57,420 Но ще се върна към това. 1534 01:11:57,420 --> 01:12:01,720 Сървъра и сесията, и тези две има някаква особена полза. 1535 01:12:01,720 --> 01:12:03,940 >> Но нека да разгледаме това. 1536 01:12:03,940 --> 01:12:13,330 Нека да вървим напред и да се отворят един пример нарича mvc0.php Така MVC 1537 01:12:13,330 --> 01:12:14,900 означава следното. 1538 01:12:14,900 --> 01:12:19,390 И ще се въведе по-рано, отколкото е типично, наистина, за да сте проектиране 1539 01:12:19,390 --> 01:12:22,180 Проблем набор 7, а също и окончателните проекти, в нещо като индустрия 1540 01:12:22,180 --> 01:12:23,670 стандартен начин, и чист начин. 1541 01:12:23,670 --> 01:12:24,820 Това е добър дизайн. 1542 01:12:24,820 --> 01:12:29,090 >> Така че вие ​​сте на път да се види, и ще опит, в P набор 7, парадигма, сортиране 1543 01:12:29,090 --> 01:12:32,260 на програмиране мислене, което изглежда малко нещо като това. 1544 01:12:32,260 --> 01:12:35,570 М за модел, в продължение на контролер, V за View. 1545 01:12:35,570 --> 01:12:39,690 Накратко, MVC е просто вид на методика, начин на вземане 1546 01:12:39,690 --> 01:12:43,360 уебсайтове, по-специално, при което те постави всичките си, глупаво фраза - 1547 01:12:43,360 --> 01:12:44,970 бизнес логика - 1548 01:12:44,970 --> 01:12:49,710 всички от вашата интелектуална собственост в , което се нарича контролер, файл 1549 01:12:49,710 --> 01:12:54,840 като index.php, или ще видим, quote.php или buy.php. 1550 01:12:54,840 --> 01:12:59,570 >> В контекста на проблема набор 7, вашият модели обикновено съдържат данните, 1551 01:12:59,570 --> 01:13:03,860 всичко, свързано с база данни, както ще в крайна сметка виждам, и вашите мнения 1552 01:13:03,860 --> 01:13:07,510 съдържат естетиката на вашия обекта, HTML, на CSS. 1553 01:13:07,510 --> 01:13:10,420 Така че ние вече видях това в C малко малко чрез използване. ч файлове. 1554 01:13:10,420 --> 01:13:15,010 Ние наистина го видях преди малко с CSS, от факторинг стилизация CSS 1555 01:13:15,010 --> 01:13:16,520 неща от нашия HTML. 1556 01:13:16,520 --> 01:13:20,730 >> Така MVC е наистина само за рисуване линии в пясъка и да казвате: 1557 01:13:20,730 --> 01:13:25,400 интересна програмен код за вашия уебстраница принадлежат в това, което ще се обадя на 1558 01:13:25,400 --> 01:13:26,400 контролер. 1559 01:13:26,400 --> 01:13:29,280 Неща, свързани с база данни, обикновено се озовава в един модел. 1560 01:13:29,280 --> 01:13:33,070 Но ще видите, в Проблем набор 7, ние сливат C и M да го прости. 1561 01:13:33,070 --> 01:13:37,630 Но мнение е, където всички ваши HTML и естетика обикновено отидете. 1562 01:13:37,630 --> 01:13:39,160 >> И така, какво означава това в реално изражение? 1563 01:13:39,160 --> 01:13:45,980 Е, нека да отидат в нашата MVC директория, както следва. 1564 01:13:45,980 --> 01:13:48,880 И ще видите повече от тях турне през спец.. 1565 01:13:48,880 --> 01:13:53,200 Така че в mvc0, аз твърдя, че това е, като, Вариант 0 на уебсайтове CS50 си. 1566 01:13:53,200 --> 01:13:56,670 >> Всичко, което имаме е някои HTML, като голяма h1 етикет, очевидно. 1567 01:13:56,670 --> 01:13:57,800 И тогава списък с водещи символи. 1568 01:13:57,800 --> 01:13:59,860 Никога не съм виждал списък с водещи символи и преди, но не е голяма работа. 1569 01:13:59,860 --> 01:14:01,590 Нека най-бързо погледнете изходния код. 1570 01:14:01,590 --> 01:14:06,610 Оказа се, неподреден списък с куршуми е отворена скоба ул. с един или 1571 01:14:06,610 --> 01:14:09,065 повече елементи от списъка, Li. 1572 01:14:09,065 --> 01:14:10,650 Така бележка тук е една котва маркер. 1573 01:14:10,650 --> 01:14:12,130 Видяхме, че преди малко. 1574 01:14:12,130 --> 01:14:13,810 >> Така че това е начинът по който изпълнява тази страница. 1575 01:14:13,810 --> 01:14:18,460 Имам две връзки, две елементи от списък, една ул. за неподреден списък, и в края 1576 01:14:18,460 --> 01:14:22,700 резултат, естетически, е този доста уебсайт, версия 0 тук. 1577 01:14:22,700 --> 01:14:26,840 Но това, което е интересно сега е как тази се осъществява под предния капак. 1578 01:14:26,840 --> 01:14:33,590 >> Нека да отидат в Gedit и да се отворят тази първия пример, за да нарисувам картина. 1579 01:14:33,590 --> 01:14:37,070 И ние ще разгледаме това, което е погрешна, потенциално тук. 1580 01:14:37,070 --> 01:14:43,260 Сега, ако отида в Localhost, обществени, MVC, забележите няколко файла. 1581 01:14:43,260 --> 01:14:45,780 Аз ще се обадя на тези, на момент, всички контролери. 1582 01:14:45,780 --> 01:14:48,640 Но това е малко на злоупотреба, защото ще видите всичко се смесват 1583 01:14:48,640 --> 01:14:49,620 вътре в тях. 1584 01:14:49,620 --> 01:14:52,330 >> И нека да влезем вътре на index.php. 1585 01:14:52,330 --> 01:14:54,700 И ние виждаме, буквално същия HTML. 1586 01:14:54,700 --> 01:14:57,970 И въпреки, че този файл завършва в . PHP, това не означава, че трябва да 1587 01:14:57,970 --> 01:14:59,500 имате PHP код. 1588 01:14:59,500 --> 01:15:02,290 Тя може да бъде само суров HTML, въпреки че това е нещо глупаво. 1589 01:15:02,290 --> 01:15:07,650 Но забележете, че няма отворена скоба PHP маркират, с изключение на това, което, честно казано, 1590 01:15:07,650 --> 01:15:09,160 е точно там, за да служи като коментар. 1591 01:15:09,160 --> 01:15:12,080 Но това не е функционално дори, че интересно. 1592 01:15:12,080 --> 01:15:12,960 >> Но забележи това. 1593 01:15:12,960 --> 01:15:15,400 Интересното сега е какво промените на тази страница. 1594 01:15:15,400 --> 01:15:16,650 Нека кликнете Лекции. 1595 01:15:16,650 --> 01:15:18,560 И забележи, че URL е на път да се промени. 1596 01:15:18,560 --> 01:15:20,930 Сега съм в lectures.php. 1597 01:15:20,930 --> 01:15:22,630 Нека кликнете нула. 1598 01:15:22,630 --> 01:15:27,200 Сега съм в week0.php А сега нека ми отваря тези файлове в Gedit. 1599 01:15:27,200 --> 01:15:30,120 Не само индекс, но нека ми отвори лекции. 1600 01:15:30,120 --> 01:15:33,900 И нека да се отървете от коментарите да се съсредоточи върху тази част само. 1601 01:15:33,900 --> 01:15:37,680 >> А сега нека да се отворят само още един, week0.php, изхвърлете коментари, 1602 01:15:37,680 --> 01:15:39,910 само за да изчистя. 1603 01:15:39,910 --> 01:15:41,720 И сега забелязвам следното. 1604 01:15:41,720 --> 01:15:47,340 Мисля си наистина нещо като внимателно дизайн и нека го направим по линия 1605 01:15:47,340 --> 01:15:52,013 до същото, което може да се направи по-добре тук, мислиш ли? 1606 01:15:52,013 --> 01:15:56,450 1607 01:15:56,450 --> 01:15:57,780 >> Как се правят една седмица? 1608 01:15:57,780 --> 01:15:58,480 Какво ще кажете за това. 1609 01:15:58,480 --> 01:16:00,450 Така че това е как аз направих една седмица. 1610 01:16:00,450 --> 01:16:08,290 Отидох до File, New, Paste, Save, week1.php, а след това отидох в тук. 1611 01:16:08,290 --> 01:16:09,875 И смених едно - 1612 01:16:09,875 --> 01:16:11,646 какво е това, един до петък. 1613 01:16:11,646 --> 01:16:14,430 1614 01:16:14,430 --> 01:16:15,810 Промених нули към едно. 1615 01:16:15,810 --> 01:16:17,150 Промених това към едно. 1616 01:16:17,150 --> 01:16:20,350 >> ОК, така че сега погледнете моите файлове. 1617 01:16:20,350 --> 01:16:22,100 Какво може да се направи по различен начин? 1618 01:16:22,100 --> 01:16:25,310 Къде е възможност, може би? 1619 01:16:25,310 --> 01:16:28,330 Така че има възможност да започне факторинг тези неща. 1620 01:16:28,330 --> 01:16:32,950 Нека да се отворят, като спойлер, за това, което ще видите в комплект P 7. 1621 01:16:32,950 --> 01:16:38,750 Ако се отвори, сега, index.php във версия пет от това, тя изглежда така 1622 01:16:38,750 --> 01:16:40,730 по-загадъчен, разбира се. 1623 01:16:40,730 --> 01:16:43,710 >> Но това, сега, е това, което ще се обадя на контролер, който се контролира 1624 01:16:43,710 --> 01:16:44,770 логиката на моята страница. 1625 01:16:44,770 --> 01:16:48,510 И вие можете да вид реконструира, интуитивно, може би, това, което става. 1626 01:16:48,510 --> 01:16:50,630 На първия ред, това е малко загадъчен. 1627 01:16:50,630 --> 01:16:54,040 Но забележете аз изисква, като с остър включват, файл с име 1628 01:16:54,040 --> 01:16:55,930 helpers.php. 1629 01:16:55,930 --> 01:16:59,980 И след това се обаждам, както изглежда, е функция, наречена рендер, минаваща през 1630 01:16:59,980 --> 01:17:00,850 два аргумента. 1631 01:17:00,850 --> 01:17:02,440 >> Един от тях е цитат край на цитата, с глава. 1632 01:17:02,440 --> 01:17:04,800 А другата е, какъв вид тип данни е този, базиран 1633 01:17:04,800 --> 01:17:07,180 на синтаксиса на нашия по-рано? 1634 01:17:07,180 --> 01:17:08,160 Това е свързано масив. 1635 01:17:08,160 --> 01:17:11,730 По-конкретно, е преминаване в заглавието с някои метаданни, което напомня 1636 01:17:11,730 --> 01:17:13,430 ми какво е и стойността му. 1637 01:17:13,430 --> 01:17:16,340 Тогава виждам кодирани трудно ул., така че някои суров HTML. 1638 01:17:16,340 --> 01:17:20,020 Но след това отново съм в режим на PHP Извикването на функциите рендер. 1639 01:17:20,020 --> 01:17:24,390 Така че, дори ако никога не сте използвали HTML или PHP и преди, и въпреки че това изглежда 1640 01:17:24,390 --> 01:17:27,480 по-страшно, защо е това вероятно по-добър дизайн? 1641 01:17:27,480 --> 01:17:31,310 Какво е по-добре за него, въз основа на заключение? 1642 01:17:31,310 --> 01:17:32,130 >> Публиката: [недоловим] 1643 01:17:32,130 --> 01:17:35,750 >> SPEAKER 1: По-малко съкратени в тази че няма по-HTML тагове, не повече 1644 01:17:35,750 --> 01:17:38,410 главите етикет, не повече тялото тагове във всеки проклет файл. 1645 01:17:38,410 --> 01:17:41,860 Вместо това, аз съм фактор навън на приликите и вероятно ги е пуснал 1646 01:17:41,860 --> 01:17:45,150 във файл, по някакъв начин свързани към заглавието. 1647 01:17:45,150 --> 01:17:48,500 И едно и също нещо за тясно тяло етикет, на близо HTML тагове. 1648 01:17:48,500 --> 01:17:52,165 Това е може би тук вътре на долен някъде. 1649 01:17:52,165 --> 01:17:57,050 И ще видите, в Проблем набор 7, малко турне през това. 1650 01:17:57,050 --> 01:17:58,070 >> Така че това, което предстои? 1651 01:17:58,070 --> 01:18:03,390 Единственото нещо, което не са в състояние Все още е действително съхранение на данни. 1652 01:18:03,390 --> 01:18:06,110 И това, което ние ще започнем да виждаме Сряда, например, е, че вашият 1653 01:18:06,110 --> 01:18:08,450 стар приятел, Excel, или номера, ви позволява да съхранявате много 1654 01:18:08,450 --> 01:18:10,060 данни в редове и колони. 1655 01:18:10,060 --> 01:18:12,570 Оказва се, че мога да го направя в това, което е нарича база данни, програмно. 1656 01:18:12,570 --> 01:18:16,620 маниакална И се оказва, след това, ние ще бъдем в състояние да съхраняват такива неща 1657 01:18:16,620 --> 01:18:20,550 това, което ще видите отново в комплект P 7, цял куп от потребителски имена и 1658 01:18:20,550 --> 01:18:23,690 пароли, последните от които са всъщност криптирана, много те харесват 1659 01:18:23,690 --> 01:18:25,550 са били в хакер издание P набор 2 на. 1660 01:18:25,550 --> 01:18:29,600 И в крайна сметка, ще се приложи тази, собствен ETrade-подобен сайт, който 1661 01:18:29,600 --> 01:18:32,220 изпълнява колективно CS50 финанси. 1662 01:18:32,220 --> 01:18:36,000 >> На последно място, тъй ли остана тук толкова късно днес, ако се върнем към тази част 1663 01:18:36,000 --> 01:18:41,120 на колежа, в 4:00 ч. днес, ние ще ще ви даде не само съвети, на ЕКД 1664 01:18:41,120 --> 01:18:44,200 Консултиране Fair, в 16:00 в Maxwell-Дворкин, ние ще ви дадем някои 1665 01:18:44,200 --> 01:18:47,470 Americone мечта, Cherry Garcia, Шоколад Фъдж Брауни, Chocolate 1666 01:18:47,470 --> 01:18:50,840 Chip Cookie Dough, и, когато Google Chunky Monkey, можете да получите това. 1667 01:18:50,840 --> 01:18:53,620 Така че всичко това очаква в 04:00 PM в Maxwell-Дворкин. 1668 01:18:53,620 --> 01:18:56,736 Ще се видим в сряда, както добре. 1669 01:18:56,736 --> 01:18:59,960 >> SPEAKER 2: На следващото CS50, RJ спи инча 1670 01:18:59,960 --> 01:19:03,656 1671 01:19:03,656 --> 01:19:04,906 >> RJ: My секция! 1672 01:19:04,906 --> 01:19:07,727 1673 01:19:07,727 --> 01:19:08,977 Ха! 1674 01:19:08,977 --> 01:19:12,056 1675 01:19:12,056 --> 01:19:13,306 О, 1676 01:19:13,306 --> 01:19:16,374