1 00:00:00,000 --> 00:00:05,040 2 00:00:05,040 --> 00:00:08,440 >> Сем LEVATICH: Добредојдовте дел за оваа недела. 3 00:00:08,440 --> 00:00:10,040 Јас не сум Анди. 4 00:00:10,040 --> 00:00:14,590 Анди падна болен овој ден, и јас се вид на повикани во последен момент 5 00:00:14,590 --> 00:00:15,700 да го преземе. 6 00:00:15,700 --> 00:00:20,920 Тоа е сезона на грип, па затоа бидете сигурни дека ќе се остануваат чисти, миење на рацете, 7 00:00:20,920 --> 00:00:24,800 и јадење здрава, така што вас, исто така, не се врзани за кревет. 8 00:00:24,800 --> 00:00:26,870 >> Но без понатамошно ado, ајде да започнете. 9 00:00:26,870 --> 00:00:29,970 Денес, ние се случува да се зборува за PHP малку bit-- како 10 00:00:29,970 --> 00:00:33,900 PHP се однесува на HTML, како тоа се однесува на CSS, и некои од веб 11 00:00:33,900 --> 00:00:36,100 работи што направи во последната задача. 12 00:00:36,100 --> 00:00:37,930 Ние се случува да се зборува малку за SQL 13 00:00:37,930 --> 00:00:41,360 и како може да се работи со бази на податоци, што е прилично клучна компонента на P 14 00:00:41,360 --> 00:00:43,650 постави 8-- П поставите 7. 15 00:00:43,650 --> 00:00:44,480 П поставите 7. 16 00:00:44,480 --> 00:00:48,400 >> И тогаш ние ќе треба да се зборува малку малку за тоа како поглед контролори работат 17 00:00:48,400 --> 00:00:54,640 и зошто тоа е филозофијата зад некои модерни веб страници и различен дизајн. 18 00:00:54,640 --> 00:00:58,760 Доста голем број на видови на апликации и апликации кои би можеле да брод 19 00:00:58,760 --> 00:01:01,120 со користење на овој модел, рамка погледнете контролорот, 20 00:01:01,120 --> 00:01:02,890 дека ќе биде со користење на во P постави 7, па јас ќе 21 00:01:02,890 --> 00:01:05,220 зборува малку за тоа зошто тој стана 22 00:01:05,220 --> 00:01:07,970 популарни, зошто е важно и убаво. 23 00:01:07,970 --> 00:01:12,052 А потоа ќе се движат за да на крај некои совети за справување со Ц постави 7. 24 00:01:12,052 --> 00:01:13,760 И ако имаме време останати на крајот, 25 00:01:13,760 --> 00:01:17,320 ние всушност може да направи некои работат на тоа заедно. 26 00:01:17,320 --> 00:01:20,380 >> Значи, PHP. 27 00:01:20,380 --> 00:01:23,790 Всушност, може да се забележи this-- што не се навистина треба да се нурне во it-- 28 00:01:23,790 --> 00:01:27,880 но Ц постави 6 имаше некои PHP законик, што се случува. 29 00:01:27,880 --> 00:01:34,710 И затоа што PHP е C-како јазик, PHP, за разлика од HTML и CSS, 30 00:01:34,710 --> 00:01:39,030 е програмски јазик, со оглед на HTML и CSS се статични. 31 00:01:39,030 --> 00:01:44,050 Тие се занимаваат Селектирај јазици со стил и визуелна распоред. 32 00:01:44,050 --> 00:01:46,230 PHP е вистински договор. 33 00:01:46,230 --> 00:01:51,590 >> PHP има јамки, што има conditions-- сите тие работи што е забавно за В. 34 00:01:51,590 --> 00:01:56,190 Таа има неколку работи кои се малку малку подобра од С, што ќе видиме, 35 00:01:56,190 --> 00:01:59,760 но мислам дека најлесниот начин да се зборува за PHP е само за уживање. 36 00:01:59,760 --> 00:02:04,087 Па јас ќе одам да си во право во ИРО во овој момент. 37 00:02:04,087 --> 00:02:06,170 Првото нешто што ние ќе да направите е всушност изгледаат 38 00:02:06,170 --> 00:02:10,169 малку во некои од PHP код, кој беше поставен во P 6. 39 00:02:10,169 --> 00:02:13,600 Па начинот на кој го правиме that-- пред, за начинот на кој ние трчавме 40 00:02:13,600 --> 00:02:18,550 серверот за апаратот беше дека ние ќе треба да type-- 41 00:02:18,550 --> 00:02:21,750 го користите вашиот имплементација или спроведување на персоналот 42 00:02:21,750 --> 00:02:27,059 на server.c со одење во директориумот и водење server.c со или без 43 00:02:27,059 --> 00:02:30,100 arguments-- па само го повикуваме локалниот компјутер, што е она што веројатно 44 00:02:30,100 --> 00:02:31,849 најголемиот дел од time-- и потоа да ја хранат 45 00:02:31,849 --> 00:02:35,380 на directory-- со кој ќе се користи како неговиот корен 46 00:02:35,380 --> 00:02:38,310 каде што на веб-сајт ќе да се работи, во основа. 47 00:02:38,310 --> 00:02:42,180 >> Оваа недела за P постави 7, како голем како нашиот код за server.c 48 00:02:42,180 --> 00:02:47,580 е, постојат луѓе кои веќе имаат напишани овие убави работи во текот на CS50 49 00:02:47,580 --> 00:02:49,630 кои имаат малку повеќе функционалност, 50 00:02:49,630 --> 00:02:52,920 сервер програмата кој е способен на кои се занимаваат со малку повеќе 51 00:02:52,920 --> 00:02:56,350 на сложеноста дека ќе види во двете Ц постави 7 и P одреди 8. 52 00:02:56,350 --> 00:03:01,410 И начинот на кој ќе ја стартувате сервер е од само пишете "apache50." 53 00:03:01,410 --> 00:03:03,960 >> И пред да се направи нешто, вие сакате да бидете сигурни дека 54 00:03:03,960 --> 00:03:06,070 дека Apache 50 не е веќе работи како што е 55 00:03:06,070 --> 00:03:08,130 на мојата машина, што го направив за да го пробате. 56 00:03:08,130 --> 00:03:10,320 И ќе го направите тоа со повик apache50. 57 00:03:10,320 --> 00:03:14,070 Запре, и ќе видите дека тоа е запирање на веб серверот, ако може да се погледне тука 58 00:03:14,070 --> 00:03:16,340 на дното на прозорецот на терминалот. 59 00:03:16,340 --> 00:03:21,090 А потоа само да се започне, ние сме ќе се јавам "apache50 започне". 60 00:03:21,090 --> 00:03:23,150 И тогаш ние ќе да го хранат директориумот. 61 00:03:23,150 --> 00:03:26,950 >> Сега, бидејќи ние сакаме да се погледне во некои од P постави 6 код 62 00:03:26,950 --> 00:03:32,850 кои ги спровел, јас, всушност, копирани малку на P 63 00:03:32,850 --> 00:03:37,090 постави 6 код во свои папка, која може да се види на левата таму. 64 00:03:37,090 --> 00:03:40,170 Се вика "SECTION8" во сите големи букви 65 00:03:40,170 --> 00:03:44,510 бидејќи јас сум толку возбуден да биде во живо емитувана денес. 66 00:03:44,510 --> 00:03:47,330 >> Значи, ако ние се кандидира тоа, треба да сите работат прилично ефикасно. 67 00:03:47,330 --> 00:03:52,350 Таа вели дека, во ред, нашиот сајт е сега достапни на адресата на ИРО, 68 00:03:52,350 --> 00:03:57,710 во основа, што е она што сте ја користеле токму како што беше во собата 7-- П Р постави 6. 69 00:03:57,710 --> 00:04:00,899 Сите мои индекси се еден индекс денес. 70 00:04:00,899 --> 00:04:02,940 За да можеме да се оди на тоа адреса, ако ќе се сеќавам, 71 00:04:02,940 --> 00:04:05,710 со едноставно кликање на оваа мала копчето во горниот десен агол. 72 00:04:05,710 --> 00:04:14,200 >> И ќе се потсетиме на овој код, што што се случи кога ќе се влезе во hello.php. 73 00:04:14,200 --> 00:04:18,000 И она што го кодот е дизајниран да ги направите е кога ќе се внесе во име 74 00:04:18,000 --> 00:04:20,550 here-- ако ви кажам Сем бидејќи тоа е мојот name-- 75 00:04:20,550 --> 00:04:23,620 и јас кликнете каже здраво, кога отидовме на следната страница, 76 00:04:23,620 --> 00:04:25,270 тоа име требаше да бидат прикажани. 77 00:04:25,270 --> 00:04:28,550 Што би рекол, "Здраво, Сем" или "Здраво", што и да име 78 00:04:28,550 --> 00:04:32,470 се стави во неа, иако одевме на сосема нов веб-страница. 79 00:04:32,470 --> 00:04:36,610 >> И ова е една од оние работи дека PHP може да направи за вас. 80 00:04:36,610 --> 00:04:42,840 PHP е во можност да помине податоци помеѓу две веб страници. 81 00:04:42,840 --> 00:04:44,390 Ова е сосема поинаква страница. 82 00:04:44,390 --> 00:04:46,990 Ќе видите насловот е "здраво" овде. 83 00:04:46,990 --> 00:04:49,080 Всушност, тие имаат истиот наслов, но јас 84 00:04:49,080 --> 00:04:52,560 ветуваат тие се различни веб- страници ако гледаме на изворот. 85 00:04:52,560 --> 00:04:55,890 И може да помине на податоци што е влезе во оваа поле за текст, 86 00:04:55,890 --> 00:04:59,830 ќе го достави до следниот страница и тоа е се повикани, 87 00:04:59,830 --> 00:05:02,490 а потоа дека на податоци е во можност да се да постои во сегашната форма. 88 00:05:02,490 --> 00:05:04,810 >> Сега ние се уште не се спроведува ова самите себе, што 89 00:05:04,810 --> 00:05:08,710 е она што ние ќе треба да направите сега за да вид добие вкус за тоа како PHP, 90 00:05:08,710 --> 00:05:15,070 но клучот Идејата е дека PHP-- можеш вид мислам на тоа како функционира. 91 00:05:15,070 --> 00:05:18,570 Нешто што може да ви ги споделите со PHP не е тоа може да потрае параметри 92 00:05:18,570 --> 00:05:24,710 кој го внесуваш во една HTML страница преку употреба на PHP и форми, 93 00:05:24,710 --> 00:05:29,960 а тоа може да поминат тие како параметри на следната страница, која го товари до. 94 00:05:29,960 --> 00:05:35,110 >> Во овој случај, ние сме вчитување ова страница со копчето "Велат здраво". 95 00:05:35,110 --> 00:05:38,960 Но, за сега, јас, всушност, избришани некои од тој код 96 00:05:38,960 --> 00:05:44,850 во hello.php беше се кандидира што беше всушност прикажување на "Здраво, 97 00:05:44,850 --> 00:05:49,680 светот "или" hello, Сем "или "Здраво", што и беше само влез. 98 00:05:49,680 --> 00:05:53,620 Па за сега, ние сме ќе го направи тоа, во основа. 99 00:05:53,620 --> 00:05:56,570 Ние ќе треба да го создадете и исто така, да додадете некои повеќе функционалност, 100 00:05:56,570 --> 00:06:00,210 направи малку повеќе со него, видете PHP е она што навистина се способни. 101 00:06:00,210 --> 00:06:04,870 >> Значи прво, ајде да зборуваме за оваа датотека, hello.php. 102 00:06:04,870 --> 00:06:07,440 Значи, ако ние зумирање во малку bit-- и сега сум 103 00:06:07,440 --> 00:06:10,520 вид на се обидува да дојдете сите Патем around-- таму ќе одиме. 104 00:06:10,520 --> 00:06:14,220 Ќе видите се вика hello.php, но синтаксата од неа 105 00:06:14,220 --> 00:06:16,880 изгледа како HTML датотека. 106 00:06:16,880 --> 00:06:20,380 Тоа е затоа што вистинските PHP во оваа датотека 107 00:06:20,380 --> 00:06:25,220 сите се заглавени помеѓу овие прашалник-карет блокови. 108 00:06:25,220 --> 00:06:28,610 Сè што токму овде се смета за PHP код. 109 00:06:28,610 --> 00:06:32,040 >> И ќе забележите дека кога го направив коментар, 110 00:06:32,040 --> 00:06:35,320 ќе видите познатите две напред засеци. 111 00:06:35,320 --> 00:06:38,440 И дали ќе се потсетиме, во HTML, ако сум тип коментар, 112 00:06:38,440 --> 00:06:42,540 изгледа нешто поблиску до ова, кој е коментар на HTML. 113 00:06:42,540 --> 00:06:46,570 Значи, навистина сето она помеѓу овие два аглести загради 114 00:06:46,570 --> 00:06:50,060 сега е PHP код, што се огледува во фактот 115 00:06:50,060 --> 00:06:53,270 дека овој мал коментар симбол се претвори во коментар. 116 00:06:53,270 --> 00:06:58,420 >> Така што секој пат кога ќе се напише PHP код, дури и ако нема HTML кодот надвор од него, 117 00:06:58,420 --> 00:07:02,720 тоа е секогаш се случува да биде затворени во овие аглести загради 118 00:07:02,720 --> 00:07:04,080 со прашалници. 119 00:07:04,080 --> 00:07:08,260 Можете да вид на се размислува за тоа како сите it-- на кодот кој трчаше во вашиот C програми 120 00:07:08,260 --> 00:07:13,950 беше затворен во int главната, празнина, кадрава голема заграда, крајот кадрава изјава подготвуваат. 121 00:07:13,950 --> 00:07:17,100 И ќе видите големи загради во PHP, исто така, но ова е вид на 122 00:07:17,100 --> 00:07:20,490 како главен метод за PHP. 123 00:07:20,490 --> 00:07:25,630 >> Па сега, како ние да се направи нешто во PHP? 124 00:07:25,630 --> 00:07:29,190 Сега, PHP е програмирање јазик, кој е многу Ц-како, 125 00:07:29,190 --> 00:07:30,970 но таа работи на интернет. 126 00:07:30,970 --> 00:07:33,270 Значи, едно нешто што ќе immediately-- еден 127 00:07:33,270 --> 00:07:38,130 од првите работи што навистина го направи со C бил можете печатени работи надвор, нели? 128 00:07:38,130 --> 00:07:42,290 Па во C сме го правеле тоа со функција printf. 129 00:07:42,290 --> 00:07:46,430 Ние го даде низа, најверојатно со нова линија, 130 00:07:46,430 --> 00:07:49,850 а потоа ние прекинат тоа со точка-запирка. 131 00:07:49,850 --> 00:07:53,790 >> Па начинот на кој ние се случува да го направи тоа во PHP-- бидејќи тоа не е сосема printf. 132 00:07:53,790 --> 00:07:55,940 Тоа е малку различен синтакса. 133 00:07:55,940 --> 00:08:02,580 Начинот на кој ние се печати работи надвор во PHP е да се каже, "ехо здраво" 134 00:08:02,580 --> 00:08:04,180 или "ехо" ниту еден збор. 135 00:08:04,180 --> 00:08:09,830 И дека има ефект на водење printf со еден конец, "здраво". 136 00:08:09,830 --> 00:08:11,990 И се додава нова линија на него. 137 00:08:11,990 --> 00:08:16,000 >> Значи, да се направи токму сега sure-- Ќе одзумирате повторно малку bit-- 138 00:08:16,000 --> 00:08:18,250 ајде да бидете сигурни дека тој код е работа 139 00:08:18,250 --> 00:08:21,030 затоа што таму може многу добро се работи за грешка во овој код 140 00:08:21,030 --> 00:08:22,880 дека ние ќе мора да се справи со. 141 00:08:22,880 --> 00:08:25,860 Така што серверот е веќе работи. 142 00:08:25,860 --> 00:08:30,630 Значи, ако ние дојдете назад надолу кон дното, То, серверот е сеуште работи. 143 00:08:30,630 --> 00:08:34,510 Значи, ако ние само допрете на овој малку десно here-- 144 00:08:34,510 --> 00:08:37,620 welcome-- треба get-- одлично. 145 00:08:37,620 --> 00:08:39,930 >> Ние се уште ги имаат Познатата "Велат здраво" дијалог, 146 00:08:39,930 --> 00:08:45,750 но кога ќе напишете "Здраво", ќе видиме дека текстот "Здраво" беше навистина 147 00:08:45,750 --> 00:08:50,080 печатени надвор, што е точно како што е што се очекуваше, бидејќи ехо во PHP 148 00:08:50,080 --> 00:08:53,190 е исто како и изјава printf. 149 00:08:53,190 --> 00:09:01,410 Па назад во кодот, како во P постави 6 правеше правила за дистрибуција ќе се предвидени 150 00:09:01,410 --> 00:09:05,920 го направите така што би PHP излезот на нешто што ви е 151 00:09:05,920 --> 00:09:07,920 внеле во однос на претходната екран? 152 00:09:07,920 --> 00:09:10,350 >> И да се испита кој вид на зошто тоа се случи, ние сме 153 00:09:10,350 --> 00:09:15,510 'ќе одат во index.html, кој е на оригиналната датотека, на датотеката што 154 00:09:15,510 --> 00:09:18,710 се појавува на овој екран со копчето "Велат здраво". 155 00:09:18,710 --> 00:09:20,950 Ќе забележите дека има сите класични работи 156 00:09:20,950 --> 00:09:26,910 ние си дојден да очекуваме од HTML, како како овие работи, овие тагови ограден 157 00:09:26,910 --> 00:09:31,080 во аглести загради, како PHP но без знаци на прашањето, 158 00:09:31,080 --> 00:09:34,650 што укажува на специјални нешто во HTML. 159 00:09:34,650 --> 00:09:36,895 Имаме насловот, што е "здраво". 160 00:09:36,895 --> 00:09:41,010 И ќе забележите дека како што видовме, насловот е "здраво" и во двата случаи. 161 00:09:41,010 --> 00:09:43,260 Ајде да го промени ова да "каже" само за да можеме 162 00:09:43,260 --> 00:09:48,170 може да се направи разлика каде сме. 163 00:09:48,170 --> 00:09:49,600 >> Но, ние мора тело. 164 00:09:49,600 --> 00:09:52,690 А потоа и интересна малку, малку кој се појавува во HTML, 165 00:09:52,690 --> 00:09:54,530 е форма елемент. 166 00:09:54,530 --> 00:09:56,370 И така имаме форма. 167 00:09:56,370 --> 00:09:58,330 И тоа е клучот. 168 00:09:58,330 --> 00:10:00,530 Ова е како ние работиме со PHP. 169 00:10:00,530 --> 00:10:05,790 Параметар дејството на форма, вели дека hello.php 170 00:10:05,790 --> 00:10:09,310 е она што ние ќе треба да се испрати вредностите во оваа форма за. 171 00:10:09,310 --> 00:10:13,830 Ова е местото каде што ние поминува параметри, така да се каже. 172 00:10:13,830 --> 00:10:18,680 >> Ќе забележите уште нешто тука е дека методот е "да". 173 00:10:18,680 --> 00:10:24,450 Постојат две основни методи со кои ќе 174 00:10:24,450 --> 00:10:28,750 да користите PHP за да се помине податоци помеѓу websites-- веб страни, 175 00:10:28,750 --> 00:10:30,500 rather-- во оваа задача. 176 00:10:30,500 --> 00:10:34,070 И тие методи се "добие" и "пост". 177 00:10:34,070 --> 00:10:37,010 Постојат некои суптилни разликите помеѓу стапите и пост 178 00:10:37,010 --> 00:10:40,520 дека ќе добиеме into-- ние ќе "добие" во, ако сакате. 179 00:10:40,520 --> 00:10:44,030 >> Но, за сите намерите и цели, и да добијат мислење 180 00:10:44,030 --> 00:10:47,120 и двајцата се само начин на кој ќе помине параметри 181 00:10:47,120 --> 00:10:49,500 со малку различни егзекуции. 182 00:10:49,500 --> 00:10:53,500 За сега, ние ќе треба да се користи, бидејќи се беше она што беше првично се користи 183 00:10:53,500 --> 00:10:57,340 во PHP фајл на P постави 6. 184 00:10:57,340 --> 00:11:00,850 А всушност, ако одиме во и да бараат пред да го уредува нешто друго, 185 00:11:00,850 --> 00:11:03,090 Јас ќе одам да се каже Здраво to-- што е вашето име? 186 00:11:03,090 --> 00:11:03,812 >> ПУБЛИКАТА: Елиот. 187 00:11:03,812 --> 00:11:04,770 Сем LEVATICH: О, боже. 188 00:11:04,770 --> 00:11:05,600 Не знам како да се пишува тоа. 189 00:11:05,600 --> 00:11:06,766 Би можеле да се пишува тоа за мене? 190 00:11:06,766 --> 00:11:08,710 ПУБЛИКАТА: Е-Л-Л-И-И-Т. 191 00:11:08,710 --> 00:11:09,720 >> Сем LEVATICH: Јас-О-Т? 192 00:11:09,720 --> 00:11:10,440 >> ПУБЛИКАТА: Да. 193 00:11:10,440 --> 00:11:10,960 >> Сем LEVATICH: Совршена. 194 00:11:10,960 --> 00:11:11,210 ВО РЕД. 195 00:11:11,210 --> 00:11:12,751 Претпоставувам дека јас не знам како да се пишува тоа. 196 00:11:12,751 --> 00:11:13,510 Извини за тоа. 197 00:11:13,510 --> 00:11:16,560 Но, ако ние се каже "се каже здраво," тоа не е тоа не се случува да се појави на екранот 198 00:11:16,560 --> 00:11:18,476 Сепак, бидејќи ние пат е изменета кодот малку. 199 00:11:18,476 --> 00:11:21,290 Но, ако се "Велат здраво" - ОК, значи "здраво" е тука. 200 00:11:21,290 --> 00:11:24,137 Но, ако ги земеме, внимателно се погледне на себе URL-то, 201 00:11:24,137 --> 00:11:26,220 ќе видиме дека тоа завршува со hello.php? име = Елиот. 202 00:11:26,220 --> 00:11:30,980 203 00:11:30,980 --> 00:11:37,180 >> Значи, ова е начин на достават на следната веб-страница 204 00:11:37,180 --> 00:11:39,240 на параметрите кои ги поминавме. 205 00:11:39,240 --> 00:11:40,870 Ние рековме име = Елиот. 206 00:11:40,870 --> 00:11:46,290 И тоа е во крајна линија како P постави 6 пристапи променливата која поминавме во 207 00:11:46,290 --> 00:11:47,520 преку форма. 208 00:11:47,520 --> 00:11:51,470 И ова е нешто што е чудно на оваа барање за стапите. 209 00:11:51,470 --> 00:11:57,480 Барање А Земи го прави на параметри познат во URL-то на веб страната. 210 00:11:57,480 --> 00:12:01,190 >> И ќе се потсетиме, исто така, во P постави 6 кои ви 211 00:12:01,190 --> 00:12:04,450 мораше да се напише функција кои се занимаваа со фактот 212 00:12:04,450 --> 00:12:09,700 дека ова пребарување стринг може да постои по некоја датотека. 213 00:12:09,700 --> 00:12:14,684 Не може да има знак прашалник проследено од страна на основа на било кој број на карактери. 214 00:12:14,684 --> 00:12:16,350 А тоа е токму она што се случува тука. 215 00:12:16,350 --> 00:12:21,280 А причината што мораше да се интерпретира дека во вашиот имплементација на server.c во P 216 00:12:21,280 --> 00:12:27,570 6 е во собата, така што ќе може да каже кодот PHP дека име = Елиот. 217 00:12:27,570 --> 00:12:30,460 Што ви е потребно за да може да анализирам дека од URL-то 218 00:12:30,460 --> 00:12:35,900 така што на датотеката PHP во прашање знаеше што е тоа кои се занимаваат со. 219 00:12:35,900 --> 00:12:39,350 >> Па се надевам дека ова му дава мотивација да server.c 220 00:12:39,350 --> 00:12:43,900 сега дека ние сме се движат на надвор од Ц во PHP. 221 00:12:43,900 --> 00:12:48,240 Значи, да се, всушност, се фокусира на пристапување на работите поминале низ барање добие сега 222 00:12:48,240 --> 00:12:48,880 во оваа точка. 223 00:12:48,880 --> 00:12:50,157 Одам да се спаси ова. 224 00:12:50,157 --> 00:12:51,240 Ние не се промени ништо. 225 00:12:51,240 --> 00:12:56,080 Тоа изгледа како ние го добивме на поле за внесување. 226 00:12:56,080 --> 00:12:58,550 >> Ние сме поставување на некои својства, како што може да се направи на HTML. 227 00:12:58,550 --> 00:12:59,550 Тоа се едноставно работи. 228 00:12:59,550 --> 00:13:00,580 Не ни се потребни овие. 229 00:13:00,580 --> 00:13:03,750 Но, ние мора AutoComplete надвор, што во основа says-- знаете, 230 00:13:03,750 --> 00:13:05,710 кога ќе напишете работите во веб, понекогаш 231 00:13:05,710 --> 00:13:07,355 што се обидува да ја пополни таа во за вас. 232 00:13:07,355 --> 00:13:08,230 Така, тоа е убава работа. 233 00:13:08,230 --> 00:13:11,700 Ние сакаме да го исклучите за оваа намена. 234 00:13:11,700 --> 00:13:13,970 Тоа беше одлука на CS50. 235 00:13:13,970 --> 00:13:15,640 За да можеме да ги избришете дека ако сакаме. 236 00:13:15,640 --> 00:13:19,510 >> Автофокус само се држи на курсорот во право вид на почетокот. 237 00:13:19,510 --> 00:13:21,060 Повторно, не е премногу важно. 238 00:13:21,060 --> 00:13:26,220 >> Но name = "име" - тоа е малку незгодно, бидејќи тоа е и името. 239 00:13:26,220 --> 00:13:28,730 Но би можеле да се промени ова на нешто друго. 240 00:13:28,730 --> 00:13:30,563 И всушност, тоа е она што ние ќе направиме во моментов. 241 00:13:30,563 --> 00:13:34,830 Ние ќе се каже "лице", која е вид на како име 242 00:13:34,830 --> 00:13:36,790 ако некое лице е дефиниран со нивното име. 243 00:13:36,790 --> 00:13:41,480 >> Значи, да се затвори ова, повторно отворање на нашата веб-страница 244 00:13:41,480 --> 00:13:46,110 со оглед на нашиот сервер се уште работат Apache-то на 50, а ние ќе се каже, здраво, еве 245 00:13:46,110 --> 00:13:47,200 Елиот повторно. 246 00:13:47,200 --> 00:13:48,460 Зошто да не? 247 00:13:48,460 --> 00:13:49,220 Здраво. 248 00:13:49,220 --> 00:13:52,880 И ако ние одиме до тука, ќе видиме тогаш наместо име = Елиот, 249 00:13:52,880 --> 00:13:55,200 таа вели лице = Елиот. 250 00:13:55,200 --> 00:14:00,060 А тоа е директен резултат на фактот дека ние само го промени своето име = "личност". 251 00:14:00,060 --> 00:14:06,840 >> Па во влезен елемент HTML форма, името поле 252 00:14:06,840 --> 00:14:10,590 е идентификатор за параметар кој се пренесува. 253 00:14:10,590 --> 00:14:14,250 Тоа е како ако сте во една функција "Додај" што се одржа во два цели броја 254 00:14:14,250 --> 00:14:16,670 а ти рече int a и int b. 255 00:14:16,670 --> 00:14:22,680 Тоа би било име, и ако сакавте уште една форма, што 256 00:14:22,680 --> 00:14:27,800 ние може да го направи само од страна на копирање и вметнување, тогаш ние ќе треба име б. 257 00:14:27,800 --> 00:14:31,030 >> Па сега ќе имаме два параметри кои се пренесуваат преку 258 00:14:31,030 --> 00:14:36,970 се дојде до следното website-- на следната веб страница, hello.php. 259 00:14:36,970 --> 00:14:39,770 И всушност може да се види тоа повторно, ако сакаме. 260 00:14:39,770 --> 00:14:44,830 Ова е најлесниот начин да се справи со веб-код во ИРО, во основа. 261 00:14:44,830 --> 00:14:47,940 Ќе ја стартувате серверот, да го добие трчање, а потоа на секои ви пат 262 00:14:47,940 --> 00:14:50,649 направи некои промени, само во близина таа датотека само за да бидат безбедни. 263 00:14:50,649 --> 00:14:52,440 Со притискање на копчето за враќање назад е малку незгодно 264 00:14:52,440 --> 00:14:55,800 бидејќи тоа би можело да се вчита поран верзија, а не најмногу групно еден. 265 00:14:55,800 --> 00:14:59,200 >> И можеш само да кликнете на вашиот копчето повторно, поп право up-- ох, 266 00:14:59,200 --> 00:15:00,510 и сега постојат две форми. 267 00:15:00,510 --> 00:15:10,440 И така, ако ние напишете нешто во секој one-- "Џејсон hirshhorn" за instance-- 268 00:15:10,440 --> 00:15:11,590 ние велат здраво. 269 00:15:11,590 --> 00:15:12,840 Ќе погледнеме во нашите параметри. 270 00:15:12,840 --> 00:15:18,910 Тоа изгледа како ние го добивме, како што се очекуваше, а = Џејсон и b = hirshhorn, 271 00:15:18,910 --> 00:15:23,760 кој го претставува два параметри кои ги помина на оваа функција. 272 00:15:23,760 --> 00:15:27,900 >> Па сега ајде да всушност се да спроведување на таа функционалност што ние 273 00:15:27,900 --> 00:15:30,840 имаше во P постави 6. 274 00:15:30,840 --> 00:15:32,490 Па сега ние сме само повторувајќи здраво. 275 00:15:32,490 --> 00:15:34,310 И тоа не е многу корисно. 276 00:15:34,310 --> 00:15:38,530 Ние сакаме да ги повторуваат некои променлива што беше донесен за нас. 277 00:15:38,530 --> 00:15:40,320 И знаеме името на оваа променлива. 278 00:15:40,320 --> 00:15:41,770 Имаме и ние сме б. 279 00:15:41,770 --> 00:15:43,500 Па ние може да избере да се повторуваат или еден. 280 00:15:43,500 --> 00:15:45,470 >> Но, како да го пристап? 281 00:15:45,470 --> 00:15:48,820 Па, постојат одредени глобална променлива во PHP. 282 00:15:48,820 --> 00:15:51,240 А јас ќе одам да се напише ги во коментари тука. 283 00:15:51,240 --> 00:15:59,910 Двете најзначајни се стапите и пост за нашите цели во моментов. 284 00:15:59,910 --> 00:16:05,350 Ова се низи или, технички, речници 285 00:16:05,350 --> 00:16:10,540 каде што нашите променливи, дека ние сме полагање на следната веб страница, во живо. 286 00:16:10,540 --> 00:16:14,520 И наскоро ќе видите како да ги користите. 287 00:16:14,520 --> 00:16:19,720 >> Друга кратка белешка за PHP код и некои специфики на it-- во C, 288 00:16:19,720 --> 00:16:23,260 да декларирате променлива или да се користи променливи, 289 00:16:23,260 --> 00:16:24,570 прво мораше да им се изјасни. 290 00:16:24,570 --> 00:16:30,860 И она што требаше да направи кога ќе се прогласена нив беше велат int a или да се усвити б. 291 00:16:30,860 --> 00:16:35,630 Сте имале да се прогласи за видовите на овие променливи, пред да ги создаде. 292 00:16:35,630 --> 00:16:38,800 PHP-- вие не треба да направите било што. 293 00:16:38,800 --> 00:16:42,522 PHP не бара од типот на променлива. 294 00:16:42,522 --> 00:16:44,480 И начинот на кој што создаде variable-- а 295 00:16:44,480 --> 00:16:49,930 од велејќи цел број, знак, string-- која е навистина знак *, како што ние know-- 296 00:16:49,930 --> 00:16:52,180 наместо да ги работи сите дека, бидејќи сè 297 00:16:52,180 --> 00:16:54,620 е од ист вид, typeless, ние само можеме да 298 00:16:54,620 --> 00:16:59,210 користи еден лик, кој е знакот за долар. 299 00:16:59,210 --> 00:17:03,700 И ќе видите дека тоа е веќе пукање нагоре, малку нешта AutoComplete. 300 00:17:03,700 --> 00:17:11,380 И тоа е велејќи дека _GET и _POST се двете работи што имам на располагање 301 00:17:11,380 --> 00:17:11,900 за мене. 302 00:17:11,900 --> 00:17:16,430 Некои од овие се другите нешта други глобални променливи во PHP 303 00:17:16,430 --> 00:17:18,430 дека ќе биде во употреба во текот текот на П поставите 7. 304 00:17:18,430 --> 00:17:20,569 Сега за сега ние ќе треба да се фокусира на стапите и пост. 305 00:17:20,569 --> 00:17:22,910 Но, ова е корисен Она што го прави ИРО 306 00:17:22,910 --> 00:17:24,980 каде што некогаш сте ја внеле во тој знак за долар, 307 00:17:24,980 --> 00:17:28,760 тоа ќе почне да пополнување на глобални променливи или променливи сте веќе дефинирани. 308 00:17:28,760 --> 00:17:34,360 >> Значи, ако си сакал да се дефинира променлива наречена "стринг" 309 00:17:34,360 --> 00:17:38,290 можете само да го поставите тоа еднаква на "Здраво". 310 00:17:38,290 --> 00:17:40,100 И тоа е во основа како што е едноставно како што. 311 00:17:40,100 --> 00:17:44,720 И потоа можеме да направиме нешто како "echo $ низа." 312 00:17:44,720 --> 00:17:48,524 ИРО треба да се фрли малку грешки, ако јас сум прави ништо лошо, 313 00:17:48,524 --> 00:17:50,190 па се надевам дека јас го правам се што е во право. 314 00:17:50,190 --> 00:17:52,060 Но грешки секогаш се јавуваат. 315 00:17:52,060 --> 00:17:56,670 >> Друга слабо нешто во врска со PHP е тоа што тој не го состави. 316 00:17:56,670 --> 00:18:00,640 Така е и со C програми, ќе направиш секојдневната рутина of-- во основа, 317 00:18:00,640 --> 00:18:02,710 ќе се направи за да се промени вашиот код, што би го спаси, 318 00:18:02,710 --> 00:18:04,460 а потоа ќе го прават тоа, каде што направи беше 319 00:18:04,460 --> 00:18:08,830 чекор кој повика на компајлерот, ѕвекот, да се направи вашиот код, овој текст 320 00:18:08,830 --> 00:18:10,570 поднесе, во извршна. 321 00:18:10,570 --> 00:18:15,550 PHP е Ц-како, но тоа е погубен во лет со вашиот веб прелистувач. 322 00:18:15,550 --> 00:18:17,640 Така што не постои начин да се знае. 323 00:18:17,640 --> 00:18:19,790 >> Направи ќе фрли оние корисни грешки, нели? 324 00:18:19,790 --> 00:18:22,190 Тоа би било како, вие не се изјасни оваа променлива 325 00:18:22,190 --> 00:18:23,320 пред да се обиде да го користи. 326 00:18:23,320 --> 00:18:29,120 А ти го направи сето ова лошо stuff-- segfault, segfault, сите тој вид на забава пати 327 00:18:29,120 --> 00:18:31,000 кои дојдоа со шминка. 328 00:18:31,000 --> 00:18:33,920 PHP е меч со две острици затоа што нема да добијат оние грешки, 329 00:18:33,920 --> 00:18:37,770 но тоа, исто така, значи дека ти не ќе знаеш навистина она што е во ред со вашата програма 330 00:18:37,770 --> 00:18:39,840 ако само ја стартувате и тоа не е работа. 331 00:18:39,840 --> 00:18:45,130 Но дебагерот треба да се истакне се надевам дека некои корисни мали нешта 332 00:18:45,130 --> 00:18:47,950 синтаксички што ќе може да се поправи. 333 00:18:47,950 --> 00:18:52,850 >> Па сега ако одиме во текот to-- велам, ајде да се затвори таа. 334 00:18:52,850 --> 00:18:54,522 Отворат. 335 00:18:54,522 --> 00:18:55,480 И ние сме назад тука. 336 00:18:55,480 --> 00:18:57,210 Значи имаме променлива и променлив b. 337 00:18:57,210 --> 00:18:58,626 И овие нема да на крајот е важно. 338 00:18:58,626 --> 00:19:01,850 Ние ќе ги повикам ч и г без посебна причина. 339 00:19:01,850 --> 00:19:03,120 >> И ние да се поздрави. 340 00:19:03,120 --> 00:19:07,480 Сега тоа изгледа како нашиот стринг "Здраво" е навистина печатење. 341 00:19:07,480 --> 00:19:10,460 Ние направивме променлива наречена "стринг," поставен тоа еднаква на "Здраво". 342 00:19:10,460 --> 00:19:15,520 Забележи дека ние не треба да се направи Примерок или направи карактер низа. 343 00:19:15,520 --> 00:19:19,110 >> Во PHP, бидејќи променливи се typeless, стринг 344 00:19:19,110 --> 00:19:22,230 е иста како и на знак за сите намерите и целите. 345 00:19:22,230 --> 00:19:23,570 Ова би можело да биде "Здраво". 346 00:19:23,570 --> 00:19:26,340 Ова може да биде само к карактер. 347 00:19:26,340 --> 00:19:29,290 Ова може да биде број 1. 348 00:19:29,290 --> 00:19:30,300 И тоа не се грижи. 349 00:19:30,300 --> 00:19:33,560 PHP не се грижи за типот на вашата променлива. 350 00:19:33,560 --> 00:19:34,390 Или, пак, се грижи. 351 00:19:34,390 --> 00:19:36,240 Таа се грижи кога ќе се обидат и не работи со неа, 352 00:19:36,240 --> 00:19:38,790 но тоа не се грижи во чекор во декларацијата. 353 00:19:38,790 --> 00:19:46,960 >> И исто како што можете да во Ц, може да декларираат жици на магацинот се допаѓа ова 354 00:19:46,960 --> 00:19:51,130 иако велејќи "магацинот" е малку малку на потенцијалните погрешна употреба на израз кога 355 00:19:51,130 --> 00:19:52,230 ние зборуваме за PHP. 356 00:19:52,230 --> 00:19:54,020 Но, ние не треба да се грижите за тоа. 357 00:19:54,020 --> 00:19:55,936 Па добивме нашиот стринг "Здраво", а ние се одгласува стринг. 358 00:19:55,936 --> 00:19:58,880 Па сега сме разговараа променливи. 359 00:19:58,880 --> 00:20:06,060 Па сега ние треба да се зборува за и стапите пост и изведување на конечниот нешто што е 360 00:20:06,060 --> 00:20:12,660 се потребни за да се добие навистина ова назад до до функционалноста на П постави 6. 361 00:20:12,660 --> 00:20:14,990 Па сега сме повторувајќи стринг, но ние 362 00:20:14,990 --> 00:20:17,080 немаат овие променливи се добие и пост. 363 00:20:17,080 --> 00:20:19,430 И бидејќи ние сме со користење методот добие, тоа 364 00:20:19,430 --> 00:20:24,810 изгледа природно дека нашата променлива која ние сме заинтересирани, и А и Б, 365 00:20:24,810 --> 00:20:29,870 ќе се наоѓа во низа или речникот, технички добиете. 366 00:20:29,870 --> 00:20:33,510 >> Значи, ако ние се постави се допаѓа ова со вашиот groups-- ги притиснав влезат 367 00:20:33,510 --> 00:20:36,770 и дека не му се допаѓа it-- но тука имаме се. 368 00:20:36,770 --> 00:20:38,000 И така се веќе постои. 369 00:20:38,000 --> 00:20:41,380 Па ние веќе може да почне да пристап некои од елементите на се. 370 00:20:41,380 --> 00:20:45,000 Ако ние се добие оваа синтакса за низи во PHP е многу Ц-како. 371 00:20:45,000 --> 00:20:47,900 Ние имаме два квадратни загради. 372 00:20:47,900 --> 00:20:53,440 >> Значи, ако ние се каже во една нормална низа, ние би можеле да пристапите 373 00:20:53,440 --> 00:20:55,600 индексот на 0., првиот индекс. 374 00:20:55,600 --> 00:20:56,840 PHP е индекс нула. 375 00:20:56,840 --> 00:21:00,550 Би можеле да кажеме нула, еден, two-- работи како оваа. 376 00:21:00,550 --> 00:21:03,420 И јас сум бил велејќи дека се е технички речник. 377 00:21:03,420 --> 00:21:08,290 Значи она што се PHP е тоа под хауба, која е малку поубав од С, 378 00:21:08,290 --> 00:21:12,760 тоа е веќе е ви даваат некои речникот функционалност, која 379 00:21:12,760 --> 00:21:16,240 е навистина хаш маси, или се обиде да, наводно. 380 00:21:16,240 --> 00:21:19,360 Или, технички тоа би можело да биде се обиде, како и. 381 00:21:19,360 --> 00:21:25,500 Но PHP е спроведување хаш табелата, што претставува ефективна речникот. 382 00:21:25,500 --> 00:21:28,400 >> И така ние се знае името на нашата променлива, нели? 383 00:21:28,400 --> 00:21:32,440 Таа е донесен во низа на барањето од страна на PHP. 384 00:21:32,440 --> 00:21:37,290 Имаме = ж и b = g каде и б Еве ги имињата на променливите. 385 00:21:37,290 --> 00:21:41,580 Па начинот на кој што можеме да пристапите на вредност што одговара на клучните 386 00:21:41,580 --> 00:21:45,055 во нашето речникот е само со зборовите _GET_GET ["а"]. 387 00:21:45,055 --> 00:21:48,170 388 00:21:48,170 --> 00:21:51,365 >> Така, сега имаме _GET ["а"]. 389 00:21:51,365 --> 00:21:56,930 И ако ние само го замени внатре нашите ехо, ако ние се одгласува _GET_GET ["а"] - 390 00:21:56,930 --> 00:22:02,410 и ќе видиме дали дебагерот фрла евентуалните грешки во врска this-- 391 00:22:02,410 --> 00:22:05,620 ние ќе се спаси и да го затвори ова. 392 00:22:05,620 --> 00:22:07,130 Отворете го. 393 00:22:07,130 --> 00:22:10,390 Па ние сме само прави право сега, па б нема улога. 394 00:22:10,390 --> 00:22:12,980 "неа" и "него" - "потпевнувам". "неа" и "потпевнувам". 395 00:22:12,980 --> 00:22:14,810 Звучи добро. 396 00:22:14,810 --> 00:22:18,040 >> И го испечати "неа", кој е луд. 397 00:22:18,040 --> 00:22:21,920 Но, тоа е токму она се случуваше во P постави 6. 398 00:22:21,920 --> 00:22:27,240 Во основа, она П постави 6 беше doing-- ехо здраво, 399 00:22:27,240 --> 00:22:31,580 name-- каде што имаше променлива име и тоа само 400 00:22:31,580 --> 00:22:35,520 бара од Вас да напишете во кој дел од текстот. 401 00:22:35,520 --> 00:22:37,380 Имаше, исто така, некои дополнителен код каде 402 00:22:37,380 --> 00:22:40,550 тоа се вклучени ако извештаи, кои можеме да направиме во моментов. 403 00:22:40,550 --> 00:22:50,120 >> Може да се каже, ако постои, кој е функционалност во PHP, 404 00:22:50,120 --> 00:22:55,110 _GET Со подвлечено, "името" - која е во основа велејќи: 405 00:22:55,110 --> 00:22:58,760 "ако името е пополнето на" бидејќи ние би можеле да имаат само кликне на копчето 406 00:22:58,760 --> 00:23:02,580 да ги достават форма, без пишување нешто во таа област. 407 00:23:02,580 --> 00:23:07,760 И ние ја заврши тоа што во нашата пријателски големите загради. 408 00:23:07,760 --> 00:23:09,175 Можеме да имаме изјава на друго место. 409 00:23:09,175 --> 00:23:13,300 410 00:23:13,300 --> 00:23:18,820 И тоа е сè во рамките на аголот на PHP заградата, прашалник, аглеста заграда, 411 00:23:18,820 --> 00:23:20,040 ако сакате. 412 00:23:20,040 --> 00:23:21,750 >> И сега ќе видиме дали тоа функционира. 413 00:23:21,750 --> 00:23:26,300 Продолжувам да чекаат таа да debug и глупости за мене, во основа, 414 00:23:26,300 --> 00:23:28,410 но тоа се уште не е. 415 00:23:28,410 --> 00:23:30,830 Можеби тоа ќе сега затоа што говорев. 416 00:23:30,830 --> 00:23:31,330 Да. 417 00:23:31,330 --> 00:23:32,510 Тоа го правеше, во факт. 418 00:23:32,510 --> 00:23:34,610 Значи, ништо не се појавува. 419 00:23:34,610 --> 00:23:38,750 Тоа е затоа што на нешто лошо дека сум го напишала во PHP код. 420 00:23:38,750 --> 00:23:42,844 И јас спомнав дебагирање е незгодно, бидејќи во PHP, ние 421 00:23:42,844 --> 00:23:45,260 не го компајлирате однапред и на компајлерот не беше така, 422 00:23:45,260 --> 00:23:46,710 тука е местото каде што вашите грешки. 423 00:23:46,710 --> 00:23:49,690 >> Но, она што можеме да го направиме is-- луѓето се сеќавам 424 00:23:49,690 --> 00:23:57,010 како да се погледне на различни мрежа барања кои PHP-- или дека веб-сајтови 425 00:23:57,010 --> 00:23:57,620 испрати? 426 00:23:57,620 --> 00:24:00,290 [? Малин?] Направив ова во предавање еднаш или двапати. 427 00:24:00,290 --> 00:24:05,830 Се сеќаваш ли каде одиме да се најде различните долгови и одобри 200, 428 00:24:05,830 --> 00:24:09,780 сите овие кодови, кои се испраќаат преку HTTP од веб страница на веб-страница? 429 00:24:09,780 --> 00:24:12,514 Дали некој се сеќавам каде одиме да го направите тоа? 430 00:24:12,514 --> 00:24:13,787 >> ПУБЛИКАТА: Page Source. 431 00:24:13,787 --> 00:24:14,870 Сем LEVATICH: извор Страна. 432 00:24:14,870 --> 00:24:15,890 Токму така. 433 00:24:15,890 --> 00:24:19,230 Ако одите во Страница Source-- совршена. 434 00:24:19,230 --> 00:24:21,630 Па Страница Извор граби инспекторот. 435 00:24:21,630 --> 00:24:23,140 >> И јас сум со користење Safari. 436 00:24:23,140 --> 00:24:25,790 Многу од вас веројатно ќе да биде со користење на Chrome или Firefox. 437 00:24:25,790 --> 00:24:27,750 Но, колку што сте во секој модерен browser-- 438 00:24:27,750 --> 00:24:29,500 и се чувствуваат слободни да го следат заедно ако сакате. 439 00:24:29,500 --> 00:24:32,560 Можете да напишете на овој код или само да се погледне во внатрешноста на П сет 6 440 00:24:32,560 --> 00:24:35,820 Директориум за некои слични нешта. 441 00:24:35,820 --> 00:24:41,020 hello.php е она што ние сме моментално работи на emulating. 442 00:24:41,020 --> 00:24:42,476 >> Па така постојат различни табови. 443 00:24:42,476 --> 00:24:43,850 Ние можеме да се погледне во сите ресурси. 444 00:24:43,850 --> 00:24:45,810 Можеме да видиме на изворниот код. 445 00:24:45,810 --> 00:24:49,900 Па изгледа како да не се минато телото на крајот. 446 00:24:49,900 --> 00:24:54,890 Тој нашол грешка во PHP и тоа престана вчитување на целата веб-страница. 447 00:24:54,890 --> 00:24:58,320 Ние дури и не имаат крај ознака за HTML или ништо. 448 00:24:58,320 --> 00:25:07,189 >> И ако ја гледаме во мрежата, можеме да види дека сме се испрати барање. 449 00:25:07,189 --> 00:25:07,980 Овој домен. 450 00:25:07,980 --> 00:25:09,270 Ова е адресата. 451 00:25:09,270 --> 00:25:10,070 Тоа е документ. 452 00:25:10,070 --> 00:25:14,310 Ние сме со користење на методот на стапите. 453 00:25:14,310 --> 00:25:15,760 >> И тоа е црвено. 454 00:25:15,760 --> 00:25:19,030 Или, пак, беше црвено кога јас не е избирање на тоа. 455 00:25:19,030 --> 00:25:22,680 Како можам да го отстранете? 456 00:25:22,680 --> 00:25:23,980 Па, тоа е црвено. 457 00:25:23,980 --> 00:25:25,201 Дозволете ми да се освежи. 458 00:25:25,201 --> 00:25:25,700 Таму е. 459 00:25:25,700 --> 00:25:26,640 Сега е црвена. 460 00:25:26,640 --> 00:25:30,530 >> Така, тоа е црвено, што значи тоа не успеа, што е лошо. 461 00:25:30,530 --> 00:25:32,280 Значи, да се испита зошто тоа не успее. 462 00:25:32,280 --> 00:25:37,070 Така што сите тоа Изворот страница може да во основа ти кажам ти е нешто 463 00:25:37,070 --> 00:25:38,720 не работи, кој веќе може да се види. 464 00:25:38,720 --> 00:25:42,100 Значи идеално таму би да биде повеќе корисна алатка. 465 00:25:42,100 --> 00:25:45,710 И има некои прелистувач екстензии кои ќе ви овозможи да се debug PHP, 466 00:25:45,710 --> 00:25:50,490 но ние нема да се се пишува еден тон на PHP, 467 00:25:50,490 --> 00:25:53,190 па тоа е веројатно само најдобрите да се погледне преку вашиот код 468 00:25:53,190 --> 00:25:56,760 внимателно и само бидете сигурни дека тоа не го прави ништо друго. 469 00:25:56,760 --> 00:26:03,876 >> Значи, да се види дали на Форматот на оваа ако изјавата е каде е проблемот. 470 00:26:03,876 --> 00:26:07,420 Сакам да се вчита дека назад до тука. 471 00:26:07,420 --> 00:26:09,830 Здраво, Здраво. 472 00:26:09,830 --> 00:26:11,350 Па има проблем таму. 473 00:26:11,350 --> 00:26:15,130 >> Па поради правилна синтакса на PHP, PHP се случува 474 00:26:15,130 --> 00:26:17,369 да биде во Ц-како тоа ќе го видите петелки. 475 00:26:17,369 --> 00:26:18,410 Ќе се види дали извештаи. 476 00:26:18,410 --> 00:26:20,920 Ќе видите сите овие пријатели што сте се запознаат 477 00:26:20,920 --> 00:26:24,820 со текот на овој CS50 семестар. 478 00:26:24,820 --> 00:26:29,960 Но, најдобриот начин да дознаам како да се направи нешто во PHP е да го Google 479 00:26:29,960 --> 00:26:33,170 или да погледнеме некои примери на PHP код затоа што знам на функционалноста. 480 00:26:33,170 --> 00:26:35,080 >> Знаеш што може да се направи со програмата. 481 00:26:35,080 --> 00:26:35,976 Можеш јамка. 482 00:26:35,976 --> 00:26:37,600 Можеш јамка онолку пати колку што сакате. 483 00:26:37,600 --> 00:26:39,433 Можеш Врти во сите видови на различни начини. 484 00:26:39,433 --> 00:26:40,700 Можете да креирате функции. 485 00:26:40,700 --> 00:26:43,241 Можете да креирате функции кои се јават други функции, функции 486 00:26:43,241 --> 00:26:44,150 кои се нарекуваат себеси. 487 00:26:44,150 --> 00:26:45,733 И имаш имиња за овие концепти. 488 00:26:45,733 --> 00:26:49,860 Имаш рекурзија, петелки, ако, останатите текови контрола. 489 00:26:49,860 --> 00:26:51,300 И затоа Google е вашиот најдобар пријател. 490 00:26:51,300 --> 00:26:53,540 Дури и да каже, "ако PHP изјава "и таму Ќе 491 00:26:53,540 --> 00:26:57,740 биде тони постови со одговори и на други луѓе 492 00:26:57,740 --> 00:27:02,090 кои имале слични прашања за вас, кои се само на почетокот со PHP 493 00:27:02,090 --> 00:27:03,820 и се љубопитни за тоа нешто на синтаксата. 494 00:27:03,820 --> 00:27:08,480 >> Затоа што имаат луксузот да биде во состојба да се погледне на кодот во P сет 6, 495 00:27:08,480 --> 00:27:14,980 ние всушност ја повлече нагоре и да се види дека Добро, тука е нешто интересно. 496 00:27:14,980 --> 00:27:18,070 Значи ова е она што всушност изгледаше како во P постави 6. 497 00:27:18,070 --> 00:27:20,340 Значи, ако ние одат преку овој, можеме да видиме дека ние сме 498 00:27:20,340 --> 00:27:27,150 доби неколку од овие мали Битови прашалник PHP-како. 499 00:27:27,150 --> 00:27:29,050 >> И таму не се големите загради. 500 00:27:29,050 --> 00:27:30,250 Постојат две точки. 501 00:27:30,250 --> 00:27:32,340 А тука се и кадрава подготува во PHP, но ова 502 00:27:32,340 --> 00:27:38,700 е формат и начин на водење PHP, кој работи добро со HTML 503 00:27:38,700 --> 00:27:43,830 бидејќи, како што ќе видиме, ги затвораме исклучите овие PHP bits-- на elses 504 00:27:43,830 --> 00:27:49,770 и што IFS и сите that-- и потоа ние сме interspersing HTML во нив 505 00:27:49,770 --> 00:27:54,640 а уште по контрола на проток е утврдено од страна на PHP. 506 00:27:54,640 --> 00:27:58,480 >> Па јас сум само ќе брзо одење преку овој 507 00:27:58,480 --> 00:28:01,740 затоа што тоа е многу исти концепти кои што го правевте пред. 508 00:28:01,740 --> 00:28:07,280 Имаме ако не е празна, загради, _GET_GET ["name"]. 509 00:28:07,280 --> 00:28:08,500 Ова е сите се исти нешта. 510 00:28:08,500 --> 00:28:15,430 Ние сме со користење речникот _GET дека PHP испраќа барање на форми, 511 00:28:15,430 --> 00:28:20,720 бидејќи тоа е параметри на акција, а методот е да се добие. 512 00:28:20,720 --> 00:28:22,110 И тогаш што завршува тоа. 513 00:28:22,110 --> 00:28:27,420 Дебелото црево е означувачот само да го направите ова ако ако изјавата е точен. 514 00:28:27,420 --> 00:28:29,490 Тоа е како кадрава голема заграда. 515 00:28:29,490 --> 00:28:33,320 И всушност, тоа е кадрава голема заграда на други јазици како Пајтон, 516 00:28:33,320 --> 00:28:37,070 кои може да се судрите, ако само го прави тоа за твојот последен проект. 517 00:28:37,070 --> 00:28:40,170 >> А потоа и оваа линија, здраво. 518 00:28:40,170 --> 00:28:41,510 Тогаш ние го добивме ова чудно нешто. 519 00:28:41,510 --> 00:28:43,190 Имаме повеќе загради. 520 00:28:43,190 --> 00:28:46,140 Нема HTTP there-- или PHP, жалам. 521 00:28:46,140 --> 00:28:47,250 Но, има знак за еднаквост. 522 00:28:47,250 --> 00:28:50,625 И тогаш имаме некоја функција, htmlspecialchars (_GEThtmlspecialchars (_GET ["name"]). 523 00:28:50,625 --> 00:28:54,440 524 00:28:54,440 --> 00:28:58,040 Ова е вид на како повеќе напредна верзија на ехо. 525 00:28:58,040 --> 00:29:01,450 Како да сме ехо како начин да се печати работи надвор во PHP. 526 00:29:01,450 --> 00:29:03,890 Ова е функција која е што е дефинирано во PHP дека 527 00:29:03,890 --> 00:29:08,160 ќе се занимаваат со некои непријатни бајт карактери и вредности 528 00:29:08,160 --> 00:29:09,540 што ќе може да го помине. 529 00:29:09,540 --> 00:29:11,070 Тоа секогаш е најбезбедно да го користите овој. 530 00:29:11,070 --> 00:29:14,930 Но ехото ќе ја заврши работата само парична казна ако ние не сме 531 00:29:14,930 --> 00:29:17,620 кои се занимаваат со нешто премногу непријатни. 532 00:29:17,620 --> 00:29:20,340 >> Па така ова го има истиот Ефектот на основа, 533 00:29:20,340 --> 00:29:26,360 овој материјал во меѓу прашањето ознаки се оценува од страна на PHP. 534 00:29:26,360 --> 00:29:34,490 htmlspecialchars враќа убав HTML печатени вредност _GET_GET ["name"], т.е. 535 00:29:34,490 --> 00:29:36,010 што и да се внесе во форма. 536 00:29:36,010 --> 00:29:40,025 А потоа тоа ќе се каже здраво, запирка простор, а потоа тоа. 537 00:29:40,025 --> 00:29:42,910 Дека целата работа помеѓу голема заграда агол 538 00:29:42,910 --> 00:29:47,390 ќе биде заменет со она што htmlspecialchars гаси. 539 00:29:47,390 --> 00:29:49,390 Значи, тоа е во основа е сличен на она што го правиме. 540 00:29:49,390 --> 00:29:54,760 А ние имаме изјава друго што е Здраво светот, што го прави смисла. 541 00:29:54,760 --> 00:29:58,070 Па сега ајде да се вратиме на нашата код и да видиме exactly-- ох. 542 00:29:58,070 --> 00:30:02,200 Реков постои, што не е една работа што сакав да го направам. 543 00:30:02,200 --> 00:30:05,370 Сакавме да се каже не празна. 544 00:30:05,370 --> 00:30:10,020 >> И така ова треба да работат малку малку подобро, не е празен _GET_GET ["name"]. 545 00:30:10,020 --> 00:30:12,710 И дека кадрава голема заграда се совпаѓа со таа кадрава голема заграда. 546 00:30:12,710 --> 00:30:15,210 Добивме наша големи загради тука. 547 00:30:15,210 --> 00:30:17,790 ехо здраво _GET ["name"]. 548 00:30:17,790 --> 00:30:19,912 Ајде да видиме дали ова работи малку подобро. 549 00:30:19,912 --> 00:30:21,350 Ние сме се уште работат на нашиот сервер. 550 00:30:21,350 --> 00:30:23,910 Здраво Џејсон. 551 00:30:23,910 --> 00:30:24,780 Здраво Џејсон. 552 00:30:24,780 --> 00:30:25,810 И работеше тоа време. 553 00:30:25,810 --> 00:30:29,860 И така тоа е доказ дека ти навистина може 554 00:30:29,860 --> 00:30:35,180 користат големите загради кои ви знаеме и љубов во PHP код во HTML. 555 00:30:35,180 --> 00:30:41,100 Кодот PHP обезбедени за сте во pset 6-- pset 6-- 556 00:30:41,100 --> 00:30:44,760 обезбедува друг начин на тоа го прават истото. 557 00:30:44,760 --> 00:30:49,220 >> Така, сега имаме моќ. 558 00:30:49,220 --> 00:30:55,740 Имаме функционалност да се имплементира PHP код што сме го виделе во pset 6 559 00:30:55,740 --> 00:30:57,390 од наша страна, во основа. 560 00:30:57,390 --> 00:31:01,350 Пред да се пресели на, она што се некои од прашања кои имате во овој момент? 561 00:31:01,350 --> 00:31:02,066 Да [Беззвучен]. 562 00:31:02,066 --> 00:31:06,512 >> ПУБЛИКАТА: Значи во верзијата во pset6, кога ќе го стартувате, има простор. 563 00:31:06,512 --> 00:31:09,330 И можам да видам каде што просторот е по запирката. [Беззвучен] почеток 564 00:31:09,330 --> 00:31:10,700 на отворена заграда. 565 00:31:10,700 --> 00:31:15,420 Како ви се приклучи на просторот во начинот на кој напиша свој кодови? 566 00:31:15,420 --> 00:31:17,910 >> Говорник: Тоа е добро прашање. 567 00:31:17,910 --> 00:31:21,650 И па ајде да дознаам дека надвор. 568 00:31:21,650 --> 00:31:24,450 Така што е навистина добро прашање и што јас не сметаат. 569 00:31:24,450 --> 00:31:25,950 Но, ајде да го направиме заедно. 570 00:31:25,950 --> 00:31:30,280 >> Значи прво на сите, она што Јас го правам со ехо 571 00:31:30,280 --> 00:31:33,690 и кога ќе се само ехо здраво, тоа излези здраво. 572 00:31:33,690 --> 00:31:41,310 Ако ние ехо сега ова се на посебна линија, да ги разгледаме и она што се случува. 573 00:31:41,310 --> 00:31:43,740 Па ние кликнете на ова. 574 00:31:43,740 --> 00:31:45,220 Ние си велите, Hi Џејсон. 575 00:31:45,220 --> 00:31:48,690 Значи, повторно, ние немаме овој простор. 576 00:31:48,690 --> 00:31:53,090 >> А тоа е затоа што, во PHP, кога ние го ехо, 577 00:31:53,090 --> 00:31:55,820 без разлика колку spaces-- бе, не V-- 578 00:31:55,820 --> 00:32:01,770 без разлика колку многу места ќе стави во here-- ако ние сега се вчита дека повторно, 579 00:32:01,770 --> 00:32:03,010 Здраво Џејсон. 580 00:32:03,010 --> 00:32:05,770 Да, да се види, и сите оние простори го изедоа нагоре. 581 00:32:05,770 --> 00:32:08,020 И тоа е нешто што ехото функција го прави тоа. 582 00:32:08,020 --> 00:32:11,110 >> Па да се грижи за тој простор, а тоа е 583 00:32:11,110 --> 00:32:14,960 една од причините Зошто не ја користите ехо 584 00:32:14,960 --> 00:32:18,200 и да ги користите htmlspecialchars наместо. 585 00:32:18,200 --> 00:32:22,140 Баш ме интересира што ќе се се случи ако ние го направи ова 586 00:32:22,140 --> 00:32:26,700 каде што ние ограден простор во низа. 587 00:32:26,700 --> 00:32:29,720 Искрено, јас не сум сигурен што ќе се случи кога ќе го направите тоа. 588 00:32:29,720 --> 00:32:30,790 >> Значи тоа е еден начин. 589 00:32:30,790 --> 00:32:32,210 Тоа е еден начин да се грижи за него. 590 00:32:32,210 --> 00:32:34,840 Ако заврши на просторот во стринг, а потоа просторот 591 00:32:34,840 --> 00:32:36,920 Излезот ќе биде убаво со ехо. 592 00:32:36,920 --> 00:32:41,930 Најбезбедно нешто да направите е да се направи htmlspecialchars. 593 00:32:41,930 --> 00:32:43,800 Тоа е секогаш сигурен облог. 594 00:32:43,800 --> 00:32:47,050 Но, сега имаме еден начин да се направи тоа со ехо ако е потребно. 595 00:32:47,050 --> 00:32:50,700 И на сличен начин, можеме да ехо нови линии, сите вид 596 00:32:50,700 --> 00:32:53,550 на работи што сте запознаени прави во PHP. 597 00:32:53,550 --> 00:32:57,460 >> Некој друг, што се повеќе прашањата што другите луѓе имаат 598 00:32:57,460 --> 00:33:01,090 во овој момент за PHP? 599 00:33:01,090 --> 00:33:04,620 Ако луѓето се појави малку доцна, Среќен сум што можам да останат по малку 600 00:33:04,620 --> 00:33:06,420 и да разговараат за некои од самиот почеток. 601 00:33:06,420 --> 00:33:10,380 И тоа е, исто така, сите livestreamed, и архивирани, кој е луд. 602 00:33:10,380 --> 00:33:13,960 >> И онака, па сега ајде да се направи некои повеќе напредни работи со PHP. 603 00:33:13,960 --> 00:33:18,790 И еден од најраните работи што беа воведени во Ц беше за петелки. 604 00:33:18,790 --> 00:33:24,060 И PHP има повеќе моќни за јамка нарекува јамка foreach. 605 00:33:24,060 --> 00:33:37,940 И тоа изгледа како this-- за секое празно како празно, брановидни загради, го стори нешто. 606 00:33:37,940 --> 00:33:41,500 Така што ова е во основа на стенографија. 607 00:33:41,500 --> 00:33:45,380 >> Види, за телефонска линија, како синтаксичката конструкција 608 00:33:45,380 --> 00:33:50,590 беше осмислена во Ц и во собранието јазик и работи како што. 609 00:33:50,590 --> 00:33:56,300 Осмислена во C, поточно, како кратенка за многу видови на јамки 610 00:33:56,300 --> 00:33:57,750 дека луѓето ќе ја видат. 611 00:33:57,750 --> 00:34:01,230 Како кога ти напиша еден циклус, таму често беше чекор на иницијализација 612 00:34:01,230 --> 00:34:04,700 извршена на самиот почеток, односно состојба каде јамка ќе stop-- 613 00:34:04,700 --> 00:34:07,030 и тоа е на функција тоа е само време јамка, 614 00:34:07,030 --> 00:34:10,040 или дека има точно време токму тоа feature-- и потоа 615 00:34:10,040 --> 00:34:12,320 чекор на incrementation на крајот. 616 00:34:12,320 --> 00:34:16,489 И така ќе е често се наоѓате себеси пишување код како што следува. 617 00:34:16,489 --> 00:34:19,780 Одам да се избришат некои од ова. 618 00:34:19,780 --> 00:34:23,850 >> Но, ако ние сме процесирањето преку знаци во низа, 619 00:34:23,850 --> 00:34:26,960 на пример, како ние сме доби низа на карактери. 620 00:34:26,960 --> 00:34:29,400 Жал ми е да се врати В. знам, што би помислиле дека се направени. 621 00:34:29,400 --> 00:34:31,900 Но, тоа е само за намената на учењето PHP, ветувам. 622 00:34:31,900 --> 00:34:38,880 Значи, ако сте ја добиле ул знак со должина 8, и нека е 623 00:34:38,880 --> 00:34:46,760 велат дека тоа вели Hellooo со коса за ништовни. 624 00:34:46,760 --> 00:34:48,270 Голем, па тоа е нашата низа. 625 00:34:48,270 --> 00:34:51,469 >> И тогаш имавме за телефонска линија. 626 00:34:51,469 --> 00:34:53,730 Имаме int i изнесува 0. 627 00:34:53,730 --> 00:34:57,960 628 00:34:57,960 --> 00:35:09,110 И ние сакаме да излезете кога ул на не е еднакво на еднакви на нула, 629 00:35:09,110 --> 00:35:11,590 бидејќи ние излезете кога таа е еднаква за ништовни. 630 00:35:11,590 --> 00:35:19,170 И тогаш го правиме јас ++ во секоја точка во за телефонска линија. 631 00:35:19,170 --> 00:35:30,480 Прави нешто со ул на i. 632 00:35:30,480 --> 00:35:34,950 >> Значи основната формула беше, имавме оваа низа што ние 633 00:35:34,950 --> 00:35:37,910 сакаше да се третираат како одделни елементи. 634 00:35:37,910 --> 00:35:45,170 Но, она што требаше да направиме е моравме да во основа се создаде посебна цел број 635 00:35:45,170 --> 00:35:50,530 променлива која броеше до секој време отидовме преку телефонска линија. 636 00:35:50,530 --> 00:35:55,240 А потоа ние ќе мора да потоа се јавите strstr [i], кога она што навистина сакав да направам 637 00:35:55,240 --> 00:35:57,280 е само оди карактер по знак, нели? 638 00:35:57,280 --> 00:36:00,185 Ние не сакаме за зголемување на цел број, а потоа ја користат таа цел број 639 00:36:00,185 --> 00:36:02,780 пристап до секој знак поединечно. 640 00:36:02,780 --> 00:36:04,410 Ние навистина сакаме карактер по карактер. 641 00:36:04,410 --> 00:36:08,600 >> И така за секоја интелигентно пресметува дека за нас. 642 00:36:08,600 --> 00:36:11,875 Ако имаме низа, која можеме да се изјасни во PHP 643 00:36:11,875 --> 00:36:15,900 како just-- ако имаме променлива вика, ајде да го наречеме низа. 644 00:36:15,900 --> 00:36:19,840 Чуда на пишување не, тоа е како и секој друг променлива. 645 00:36:19,840 --> 00:36:20,730 Тоа е само низа. 646 00:36:20,730 --> 00:36:26,890 И имаме малку [Беззвучен] како 1, 2, 3, само еден вид на иницијализира низа. 647 00:36:26,890 --> 00:36:29,680 Тоа е во ред, тоа не му се допаѓа мојата foreach. 648 00:36:29,680 --> 00:36:33,120 >> Но, ако се всушност foreach-- Јас ја внеле дека малку погрешно. 649 00:36:33,120 --> 00:36:34,840 Постојат два начина да се направи foreach јамка. 650 00:36:34,840 --> 00:36:37,400 Има синтакса во и како синтакса. 651 00:36:37,400 --> 00:36:40,580 И ние ќе треба да се направи во прв синтаксата не, како и. 652 00:36:40,580 --> 00:36:41,780 Тоа е моја грешка. 653 00:36:41,780 --> 00:36:53,785 >> Па foreach бр во низа, ехо бр. 654 00:36:53,785 --> 00:36:56,970 655 00:36:56,970 --> 00:36:59,500 И PHP се вика мене поради некоја причина. 656 00:36:59,500 --> 00:37:03,520 Дали е изнаоѓање на неочекувани во нешто, 657 00:37:03,520 --> 00:37:05,820 што е малку пречи. 658 00:37:05,820 --> 00:37:09,105 Но, ние ќе дознаам зошто тоа е во еден миг. 659 00:37:09,105 --> 00:37:11,960 660 00:37:11,960 --> 00:37:13,610 Па не сакал тоа. 661 00:37:13,610 --> 00:37:15,040 Ајде да се обидете со користење на што. 662 00:37:15,040 --> 00:37:17,310 Тоа претпочита како синтакса е изгледа. 663 00:37:17,310 --> 00:37:22,550 Значи, да се направи foreach низа како бр. 664 00:37:22,550 --> 00:37:24,520 >> Па малку објаснување на она што се случи 665 00:37:24,520 --> 00:37:30,670 е како синтакса е saying-- и првиот, ајде да погледнеме во она што овој отпечатоци. 666 00:37:30,670 --> 00:37:32,260 Значи ние се отвори нашата ИРО. 667 00:37:32,260 --> 00:37:33,110 Одиме тука. 668 00:37:33,110 --> 00:37:35,845 Велиме, Здраво Џејсон. 669 00:37:35,845 --> 00:37:41,390 И тоа го правеше 123, кои беа на содржината на низата што ние направивме до врвот. 670 00:37:41,390 --> 00:37:45,500 >> Па нуркање во овој foreach циклусот, имаме променлива наречена низа на 671 00:37:45,500 --> 00:37:47,470 која е низа од три броја. 672 00:37:47,470 --> 00:37:52,120 И тогаш го правиме foreach низа како бр, ехо бр. 673 00:37:52,120 --> 00:37:54,990 И тоа е повеќе интуитивен отколку за режа. 674 00:37:54,990 --> 00:38:02,380 Ние велиме, лекување на секоја од она што е во низа како бр, 675 00:38:02,380 --> 00:38:05,180 Сакам да ми ја дадеш бр. 676 00:38:05,180 --> 00:38:06,640 И тоа е точно она што таа го прави. 677 00:38:06,640 --> 00:38:12,000 >> PHP е пресметување дека кога ќе се каже foreach низа, 678 00:38:12,000 --> 00:38:16,080 и си имаш работа со низа, што ви се случува да сакаат да iterate во текот 679 00:38:16,080 --> 00:38:19,950 е дека ликовите во низа, е ints во таа низа, 680 00:38:19,950 --> 00:38:21,920 е на елементите во таа низа. 681 00:38:21,920 --> 00:38:26,110 И тоа се овозможува зачувување овие променливи како бр, 682 00:38:26,110 --> 00:38:29,360 а потоа само излез бр веднаш, наместо велејќи: 683 00:38:29,360 --> 00:38:34,090 Јас имам една променлива наречена I, и тогаш сакам да излез strstr [i]. 684 00:38:34,090 --> 00:38:39,130 >> И така што ни овозможува да се направи кул работи. 685 00:38:39,130 --> 00:38:43,330 Како во основа ние не треба да се создаде овие променливи како што е и не сите 686 00:38:43,330 --> 00:38:45,090 оваа incrementation работи на крајот. 687 00:38:45,090 --> 00:38:48,290 PHP се грижи за сето тоа за вас. 688 00:38:48,290 --> 00:38:54,470 >> Па сега ајде да зборуваме за foreach како што се однесува до нашите _GET речникот. 689 00:38:54,470 --> 00:38:57,170 Па ние ќе коментираше овој брзо. 690 00:38:57,170 --> 00:39:02,030 Значи ние треба нашите _GET низа. 691 00:39:02,030 --> 00:39:04,361 Имаме оваа променлива. 692 00:39:04,361 --> 00:39:05,610 И тоа е се здобија некои работи во него. 693 00:39:05,610 --> 00:39:10,275 >> Токму сега, имаме само една променлива се пренесува на тоа, што е името. 694 00:39:10,275 --> 00:39:13,420 Но, ако ние притиснете Enter, сега можеме да имаме две променливи. 695 00:39:13,420 --> 00:39:17,910 Ние може да има име и возраст, на пример, ако сакаме да се возраста и, исто така, 696 00:39:17,910 --> 00:39:20,960 името на некое лице, чудно е доволно. 697 00:39:20,960 --> 00:39:25,690 >> Па сега _GET се случува да се биде речникот со два елементи 698 00:39:25,690 --> 00:39:27,980 со две клучни вредност парови. 699 00:39:27,980 --> 00:39:33,490 И првата key-- Одам да напишам оваа една до на табла премногу. 700 00:39:33,490 --> 00:39:37,136 Имаме нашето речникот е _GET. 701 00:39:37,136 --> 00:39:39,520 За жал, тоа е малку тешко да се види. 702 00:39:39,520 --> 00:39:46,690 Но внатре нашето речникот имаме име, кој се случува да биде нешто 703 00:39:46,690 --> 00:39:47,680 дека ние се дадени. 704 00:39:47,680 --> 00:39:53,040 И ќе имаме возраст, кој е, исто така, ќе биде нешто што ние се дадени. 705 00:39:53,040 --> 00:39:56,020 И ова е целосно на нашето речникот. 706 00:39:56,020 --> 00:39:57,730 >> Па тоа е се здобија два елементи во неа. 707 00:39:57,730 --> 00:40:01,310 И така, бидејќи foreach јамки се паметни, ние 708 00:40:01,310 --> 00:40:04,900 може да се размислува, и правилно Можеби мислите дека foreach 709 00:40:04,900 --> 00:40:08,080 може да iterate преку овој речникот, печатење 710 00:40:08,080 --> 00:40:10,850 вредностите дадени по име и возраст. 711 00:40:10,850 --> 00:40:14,510 >> Значи, да се, всушност, го прават токму тоа. 712 00:40:14,510 --> 00:40:17,520 Ајде да се изгради foreach јамка. 713 00:40:17,520 --> 00:40:23,351 И ние ќе треба да направите за да _GET како. 714 00:40:23,351 --> 00:40:24,850 И ние ќе треба да го направите следново. 715 00:40:24,850 --> 00:40:34,186 Да видиме што ќе се случи ако го напишеш само збор, а потоа велат ехо збор. 716 00:40:34,186 --> 00:40:40,540 Ние сме, исто така, ќе се одгласува нова линија само за да се направи тоа малку појасно, 717 00:40:40,540 --> 00:40:41,260 што се случува. 718 00:40:41,260 --> 00:40:42,890 >> Ќе видиме. 719 00:40:42,890 --> 00:40:44,390 Тоа не е ми даде било какви грешки. 720 00:40:44,390 --> 00:40:46,810 И ние ќе го затвори ова. 721 00:40:46,810 --> 00:40:51,020 На нашата веб страница, ви се случува да се прави многу од тоа во текот на pset7. 722 00:40:51,020 --> 00:40:53,890 Така да се каже, моето име е Сем. 723 00:40:53,890 --> 00:40:58,560 Мојата возраст е 45. 724 00:40:58,560 --> 00:41:01,060 Не е. 725 00:41:01,060 --> 00:41:05,640 Но тоа отпечатоци од, како што се очекуваше, Сем 45. 726 00:41:05,640 --> 00:41:08,930 >> И така ќе забележите дека она foreach јамка did-- тука, 727 00:41:08,930 --> 00:41:12,360 ајде да се вратиме на тоа па тоа е до на board-- добиеме _GET како збор. 728 00:41:12,360 --> 00:41:15,130 И имаше четири работи во _GET. 729 00:41:15,130 --> 00:41:17,410 Но тоа печати само две работи. 730 00:41:17,410 --> 00:41:21,290 foreach, што е нејзина разузнавачка себе, претпоставува дека она што навистина го сакаше 731 00:41:21,290 --> 00:41:24,100 беше на вредности, а не на клучеви. 732 00:41:24,100 --> 00:41:27,800 >> Но, постои начин на кој можеме да се печати од клучевите, како и, ако сакаме да. 733 00:41:27,800 --> 00:41:30,810 Ако сакаме да се, исто така, знаат што овие променливи се нарекува, 734 00:41:30,810 --> 00:41:33,540 има начин што ние да пристапите на оваа, како и. 735 00:41:33,540 --> 00:41:36,840 И начинот на кој да се вид на направи тоа, па може да се каже, да се навистина 736 00:41:36,840 --> 00:41:39,485 го подели на клучните вредност парови. 737 00:41:39,485 --> 00:41:42,370 738 00:41:42,370 --> 00:41:47,580 Да видиме што се случува сега. 739 00:41:47,580 --> 00:41:50,550 >> Па ние имаме клучот. 740 00:41:50,550 --> 00:41:52,290 Имаме вредност. 741 00:41:52,290 --> 00:41:56,650 Имаме уште една нова линија за читливост. 742 00:41:56,650 --> 00:42:00,540 И ајде да видиме што ќе се случи кога ќе го направите тоа сега. 743 00:42:00,540 --> 00:42:04,950 744 00:42:04,950 --> 00:42:06,720 Не знам колку години е Џејсон. 745 00:42:06,720 --> 00:42:09,180 Џејсон 15. 746 00:42:09,180 --> 00:42:11,650 Значи ние треба име Џејсон, 15-годишна возраст. 747 00:42:11,650 --> 00:42:15,830 Па ние бевме во можност да пристапите до клуч и вредност парови на овој речник 748 00:42:15,830 --> 00:42:18,590 само со зборовите како клучни точки да се вредност. 749 00:42:18,590 --> 00:42:23,350 А тоа е foreach синтаксички шеќер малку што им овозможува на 750 00:42:23,350 --> 00:42:25,960 овозможува да пристапите на работите во речникот. 751 00:42:25,960 --> 00:42:31,190 >> Па се надевам дека овој вид на нагласува моќта на јамка foreach. 752 00:42:31,190 --> 00:42:35,690 Прилично многу може да фрли нешто што iterable чини, 753 00:42:35,690 --> 00:42:38,922 како нешто што има повеќе елементи како низа, 754 00:42:38,922 --> 00:42:41,880 како dictionary-- тоа се две Примарната работи што ќе се работат со 755 00:42:41,880 --> 00:42:45,630 и во животот и во pset 7. 756 00:42:45,630 --> 00:42:49,350 Па можете да го фрли тој звук во неа, и таа ќе дознаам 757 00:42:49,350 --> 00:42:51,030 што сакате да се направи со неа. 758 00:42:51,030 --> 00:42:54,250 Тоа ќе се каже, во ред, јас ќе одам да се добие овие работи и од податоците кои 759 00:42:54,250 --> 00:42:55,680 беше донесен за мене. 760 00:42:55,680 --> 00:43:02,470 А тоа е нешто што сте ќе се користат многу во pset 7. 761 00:43:02,470 --> 00:43:08,550 >> Одам да се брза за скролување надолу само за да видам каде сум на. 762 00:43:08,550 --> 00:43:11,410 763 00:43:11,410 --> 00:43:13,070 Дали луѓето имаат прашања во овој момент? 764 00:43:13,070 --> 00:43:13,778 Прашања на сите? 765 00:43:13,778 --> 00:43:14,400 Да? 766 00:43:14,400 --> 00:43:18,320 >> ПУБЛИКАТА: Значи, со клучот и вредност, можете да го името нешто друго 767 00:43:18,320 --> 00:43:20,507 и се уште ќе работи? 768 00:43:20,507 --> 00:43:21,090 Говорник: Упс. 769 00:43:21,090 --> 00:43:22,820 Леле, јас целосно се брише целата линија. 770 00:43:22,820 --> 00:43:23,380 Голема работа. 771 00:43:23,380 --> 00:43:26,502 Па, односно. 772 00:43:26,502 --> 00:43:30,109 Клуч и вредноста е само конвенцијата. 773 00:43:30,109 --> 00:43:30,650 Тоа е корисно. 774 00:43:30,650 --> 00:43:34,010 Ќе добиете некои дизајн поени, можеби некои стил поени 775 00:43:34,010 --> 00:43:36,970 за тоа го прават затоа што навистина пренесува намера. 776 00:43:36,970 --> 00:43:39,650 Но, ние се каже и yarp. 777 00:43:39,650 --> 00:43:42,476 >> Публика: Вие не треба да се менува ништо во HTML датотеката 778 00:43:42,476 --> 00:43:43,607 со цел да го прикажат тоа? 779 00:43:43,607 --> 00:43:44,440 Говорник: Не, воопшто. 780 00:43:44,440 --> 00:43:47,260 ПУБЛИКАТА: И тоа само знае дека поради еднакво поголемо than-- 781 00:43:47,260 --> 00:43:47,801 Говорник: Да. 782 00:43:47,801 --> 00:43:49,489 ПУБЛИКАТА: -Тоа показател дека that's-- 783 00:43:49,489 --> 00:43:50,030 Говорник: Да. 784 00:43:50,030 --> 00:43:52,260 Тоа е синтакса foreach, но да. 785 00:43:52,260 --> 00:43:53,720 >> ПУБЛИКАТА: Не постојат типови. 786 00:43:53,720 --> 00:43:57,230 Па што ако си сакал возраст да биде само голем број? 787 00:43:57,230 --> 00:43:59,510 Дали постои начин да го направите тоа? 788 00:43:59,510 --> 00:44:04,550 >> Говорник: Постојат начини да се провери дали варијабли се во согласност со одредени видови. 789 00:44:04,550 --> 00:44:08,482 Па PHP бара малку повеќе од ви, бидејќи не постојат видови во. 790 00:44:08,482 --> 00:44:09,440 На некој начин тоа бара помалку. 791 00:44:09,440 --> 00:44:11,070 На некој начин тоа бара повеќе. 792 00:44:11,070 --> 00:44:13,320 Затоа што ако имаш само нешто во променлива, 793 00:44:13,320 --> 00:44:14,960 немате идеја каков вид е тоа. 794 00:44:14,960 --> 00:44:19,310 Но, ако сте паметни за варијаблите дека ќе му ја додели видови и бидете сигурни дека за да се 795 00:44:19,310 --> 00:44:22,750 која функционира само вие return-- сакаат функции на само враќање 796 00:44:22,750 --> 00:44:26,210 еден тип од вредност, така што ќе може во основа 797 00:44:26,210 --> 00:44:31,090 Очекуваме дека ќе се вратите во променлива од функција ќе биде од типот 798 00:44:31,090 --> 00:44:32,780 кој мислите дека тоа ќе биде, во основа. 799 00:44:32,780 --> 00:44:36,550 >> Но, постојат некои методи со кој може да се провери. 800 00:44:36,550 --> 00:44:39,801 Јас не се сеќавам нив од врвот на мојата глава. 801 00:44:39,801 --> 00:44:43,300 Јас сум на чекање за тоа да се претвори сина. 802 00:44:43,300 --> 00:44:45,560 isint? 803 00:44:45,560 --> 00:44:48,070 isstr? 804 00:44:48,070 --> 00:44:52,000 Постојат методи вградена во PHP кој може 805 00:44:52,000 --> 00:44:54,440 провери тип на варијабли за вас. 806 00:44:54,440 --> 00:44:58,250 Но, ако го доделите променливи умно, не треба 807 00:44:58,250 --> 00:45:01,330 треба да направите дека премногу во pset 7. 808 00:45:01,330 --> 00:45:02,780 Но овие методи не постојат. 809 00:45:02,780 --> 00:45:06,704 И тоа е нешто што е во самиот јазик. 810 00:45:06,704 --> 00:45:08,370 И јас не се сеќавам на точната синтакса. 811 00:45:08,370 --> 00:45:09,930 Ние дури и да го гледам нагоре. 812 00:45:09,930 --> 00:45:11,974 Но, времето е на суштината. 813 00:45:11,974 --> 00:45:13,890 Дали некој друг да има имате било какви повеќе прашања? 814 00:45:13,890 --> 00:45:14,660 Да. 815 00:45:14,660 --> 00:45:15,951 >> ПУБЛИКАТА: Имам само уште еден. 816 00:45:15,951 --> 00:45:19,050 Така што ги спомна GET методата, но што не се спомене метод на пост. 817 00:45:19,050 --> 00:45:20,500 Дали ние се враќаат во тоа? 818 00:45:20,500 --> 00:45:21,540 >> Говорник: Да, ние ќе се враќаат во тоа. 819 00:45:21,540 --> 00:45:24,840 Тоа е токму она што го барав во мојот телефон, кој сега заспа, 820 00:45:24,840 --> 00:45:26,960 но јас ќе го најдете. 821 00:45:26,960 --> 00:45:30,680 Само што си сигурен ние хит сите PHP белешки. 822 00:45:30,680 --> 00:45:35,640 Да, нема дебагирање верзија. 823 00:45:35,640 --> 00:45:41,940 Да, имаме уште неколку работи кои сакаме да го правиме сега во овој момент. 824 00:45:41,940 --> 00:45:45,980 >> Значи станува збор за пост, кои што ги спомна, 825 00:45:45,980 --> 00:45:49,630 единствената разлика помеѓу GET и POST е 826 00:45:49,630 --> 00:45:53,150 што се сеќавам кога ние погледна на оваа адреса и видовме, ох, 827 00:45:53,150 --> 00:45:58,270 име е еднакво на и возраст еднаква yarp се во право во URL-то таму за нас. 828 00:45:58,270 --> 00:46:03,300 Пост е малку повеќе таинствени со одминување на информации. 829 00:46:03,300 --> 00:46:08,090 >> Значи, ако не сакате на корисникот да се знае, на пример, може 830 00:46:08,090 --> 00:46:11,160 не сакаат корисничко име и лозинка на лицето 831 00:46:11,160 --> 00:46:15,080 моментално најавен за да бидат прикажани во URL-то, што е разумен нешто 832 00:46:15,080 --> 00:46:17,770 да не сакаат во URL-то, затоа што некој може да ја видат. 833 00:46:17,770 --> 00:46:21,520 Ако тие водат некого на некоја страница, можете не сакаат нивните URL малтерисани таму, 834 00:46:21,520 --> 00:46:27,850 затоа што тоа ќе им овозможи на луѓето да се најавите само со вметнување на URL наместо 835 00:46:27,850 --> 00:46:29,670 на всушност пополнување на форма. 836 00:46:29,670 --> 00:46:31,710 Пост е малку повеќе таинствени. 837 00:46:31,710 --> 00:46:34,150 >> И единствените нешта што ние ќе треба да се промени 838 00:46:34,150 --> 00:46:38,550 се на овој метод, промени од се да ја објавите. 839 00:46:38,550 --> 00:46:42,367 А потоа и во внатрешноста на HTTP, наместо за пристап до _GET низа, 840 00:46:42,367 --> 00:46:43,950 ние ќе треба да пристапите на _POST низа. 841 00:46:43,950 --> 00:46:48,600 >> И ние ќе се забележи дека, ако ќе ги отвориме ова се врати повторно, 842 00:46:48,600 --> 00:46:51,910 Џејсон полека опаѓа со возраста. 843 00:46:51,910 --> 00:46:53,230 именува Џејсон, 14 годишна возраст. 844 00:46:53,230 --> 00:46:54,280 Ист материјал се појавува. 845 00:46:54,280 --> 00:46:57,190 Но ние одиме на URL и овие променливи не се таму. 846 00:46:57,190 --> 00:47:00,540 >> И начинот на кој таа функција passes-- па се сеќавам 847 00:47:00,540 --> 00:47:02,750 како да се погледне на изворот на една страница. 848 00:47:02,750 --> 00:47:04,570 Одиме на мрежата. 849 00:47:04,570 --> 00:47:06,920 Ние се освежи. 850 00:47:06,920 --> 00:47:10,690 И ова е уште една работа што Пост ќе ви даде предупредување за. 851 00:47:10,690 --> 00:47:15,050 Може да се види кутија, текст кутија како оваа во вашиот прелистувач. 852 00:47:15,050 --> 00:47:18,170 Дали сте сигурни дека сакате да испратат формулар повторно? 853 00:47:18,170 --> 00:47:21,170 ПОСТ е она што се испраќање на овие форми. 854 00:47:21,170 --> 00:47:24,680 >> Бидејќи во основа ако се испратени на вашата информации за кредитна картичка на некого, 855 00:47:24,680 --> 00:47:26,350 тоа не се случува да се појавиш во URL-то. 856 00:47:26,350 --> 00:47:28,180 Кој ќе биде барање пост. 857 00:47:28,180 --> 00:47:32,905 Па кога ќе се освежи страница, тоа е препраќање дека пост барање. 858 00:47:32,905 --> 00:47:35,530 Па сега ние сакаме да се прати формираат повторно, бидејќи тоа не се случува 859 00:47:35,530 --> 00:47:37,340 да се создаде било дупликат купувања. 860 00:47:37,340 --> 00:47:41,160 >> И ние ќе забележите дека овде на земјата, методот што го користите е пост. 861 00:47:41,160 --> 00:47:43,065 И тоа навистина се префрлите бајти. 862 00:47:43,065 --> 00:47:45,460 Ја префрли 401 од нив. 863 00:47:45,460 --> 00:47:47,190 Програмата е прилично мал. 864 00:47:47,190 --> 00:47:51,600 Но, има никаде дека ние може да се види на вредности кои ги поминаа. 865 00:47:51,600 --> 00:47:59,540 Веб-страници сами можат да го видат, но ние како корисници кои не се во можност да се види, 866 00:47:59,540 --> 00:48:01,650 освен ако не сте хакер. 867 00:48:01,650 --> 00:48:05,340 Ако сте добар хакер, може да се погледне. 868 00:48:05,340 --> 00:48:09,360 >> Ако знаеш основните форматот на HTML, 869 00:48:09,360 --> 00:48:11,790 вредностите ќе се направи се познати на страниците. 870 00:48:11,790 --> 00:48:13,160 Вие ќе бидете во можност да се види. 871 00:48:13,160 --> 00:48:16,720 Вредностите ќе биде таму, тие се само малку помалку очигледни за вас 872 00:48:16,720 --> 00:48:19,522 за пристап, во основа. 873 00:48:19,522 --> 00:48:23,620 >> Дали имаме било повеќе прашања во врска со ГЕТ, пост 874 00:48:23,620 --> 00:48:26,800 before-- она ​​што се случува следно да направи, е, всушност, се погледне во некои од кодот 875 00:48:26,800 --> 00:48:30,837 дека сте давање во pset 7, се зборува за како ги користи некои од овие концепти, 876 00:48:30,837 --> 00:48:32,670 и да се зборува за работите што ви се случува 877 00:48:32,670 --> 00:48:35,090 мора да се направи малку во pset 7. 878 00:48:35,090 --> 00:48:36,760 Други прашања пред тоа? 879 00:48:36,760 --> 00:48:38,047 Повеќе прашања вие момци имаат? 880 00:48:38,047 --> 00:48:41,250 881 00:48:41,250 --> 00:48:41,840 Одлично. 882 00:48:41,840 --> 00:48:45,370 >> Добро, ајде да погледнеме малку во pset 7, 883 00:48:45,370 --> 00:48:49,530 без сомнение она што се сите највозбудливо. 884 00:48:49,530 --> 00:48:52,126 885 00:48:52,126 --> 00:48:54,750 Мислам, ова е нешто што Дејвид оди преку малку. 886 00:48:54,750 --> 00:49:00,890 Но, ние ќе имаме три директориуми на врвот, како и конфигурациската датотека. 887 00:49:00,890 --> 00:49:04,650 Тоа е за бази на податоци, кои ние ќе зборуваме за во околу пет минути. 888 00:49:04,650 --> 00:49:07,220 Вклучува, вие никогаш не треба да се погледне во овој директориум 889 00:49:07,220 --> 00:49:12,480 ако не сакате да, но убаво е да се Знаеме дека постојат сите видови на помагачи. 890 00:49:12,480 --> 00:49:14,210 Помагачи е како корисни функции. 891 00:49:14,210 --> 00:49:18,120 И тогаш имаме за конфигурација, кој ги поставува некои работи до. 892 00:49:18,120 --> 00:49:24,590 >> Постојат некои функции кои CS50 има напишано дека се во помошник и прил. 893 00:49:24,590 --> 00:49:27,250 А некои од PHP дека веќе излегува во датотеки 894 00:49:27,250 --> 00:49:30,880 ќе се направи многу повеќе од еден вид тап на нога работа за вас. 895 00:49:30,880 --> 00:49:35,250 Како и ако одиме во јавноста login.php, што е она што 896 00:49:35,250 --> 00:49:38,350 се појавува во право кога одите во pset 7. 897 00:49:38,350 --> 00:49:40,580 Ќе видиме дека има ова бара изјава. 898 00:49:40,580 --> 00:49:43,420 И тој вид на како остри вклучуваат, хаштагот 899 00:49:43,420 --> 00:49:46,850 вклучуваат, ако сте на поновата генерација. 900 00:49:46,850 --> 00:49:49,740 Но ова во основа вели дека е потребен пристап 901 00:49:49,740 --> 00:49:52,260 на сите функции во config.php. 902 00:49:52,260 --> 00:49:55,290 И може да имаат потреба од за сите видови на други работи. 903 00:49:55,290 --> 00:49:59,670 >> конфиг всушност бара помагачи. 904 00:49:59,670 --> 00:50:02,490 Па кога ви се потребни конфигурација, ти си исто така 905 00:50:02,490 --> 00:50:05,660 вклучувајќи или бараат помошници, како и. 906 00:50:05,660 --> 00:50:09,590 Така што ви дава пристап до сите кул функции кои ние ќе треба да се користи, 907 00:50:09,590 --> 00:50:10,420 Работите како да ја даде. 908 00:50:10,420 --> 00:50:13,490 Јас сум, всушност ќе ја ублажат ова долу малку. 909 00:50:13,490 --> 00:50:16,280 Значи функцијата тогаш ние сме ќе одиме преку 910 00:50:16,280 --> 00:50:22,380 само пред да продолжат понатаму да SQL малку малку е функцијата за login.php, само 911 00:50:22,380 --> 00:50:26,586 поради тоа што користи некои од темите дека ние само разговаравме за во PHP. 912 00:50:26,586 --> 00:50:30,840 >> Гледаш првата работа е ако $ _SERVER. 913 00:50:30,840 --> 00:50:34,500 Ова е уште една глобална променлива дека сте ќе треба да се занимаваат со. 914 00:50:34,500 --> 00:50:38,460 Тоа е како _GET и _POST, но она што сервер содржи се ова може да ви ги споделите со 915 00:50:38,460 --> 00:50:42,730 знам дали методот на барање беше GET или POST. 916 00:50:42,730 --> 00:50:47,250 Како претходно што правиме е само во нашата код кој што напиша, 917 00:50:47,250 --> 00:50:51,880 бевме само менување на тоа да биде да се добие и ПОСТ зависност од она што HTML има. 918 00:50:51,880 --> 00:50:55,120 Но има и страници кои може да бидат пристапи со двата типа на барања. 919 00:50:55,120 --> 00:50:57,410 И можеби ќе сакате да се направи различни работи во зависност 920 00:50:57,410 --> 00:50:59,740 од видот на барањето, исто како и најава прави. 921 00:50:59,740 --> 00:51:04,400 >> За да може да се провери дали барање метод преку пристапуваат клучеви, 922 00:51:04,400 --> 00:51:08,630 преку користење на клучни и добивање на вредност на нешто во речникот 923 00:51:08,630 --> 00:51:10,260 _SERVER. 924 00:51:10,260 --> 00:51:13,800 Па тоа е уште една глобална променлива како _GET и _POST. 925 00:51:13,800 --> 00:51:16,990 >> Ако тоа е да се добие, ние сакаме да го направат формуларот за најава. 926 00:51:16,990 --> 00:51:21,920 Рендерирање е функција што во основа само го става до соодветниот HTML таг 927 00:51:21,920 --> 00:51:24,500 и поминува некои параметри. 928 00:51:24,500 --> 00:51:28,740 Овој наслов е параметар кој е се користи за приказ, чудно е доволно, 929 00:51:28,740 --> 00:51:32,670 наслов на страницата прашање, нешто тука, 930 00:51:32,670 --> 00:51:34,850 каже или здраво и во претходниот пример. 931 00:51:34,850 --> 00:51:36,100 Сега имаме различна работа. 932 00:51:36,100 --> 00:51:38,570 На друго место, ако тоа е пост, ние прават некои други работи. 933 00:51:38,570 --> 00:51:40,790 Ние сме со користење на тој празен метод. 934 00:51:40,790 --> 00:51:42,750 Тоа не е да постои, таа е празна. 935 00:51:42,750 --> 00:51:45,440 И видовме претходно, PHP има фер износот на гради 936 00:51:45,440 --> 00:51:52,370 во методите што Давид will-- ако има се методи кои се корисни за вас, 937 00:51:52,370 --> 00:51:55,560 тие ќе бидат предупредени за вас во прошетка низ Давид 938 00:51:55,560 --> 00:51:59,770 дава на почетокот преглед, и исто така корисни битови Zamyla е. 939 00:51:59,770 --> 00:52:01,040 Таа е назад секого. 940 00:52:01,040 --> 00:52:03,100 Сите можеме да се радуваме. 941 00:52:03,100 --> 00:52:06,530 извини е наречена функција дека само во основа отпечатоци од 942 00:52:06,530 --> 00:52:10,130 некои пораки за грешки, бидејќи CS50 е многу љубезни. 943 00:52:10,130 --> 00:52:14,770 >> А сега ова, ова е Слабо малку бидејќи ова 944 00:52:14,770 --> 00:52:16,697 е местото каде што ние сме доведување во прашање на базата на податоци. 945 00:52:16,697 --> 00:52:18,280 Сега ние не сме разговарале за бази на податоци. 946 00:52:18,280 --> 00:52:22,220 И ние ќе треба да во следните пет минути или така, максимум. 947 00:52:22,220 --> 00:52:24,980 Но, ова е во функција кој има напишано CS50 948 00:52:24,980 --> 00:52:38,050 да се добие маса во основа од базата на податоци дека ние работиме со нив, во pset 7. 949 00:52:38,050 --> 00:52:40,860 Јас сум навистина лошо со мојата нула индексирање денес. 950 00:52:40,860 --> 00:52:42,060 Но да, тоа е 7. 951 00:52:42,060 --> 00:52:46,340 >> Па се пребарува тоа се случува да се врати низа, во основа е клучот малку. 952 00:52:46,340 --> 00:52:54,130 И затоа што овие работи немаат пишување, па редови е низа од низи. 953 00:52:54,130 --> 00:52:59,480 Бидејќи кога мислиме маса, она што се случува да се направи 954 00:52:59,480 --> 00:53:04,830 е, како што го научиле во psets како на играта од 15, во секој случај 955 00:53:04,830 --> 00:53:06,990 каде што требаше да се користи двојна низа, ние во основа 956 00:53:06,990 --> 00:53:15,210 има низа на други низи прави табела. 957 00:53:15,210 --> 00:53:18,150 И имаш редови и колони. 958 00:53:18,150 --> 00:53:24,450 А потоа можете да им пристапите како [0] [1], ќе го добиете [0] [1]. 959 00:53:24,450 --> 00:53:26,900 Основни работи како што. 960 00:53:26,900 --> 00:53:29,380 >> Значи она што го правиме овде, во оваа функција, 961 00:53:29,380 --> 00:53:35,070 ние бараме за базата на податоци ако корисникот тоа е 962 00:53:35,070 --> 00:53:40,200 обидувајќи се да се најавите, кои ќе бидат испратени преку метод на пост. 963 00:53:40,200 --> 00:53:43,950 Ќе видиме ние сме добивање корисничкото име од _POST. 964 00:53:43,950 --> 00:53:46,900 Тие ќе ги испратиле, корисникот или ти, ќе испрати вредност 965 00:53:46,900 --> 00:53:50,750 преку форма преку пост, бидејќи тоа е корисничко име и лозинка работи. 966 00:53:50,750 --> 00:53:54,830 Ние сме проверка на корисничко име да се види, дали е ова на табелата? 967 00:53:54,830 --> 00:53:58,070 Бидејќи ако корисникот е најавување во, а потоа нивните корисничко име 968 00:53:58,070 --> 00:54:03,320 треба да се чуваат во табелата на корисници кои постојат за овој сајт. 969 00:54:03,320 --> 00:54:09,360 Значи, во основа, ако Корисникот не е во базата на податоци, 970 00:54:09,360 --> 00:54:16,400 Барањето ќе се врати тој ред, што е низа. 971 00:54:16,400 --> 00:54:24,560 >> Но слабо дел е дека ако дури и ако двојна низа е само од еден ред, 972 00:54:24,560 --> 00:54:31,900 дури и ако тоа е еден ред array-- како да славиш basically-- 973 00:54:31,900 --> 00:54:36,900 ако имаш големина една низа дека во рацете држи друга низа, 974 00:54:36,900 --> 00:54:38,940 сте навистина се занимаваат со една колона. 975 00:54:38,940 --> 00:54:41,420 Но, тоа се уште се третира како двојна низа. 976 00:54:41,420 --> 00:54:44,560 >> И ова е местото каде што понекогаш може да се добие незгодно, бидејќи ние го добивме редови тука. 977 00:54:44,560 --> 00:54:46,440 Нашите променлива е редови. 978 00:54:46,440 --> 00:54:48,590 А потоа ние сме создавање нова променлива наречена ред 979 00:54:48,590 --> 00:54:51,450 и поставување еднаква на првиот ред на редови. 980 00:54:51,450 --> 00:54:55,150 И ќе забележите дека коментар вели дека тоа е првиот и единствен ред. 981 00:54:55,150 --> 00:54:57,080 >> Значи ова е незгодно делот каде што сега функционира 982 00:54:57,080 --> 00:54:59,660 можат да се вратат низи многу лесно. 983 00:54:59,660 --> 00:55:01,270 Таму не е mallocs. 984 00:55:01,270 --> 00:55:02,280 Вие нема да видите mallocs. 985 00:55:02,280 --> 00:55:03,940 Така што не ќе се види секунда грешки. 986 00:55:03,940 --> 00:55:08,380 Но функции се уште ќе биде донесување околу низи и податоци во групи. 987 00:55:08,380 --> 00:55:12,250 А вие треба да бидат внимателни на она што точно вашиот функции ќе се вратат. 988 00:55:12,250 --> 00:55:15,160 И дури и ако тоа е една колона, како таков, се пребарува 989 00:55:15,160 --> 00:55:17,520 се уште се случува да се врати двојно низа. 990 00:55:17,520 --> 00:55:21,390 Така да пристапите до таа column-- или да мислам на сето тоа, како превртена 991 00:55:21,390 --> 00:55:22,870 бидејќи ние зборуваме за реда. 992 00:55:22,870 --> 00:55:26,810 Но, за да пристапите дека еден ред, не може само да се каже редови. 993 00:55:26,810 --> 00:55:31,540 Иако тоа е еден ред, мора да се се rowsrows [0] за да се елиминира овој вид на 994 00:55:31,540 --> 00:55:37,360 надворешниот малку на низата и има само вашиот еден ред. 995 00:55:37,360 --> 00:55:38,342 >> Дали некои други работи. 996 00:55:38,342 --> 00:55:40,050 Има една функција наречен password_verify 997 00:55:40,050 --> 00:55:42,980 пред кој се потврдува лозинката, која е објавена. 998 00:55:42,980 --> 00:55:48,500 А потоа ќе видиме уште една глобална променлива тука, _SESSION. 999 00:55:48,500 --> 00:55:51,340 Во основа Session ID е како да ги пратите 1000 00:55:51,340 --> 00:55:53,990 на, ако некој е логиран или не. 1001 00:55:53,990 --> 00:55:58,590 Па сега со login.php, ние сме влезете на корисникот во. 1002 00:55:58,590 --> 00:56:01,920 Значи она што ние сакаме да го направи е што сакаме да велат Ид е еднаква на ред 1003 00:56:01,920 --> 00:56:05,890 проект, која само што има смисла, бидејќи секој ред ќе има поинаков проект 1004 00:56:05,890 --> 00:56:07,239 број како дел од табелата. 1005 00:56:07,239 --> 00:56:09,280 Ние ќе дојдеме во SQL во секунда, па ако било кој од овој 1006 00:56:09,280 --> 00:56:13,500 изгледа малку како бла, тогаш сите ќе бидат расчистени. 1007 00:56:13,500 --> 00:56:18,450 Но, ние ќе треба да се постави на проект еднаква на соодветна работа, влезете на корисникот во. 1008 00:56:18,450 --> 00:56:20,530 Извини ако нешто тргне наопаку. 1009 00:56:20,530 --> 00:56:27,600 И тоа е цел во најава живот како професор Malan би рекол. 1010 00:56:27,600 --> 00:56:29,130 >> Така што беше login.php. 1011 00:56:29,130 --> 00:56:33,750 И многу кодот PHP ти пишувам во pset 7, тие ќе бидат малку. 1012 00:56:33,750 --> 00:56:36,470 Не заборавајте да chmod да соодветна дозвола. 1013 00:56:36,470 --> 00:56:40,180 Таму ќе биде малку за дека во почетокот на спец. 1014 00:56:40,180 --> 00:56:46,382 >> Но PHP дека сте пишување ќе биде 1015 00:56:46,382 --> 00:56:47,840 прават работи кои се слични на ова. 1016 00:56:47,840 --> 00:56:49,715 Си оди за да биде пристап до некои работи кои 1017 00:56:49,715 --> 00:56:52,760 се што ви е дадена во глобални променливи на PHP кои 1018 00:56:52,760 --> 00:56:56,105 се занимаваат со тековната логиран на корисникот, без разлика дали има 1019 00:56:56,105 --> 00:57:00,460 се барања испратени на овој страница, различни работи како што. 1020 00:57:00,460 --> 00:57:05,790 И тоа, исто така, ќе биде потенцијално процесирањето преку редовите на оваа работа. 1021 00:57:05,790 --> 00:57:09,010 >> Во различна функција, барање се врати оваа двојна низа. 1022 00:57:09,010 --> 00:57:11,450 И ако има повеќе од една редови во тоа, 1023 00:57:11,450 --> 00:57:15,080 ако има are-- да, ако има се повеќе од еден редови во тоа, 1024 00:57:15,080 --> 00:57:16,870 тогаш тоа ќе биде на маса. 1025 00:57:16,870 --> 00:57:20,500 И можеби ќе сакате да iterate меѓу редовите од оваа низа користите 1026 00:57:20,500 --> 00:57:22,860 јамка foreach кои ги опиша. 1027 00:57:22,860 --> 00:57:30,270 >> Значи, ако правиш foreach на двоен низа, што ќе word-- тука, 1028 00:57:30,270 --> 00:57:31,909 Јас, всушност, ќе го напише. 1029 00:57:31,909 --> 00:57:32,950 Јас ќе го напишам брз тука. 1030 00:57:32,950 --> 00:57:44,280 >> Ако имаме foreach на редови како што е ред, што е од типот на ред? 1031 00:57:44,280 --> 00:57:45,390 Дали некој знае? 1032 00:57:45,390 --> 00:57:54,000 1033 00:57:54,000 --> 00:57:54,500 Ти ја доби? 1034 00:57:54,500 --> 00:57:57,110 Па редови е двојна низа. 1035 00:57:57,110 --> 00:58:02,810 Значи она што се случува да заклучиме foreach што го сакаме од ова двојно низа 1036 00:58:02,810 --> 00:58:04,280 ако ние сме процесирањето над неа? 1037 00:58:04,280 --> 00:58:07,170 1038 00:58:07,170 --> 00:58:10,770 Ние во основа може да се претпостави дека тоа се случува да биде или елементи, 1039 00:58:10,770 --> 00:58:14,970 или редови или колони, во основа. 1040 00:58:14,970 --> 00:58:18,740 И така на редови и колони ние може да се третираат како едно исто. 1041 00:58:18,740 --> 00:58:23,880 >> Во основа она што се случува со јамка foreach да се направи е тоа се случува да се врати редови. 1042 00:58:23,880 --> 00:58:28,500 ред ќе биде од типот ред, со оглед на редови е двојна низа. 1043 00:58:28,500 --> 00:58:32,290 Значи, ако ви даде foreach двојна низа, тоа е 1044 00:58:32,290 --> 00:58:35,830 нема да iterate длабоко повеќе од едно ниво. 1045 00:58:35,830 --> 00:58:44,464 Кој во основа е да се каже, ако има осум клетки во оваа table-- 1,2, 1046 00:58:44,464 --> 00:58:48,110 3 4, 5, 6, 7, 8-- на foreach циклусот не е 1047 00:58:48,110 --> 00:58:51,880 случува да поминат низ секоја од овие клетки. 1048 00:58:51,880 --> 00:58:56,390 Она што ќе го направи јамка foreach беше дека ќе одат преку овој ред, 1049 00:58:56,390 --> 00:58:57,870 ви даде целиот овој спор. 1050 00:58:57,870 --> 00:58:59,410 И тогаш тоа ќе оди преку тој ред. 1051 00:58:59,410 --> 00:59:01,850 >> Па тоа само iterates едно ниво длабоки. 1052 00:59:01,850 --> 00:59:05,310 Ако додадете вгнезден foreach јамка, тогаш 1053 00:59:05,310 --> 00:59:16,280 може да се третираат секој ред се врати од редови, нели foreach ред како елемент, 1054 00:59:16,280 --> 00:59:17,640 да речеме. 1055 00:59:17,640 --> 00:59:22,750 А потоа можете да ги повториме елемент. 1056 00:59:22,750 --> 00:59:24,930 Значи тоа е краток малку бакшиш за тоа како 1057 00:59:24,930 --> 00:59:30,220 Можете да користите foreach јамки во контекст на барањето. 1058 00:59:30,220 --> 00:59:32,840 >> Дали постојат било какви прашања во врска со PHP? 1059 00:59:32,840 --> 00:59:36,520 Ништо на сите, пред да се движат за да се зборува за SQL 1060 00:59:36,520 --> 00:59:37,820 и на забавата на база на податоци? 1061 00:59:37,820 --> 00:59:41,480 1062 00:59:41,480 --> 00:59:42,110 Се чувствувам добро? 1063 00:59:42,110 --> 00:59:42,750 Се чувствувам добро. 1064 00:59:42,750 --> 00:59:43,470 Во ред. 1065 00:59:43,470 --> 00:59:49,130 >> Ајде да се движи назад во PowerPoint, која, најверојатно, ќе го пропушти. 1066 00:59:49,130 --> 00:59:51,800 SQL, Yay. 1067 00:59:51,800 --> 00:59:57,900 Луѓе кои се тука ми обично ќе знаете дека подброеви на акроними 1068 00:59:57,900 --> 01:00:01,220 се секогаш само првите зборови Мислам дека на тој натпревар, кој 1069 01:00:01,220 --> 01:00:02,690 algorithm-- тој акроним. 1070 01:00:02,690 --> 01:00:04,090 Тоа не е алгоритам. 1071 01:00:04,090 --> 01:00:08,050 >> Па SQL е база на податоци. 1072 01:00:08,050 --> 01:00:11,060 Тоа е јазик кој работи со бази на податоци. 1073 01:00:11,060 --> 01:00:14,440 И сите бази на податоци се е маси, барем во начинот на 1074 01:00:14,440 --> 01:00:17,220 дека SQL ги претставува. 1075 01:00:17,220 --> 01:00:23,610 >> Друг начин да се размислува за базите на податоци е бази на податоци се збир на клучеви и вредности 1076 01:00:23,610 --> 01:00:24,110 основа. 1077 01:00:24,110 --> 01:00:29,530 Можете да размислувате за базата на податоци што се речник и, исто така, како табела. 1078 01:00:29,530 --> 01:00:34,300 Во суштина тоа е начин да се дружат различни податоци со други податоци, 1079 01:00:34,300 --> 01:00:36,270 често преку редови и колони. 1080 01:00:36,270 --> 01:00:38,470 И тоа е начинот на тоа е SQL работи најдобро. 1081 01:00:38,470 --> 01:00:40,880 >> Така што ова е само еден пример на табела. 1082 01:00:40,880 --> 01:00:44,610 Имам неколку примери за тоа луѓе во мојот дел, кој 1083 01:00:44,610 --> 01:00:45,970 Немав време за промена. 1084 01:00:45,970 --> 01:00:52,020 Но, ние мора нешта како проект, име, суперсила, а роден град. 1085 01:00:52,020 --> 01:00:54,100 Не знам каде што секој е во дел од мојата, 1086 01:00:54,100 --> 01:00:56,266 па јас сум само ќе ги преземе сите се од Њујорк 1087 01:00:56,266 --> 01:00:59,370 Градот, бидејќи имам високо статистички Веројатноста за да биде точна. 1088 01:00:59,370 --> 01:01:04,200 >> SQL автоматски ќе се грижа на колоната за проект за вас. 1089 01:01:04,200 --> 01:01:07,560 Ако вметнете нов ред во SQL база на податоци, 1090 01:01:07,560 --> 01:01:09,700 тоа ќе прираст дека ID број и само 1091 01:01:09,700 --> 01:01:14,890 во основа се држи како пет имиња, суперсила, родниот град, кој и 1092 01:01:14,890 --> 01:01:16,430 кон крајот на таа маса. 1093 01:01:16,430 --> 01:01:19,160 Па проект е колона ќе никогаш не треба да се грижите. 1094 01:01:19,160 --> 01:01:22,770 Но, како и во случај на login.php, кога ќе 1095 01:01:22,770 --> 01:01:26,610 беа добивање проект седницата од табелата и само со користење на проект, 1096 01:01:26,610 --> 01:01:30,320 Проект е начин да се идентификуваат уникатно елемент на база на податоци. 1097 01:01:30,320 --> 01:01:34,980 >> Значи, ако имавме две Sams, двата кој предава CS50, и двете од кои 1098 01:01:34,980 --> 01:01:39,370 беа од Милвоки, тие би уште имаат различни идентификациски броеви 1099 01:01:39,370 --> 01:01:43,420 и со тоа да бидат различни во контекст на табелата. 1100 01:01:43,420 --> 01:01:48,700 Значи ова е она што се занимаваат SQL со, во кои работат со нив, во задниот крај. 1101 01:01:48,700 --> 01:01:54,160 >> Сега овие се четирите команди дека ќе треба да се работи со SQL. 1102 01:01:54,160 --> 01:01:56,390 И јас ги сите фрли на еден слајд. 1103 01:01:56,390 --> 01:01:59,530 Но, ние ќе треба да поминат низ сите нив поединечно. 1104 01:01:59,530 --> 01:02:03,300 >> Првата команда е ажурирање, што го прави она што би очекувале. 1105 01:02:03,300 --> 01:02:07,240 Велат дека имате некои податоци во масата која е надвор од датум. 1106 01:02:07,240 --> 01:02:09,470 Како ако сте чување песна на имињата на луѓето 1107 01:02:09,470 --> 01:02:13,350 и возрасти, ако некој е зголемување на возраста, а потоа 1108 01:02:13,350 --> 01:02:18,590 ви се случува да сакаат да одат во и обновете возраст само на тоа лице. 1109 01:02:18,590 --> 01:02:21,902 За пример, која работи со нашата прва table-- 1110 01:02:21,902 --> 01:02:24,610 не се грижи за сите на пишување овие команди во исто време. 1111 01:02:24,610 --> 01:02:27,640 Но, ако имаш ажурирање надолу, дека ќе биде добро за овој дел, 1112 01:02:27,640 --> 01:02:29,790 затоа што ние ќе треба да да се вратиме на маса. 1113 01:02:29,790 --> 01:02:33,920 >> Значи, ако ние се вратиме на маса, да речеме нешто што се случило 1114 01:02:33,920 --> 01:02:38,480 беше имаше земјотрес или грешка линија која директно се подели 1115 01:02:38,480 --> 01:02:39,920 низ градот Њујорк. 1116 01:02:39,920 --> 01:02:45,130 И сакавме да се ажурираат секој кој живеел во Њујорк. 1117 01:02:45,130 --> 01:02:49,670 Сите тие мораа да се преселат во Пенсилванија. 1118 01:02:49,670 --> 01:02:51,130 Тоа не е роден град. 1119 01:02:51,130 --> 01:02:53,180 Сите тие мораа да се преселат во Њу Хејвен. 1120 01:02:53,180 --> 01:02:54,030 Таму ќе одиме. 1121 01:02:54,030 --> 01:02:57,630 Па секој во Њујорк се движи кон Њу Хејвен. 1122 01:02:57,630 --> 01:03:01,300 >> И така тоа е нешто што е уредување на три реда во оваа табела. 1123 01:03:01,300 --> 01:03:04,716 Но, во SQL, можете да направите дека во само една изјава. 1124 01:03:04,716 --> 01:03:05,715 Значи ние се вратиме на ажурирање. 1125 01:03:05,715 --> 01:03:09,670 Дозволете ми да брзо се избрише овој форум повторно. 1126 01:03:09,670 --> 01:03:14,570 Кога зборуваме за ажурирање, постојат 1127 01:03:14,570 --> 01:03:17,640 неколку делови на синтаксата што се клучни. 1128 01:03:17,640 --> 01:03:19,770 Па, сите на синтаксата е клучот. 1129 01:03:19,770 --> 01:03:22,210 Но работи во зелено е задолжително. 1130 01:03:22,210 --> 01:03:25,680 Потребни се бели, како предефинирани имиња. 1131 01:03:25,680 --> 01:03:30,750 И светло сина, се работи кои варираат во зависност од масата. 1132 01:03:30,750 --> 01:03:34,640 Значи тоа е она што се случува со шема на бои тука, таму горе. 1133 01:03:34,640 --> 01:03:40,250 >> Значи, ако сакаме да се ажурира само оние редови на луѓето кои живеат во Њујорк, 1134 01:03:40,250 --> 01:03:43,490 така што ќе правиме ако се рече ажурирање? 1135 01:03:43,490 --> 01:03:46,320 Така маса е местото каде што ќе стави името на нашата маса. 1136 01:03:46,320 --> 01:03:49,170 Да речеме името на нашата маса е масата еден. 1137 01:03:49,170 --> 01:03:52,515 Значи, ние сакаме да се ажурира табела еден. 1138 01:03:52,515 --> 01:03:57,470 И ние сакаме да set-- она што сакаме да го поставите? 1139 01:03:57,470 --> 01:04:05,160 И ние сакаме да се каже, па column-- PHP третира редови како единствени идентификатори. 1140 01:04:05,160 --> 01:04:07,930 А потоа и колони се различни области 1141 01:04:07,930 --> 01:04:09,940 на оние елементи на базата на податоци. 1142 01:04:09,940 --> 01:04:14,210 >> Па на првиот елемент на базата на податоци има име на Сем, суперсила на CS50, 1143 01:04:14,210 --> 01:04:16,210 и родниот град на Милвоки. 1144 01:04:16,210 --> 01:04:20,710 Па ако се рече постави, да ги погледнеме повторно ги параметрите што сет зема. 1145 01:04:20,710 --> 01:04:23,880 Имаме колона еднаква вредност. 1146 01:04:23,880 --> 01:04:27,290 Значи, ние сакаме да се каже некои column-- што се сеќавам 1147 01:04:27,290 --> 01:04:31,850 е field-- сакаме да ја видите поле еднакво на нешто ново. 1148 01:04:31,850 --> 01:04:42,340 >> Значи, ако ние само рече ажурирање Табела 1, во собата име еднаков Елиот. 1149 01:04:42,340 --> 01:04:46,310 Добијат некои луѓе од нов оддел за ова. 1150 01:04:46,310 --> 01:04:51,540 Но, ако ние само го направи ажурирање табела 1 наместите името еднаков Елиот, што би 1151 01:04:51,540 --> 01:04:55,530 изгледот табела како после тоа? 1152 01:04:55,530 --> 01:04:56,410 Луѓето имаат било каква идеја? 1153 01:04:56,410 --> 01:04:59,710 1154 01:04:59,710 --> 01:05:00,210 Је. 1155 01:05:00,210 --> 01:05:03,195 >> ПУБЛИКАТА: Сè што во тој ред ќе стане Елиот. 1156 01:05:03,195 --> 01:05:04,570 Говорник: Се во кој ред? 1157 01:05:04,570 --> 01:05:06,067 ПУБЛИКАТА: Во првиот ред. 1158 01:05:06,067 --> 01:05:07,150 Говорник: Во првиот ред? 1159 01:05:07,150 --> 01:05:09,724 Зошто првиот ред? 1160 01:05:09,724 --> 01:05:10,890 Јас не значи да ги собереш на вас. 1161 01:05:10,890 --> 01:05:13,287 >> ПУБЛИКАТА: Можеби се ' во целата маса? 1162 01:05:13,287 --> 01:05:15,120 Говорник: Се што е во целата маса, да. 1163 01:05:15,120 --> 01:05:19,520 И тоа е точно во право because-- јас беше само да ви помогнеме надвор малку 1164 01:05:19,520 --> 01:05:22,650 there-- бидејќи ние испуштени опционални КАДЕ клаузула. 1165 01:05:22,650 --> 01:05:27,260 Ако немате КАДЕ клаузула, што ќе направи оваа команда 1166 01:05:27,260 --> 01:05:32,240 е дека ќе работат со секој еден ред во табелата. 1167 01:05:32,240 --> 01:05:35,430 Името на секого ќе стане Елиот, во основа, 1168 01:05:35,430 --> 01:05:37,360 кој Елиот е многу среќен за него. 1169 01:05:37,360 --> 01:05:40,070 Или Yanni, една од двете. 1170 01:05:40,070 --> 01:05:42,490 Но името на секого ќе се промени. 1171 01:05:42,490 --> 01:05:47,880 >> Па начинот на кој ние ги користиме на КАДЕ clause-- и ова се однесува на сите случаи каде 1172 01:05:47,880 --> 01:05:51,410 кои се во секоја од овие различни нешта. 1173 01:05:51,410 --> 01:05:54,380 Така ќе забележите дека СЕТ има колона со еднаква вредност. 1174 01:05:54,380 --> 01:05:55,190 И така и каде. 1175 01:05:55,190 --> 01:06:00,040 Но, тоа се различни видови на извештаи. 1176 01:06:00,040 --> 01:06:04,400 Па колоната еднаква вредност во уредот е задача. 1177 01:06:04,400 --> 01:06:08,320 Како што ние велиме ние сакаме да го поставите името еднаква на Елиот. 1178 01:06:08,320 --> 01:06:15,390 Но во клаузулите КАДЕ, овие се изјавите еднаквост. 1179 01:06:15,390 --> 01:06:20,410 Па да речеме сакавме само да се промена на името на лицето за да Елиот 1180 01:06:20,410 --> 01:06:23,940 ако нивното име е Рајан, да речеме. 1181 01:06:23,940 --> 01:06:24,920 >> Значи, кога ќе се каже 1182 01:06:24,920 --> 01:06:32,700 >> КАДЕ име е еднаква на Рајан, кој би успешно само промена 1183 01:06:32,700 --> 01:06:37,440 само name-- што би сменете го името во редови 1184 01:06:37,440 --> 01:06:40,770 каде името поле е еднакво на Рајан. 1185 01:06:40,770 --> 01:06:44,430 Значи, ако ние имавме повеќе луѓе име Рајан, сите на нивните имиња 1186 01:06:44,430 --> 01:06:45,730 ќе се промени до Елиот. 1187 01:06:45,730 --> 01:06:48,169 >> Ова е слично на примерот ако на грешка линија дели 1188 01:06:48,169 --> 01:06:50,960 Њујорк и секој мора да се пресели во Њу Хевн, начинот на кој што можеме 1189 01:06:50,960 --> 01:06:56,570 направи тоа во еден изјавата е Ажурирање Табела 1 СЕТ роден град = Њу Хејвн 1190 01:06:56,570 --> 01:07:00,210 каде што е еднакво на родниот град Њу Јорк. 1191 01:07:00,210 --> 01:07:03,410 Ова е моќта на изјавата Ажурирање. 1192 01:07:03,410 --> 01:07:10,530 Ние може да изберете било кој број на редови преку вистински извештаи 1193 01:07:10,530 --> 01:07:12,860 во врска со областите во тие редови. 1194 01:07:12,860 --> 01:07:19,510 Не можеме да кажеме Ажурирање Табела 1 сет име = Елиот КАДЕ ред = 1, 1195 01:07:19,510 --> 01:07:24,820 освен што можеме, ако кажеме проект = 1. 1196 01:07:24,820 --> 01:07:27,350 1197 01:07:27,350 --> 01:07:29,830 >> Па ние ќе треба да биде работа со еднаквост 1198 01:07:29,830 --> 01:07:32,830 на области, еднаквост на колони. 1199 01:07:32,830 --> 01:07:38,030 Но со користење на полето за проект е начин да се изберете специјално индивидуалните редови, 1200 01:07:38,030 --> 01:07:43,210 бидејќи полето за проект е единствен идентификатор во SQL база на податоци. 1201 01:07:43,210 --> 01:07:45,860 Па како и ажурирање на ред еден, проект е еднакво на 1. 1202 01:07:45,860 --> 01:07:49,560 Ажурирање ред два, само промени тоа ID број. 1203 01:07:49,560 --> 01:07:51,610 Но моќта на КАДЕ изјава е дека ние 1204 01:07:51,610 --> 01:07:57,480 може да го ажурира работи врз основа на она што нивните моменталните вредности на одредени работи се. 1205 01:07:57,480 --> 01:07:58,155 Да Елиот? 1206 01:07:58,155 --> 01:08:02,678 >> ПУБЛИКАТА: А што ако сакате to-- повторно, ова е друго прашање. 1207 01:08:02,678 --> 01:08:07,660 Но, моето прво прашање беше, каде што се случува ова? 1208 01:08:07,660 --> 01:08:09,130 Каде сум јас ажурирање на оваа? 1209 01:08:09,130 --> 01:08:11,100 Дали е ова во кодот PHP? 1210 01:08:11,100 --> 01:08:13,379 >> Говорник: Каде ви ажурирање, да. 1211 01:08:13,379 --> 01:08:15,170 Ние се случува да се зборува за тоа каде сето ова 1212 01:08:15,170 --> 01:08:18,729 случува вид еднаш одиме низ сите команди. 1213 01:08:18,729 --> 01:08:21,130 Но, она што треба да се знам за сега е во основа 1214 01:08:21,130 --> 01:08:26,279 дека вашиот SQL база на податоци постои како нешто 1215 01:08:26,279 --> 01:08:30,090 да се пристапи од страна на барањето функција, која CS50 дефинира. 1216 01:08:30,090 --> 01:08:33,800 Значи, ако имате потреба при користење на функцијата за пребарување, можете да пристапите на оваа табела. 1217 01:08:33,800 --> 01:08:39,529 >> Така ќе биде испраќање на овие команди за вашата маса во PHP датотеки 1218 01:08:39,529 --> 01:08:41,420 преку функцијата за пребарување. 1219 01:08:41,420 --> 01:08:45,410 Исто така можете да се позанимавам со вашата маса директно. 1220 01:08:45,410 --> 01:08:49,050 И тоа е најдобар начин да се тестирање на овие видови на команди. 1221 01:08:49,050 --> 01:08:52,720 И ние ќе одиме преку како точно да го сторат тоа во само малку. 1222 01:08:52,720 --> 01:08:54,910 >> Значи тоа е Ажурирање команда. 1223 01:08:54,910 --> 01:08:57,939 А остатокот на командите се ќе биде во вид на слични, 1224 01:08:57,939 --> 01:08:59,069 кои работат на слични работи. 1225 01:08:59,069 --> 01:09:02,740 На поставување во е веројатно најмногу се разликува од Ажурирање. 1226 01:09:02,740 --> 01:09:06,170 Одам да го оставиме тоа до таму за само малку и да работат овде. 1227 01:09:06,170 --> 01:09:10,215 Па вметнете во, ќе видите таа маса се уште е иста. 1228 01:09:10,215 --> 01:09:17,010 Што сакате да го вметнете во. 1229 01:09:17,010 --> 01:09:20,286 Капитализација, SQL е случај нечувствително. 1230 01:09:20,286 --> 01:09:22,160 Значи, вие не мора да го профитираат овие работи. 1231 01:09:22,160 --> 01:09:27,960 По договор, зборовите во бело се капитализираат. 1232 01:09:27,960 --> 01:09:31,590 Но јас исто така ги боја кодирани. 1233 01:09:31,590 --> 01:09:34,390 Единствената причина што ќе профитираат оние кога ќе си ги пишувате 1234 01:09:34,390 --> 01:09:36,609 е само да се нагласи дека тие се константи. 1235 01:09:36,609 --> 01:09:39,189 И така можете да ја погледнете капитализација или фактот 1236 01:09:39,189 --> 01:09:40,740 што сум ги боја поинаку. 1237 01:09:40,740 --> 01:09:44,910 >> Значи имаме поставување во, ајде да го направите Табела 1 повторно. 1238 01:09:44,910 --> 01:09:45,930 Ова е за сите во една линија. 1239 01:09:45,930 --> 01:09:48,609 Јас сум само се дели со различни искази. 1240 01:09:48,609 --> 01:09:52,399 Па не се грижи за тоа дека Табела 1 стигна кон втората линија. 1241 01:09:52,399 --> 01:09:56,130 >> Значи, ние сакаме да го вметнете Во Табела 1 некои вредности. 1242 01:09:56,130 --> 01:09:58,922 И ќе забележите на опционален малку, што Јас ќе добиете за во една секунда. 1243 01:09:58,922 --> 01:09:59,755 Значи имаме вредности. 1244 01:09:59,755 --> 01:10:03,640 1245 01:10:03,640 --> 01:10:08,100 >> Па да речеме ние сакаме да додадете Andi на нашата маса, затоа што ние го пропушти Анди. 1246 01:10:08,100 --> 01:10:09,390 Анди е болен. 1247 01:10:09,390 --> 01:10:12,490 Па ајде да додадете Andi до нашата маса. 1248 01:10:12,490 --> 01:10:15,150 Се сеќавам дека бројот проект автоматски се ажурира. 1249 01:10:15,150 --> 01:10:17,320 Така што само ние полиња треба да се грижите 1250 01:10:17,320 --> 01:10:20,230 се име, суперсила, а роден град. 1251 01:10:20,230 --> 01:10:23,660 >> Така и на начинот на кој тоа го правиме, гледа во нашата синтакса, е ние сме 1252 01:10:23,660 --> 01:10:28,780 само што влегов во загради, со запирка одделени вредности, од кои секоја 1253 01:10:28,780 --> 01:10:29,890 е вредност. 1254 01:10:29,890 --> 01:10:35,530 Значи, ако сакаме да се вметне во нашата Анди маса, сите ние треба да направите е во право Анди. 1255 01:10:35,530 --> 01:10:38,630 Што е суперсила Анди е, луѓе во делот Анди е? 1256 01:10:38,630 --> 01:10:45,406 1257 01:10:45,406 --> 01:10:47,545 Таа како лет или допаѓа брзина, или нешто слично. 1258 01:10:47,545 --> 01:10:48,920 Што ние веќе имаат таму горе? 1259 01:10:48,920 --> 01:10:53,425 Имаме CS50, лет, брзина и сила. 1260 01:10:53,425 --> 01:10:54,850 >> ПУБЛИКАТА: патување низ времето. 1261 01:10:54,850 --> 01:10:56,180 >> Говорник: патување низ времето, неверојатно. 1262 01:10:56,180 --> 01:11:04,280 Значи имаме Анди, време патување, и нејзиниот роден град. 1263 01:11:04,280 --> 01:11:05,530 Тоа е навистина добро прашање. 1264 01:11:05,530 --> 01:11:09,210 Њујорк, освен ако некој не знае. 1265 01:11:09,210 --> 01:11:13,600 Сите се од Њујорк е Лекцијата да го одземе од денес. 1266 01:11:13,600 --> 01:11:17,710 >> Па оваа изјава би внесете, како петти по ред, 1267 01:11:17,710 --> 01:11:21,900 со патување низ времето суперсила и родниот град на Њу Јорк. 1268 01:11:21,900 --> 01:11:25,660 Но поле опционалните во основа е начин 1269 01:11:25,660 --> 01:11:30,090 да се определи точно кои фотографите сакате да го вметнете во работите. 1270 01:11:30,090 --> 01:11:33,710 >> На начинот на кој ние сме го прави сега, Анди, времето на патување, Њујорк, 1271 01:11:33,710 --> 01:11:38,150 се случува во точната цел на нашите table-- име, суперсила, родниот град. 1272 01:11:38,150 --> 01:11:42,290 И ако се сака да се направи нешто друго од тоа, 1273 01:11:42,290 --> 01:11:44,970 како велат дека не сте знаеле нечија суперсила, 1274 01:11:44,970 --> 01:11:47,660 како тоа, како јас не знаев Анди е суперсила на почетокот. 1275 01:11:47,660 --> 01:11:50,450 Па сè што знаев беше нејзиниот именува и нејзиниот роден град. 1276 01:11:50,450 --> 01:11:54,550 Она што може да направите е да можев do-- Јас ќе ги избрише тоа брзо. 1277 01:11:54,550 --> 01:11:57,910 1278 01:11:57,910 --> 01:12:00,090 >> Сакам само да се ажурира на колони. 1279 01:12:00,090 --> 01:12:04,100 И ова е местото каде што на опционален листа колона стапува на сцена. 1280 01:12:04,100 --> 01:12:09,185 Јас само сакам да го ажурирате името и роден град. 1281 01:12:09,185 --> 01:12:12,650 1282 01:12:12,650 --> 01:12:16,480 А потоа јас ќе кажам вредности. 1283 01:12:16,480 --> 01:12:24,430 Ќе се направи Анди и Њу Јорк. 1284 01:12:24,430 --> 01:12:28,980 >> Ако јас го испушташе листа на колони и само да се направи овие две работи, 1285 01:12:28,980 --> 01:12:32,450 каде би Њујорк се качил? 1286 01:12:32,450 --> 01:12:35,900 Која колона би Њујорк Градот се поставени? 1287 01:12:35,900 --> 01:12:38,950 Луѓето имаат било каква идеја? 1288 01:12:38,950 --> 01:12:40,160 Суперсила, точно. 1289 01:12:40,160 --> 01:12:41,890 >> Па ова само ќе одат во ред. 1290 01:12:41,890 --> 01:12:45,530 И кога ќе го достигне крајот на листа, едноставно ќе престане да работи во пополнување. 1291 01:12:45,530 --> 01:12:49,080 И вредностите кои тој ќе се држи во сите колони само ќе бидат ништовни. 1292 01:12:49,080 --> 01:12:51,840 Па затоа што е наведено име и роден град, 1293 01:12:51,840 --> 01:12:56,110 ние ќе треба да имаат проект 5, именува Анди, суперсила NULL. 1294 01:12:56,110 --> 01:12:58,750 Па суперсила е деиницијализира вредност. 1295 01:12:58,750 --> 01:13:01,340 Вие нема да мора да се добие исто Valgrind грешки ако се обидете 1296 01:13:01,340 --> 01:13:01,970 и пристап до неа. 1297 01:13:01,970 --> 01:13:05,160 Сè ќе биде убаво zeroed надвор, бидејќи NULL е вредност во SQL. 1298 01:13:05,160 --> 01:13:06,780 Која е константа. 1299 01:13:06,780 --> 01:13:08,980 Родниот град, а потоа ќе биде во Њујорк. 1300 01:13:08,980 --> 01:13:11,860 Значи тоа е поставување во команда. 1301 01:13:11,860 --> 01:13:13,610 Пред да се движи, има уште две команди. 1302 01:13:13,610 --> 01:13:19,060 Дали луѓето се имате било какви прашања во врска со Ажурирање, за поставување во, за SQL 1303 01:13:19,060 --> 01:13:21,556 генерално, пред да продолжат кон нашата крајна битови? 1304 01:13:21,556 --> 01:13:25,500 1305 01:13:25,500 --> 01:13:26,910 Луѓето да се чувствуваат добро, одлично. 1306 01:13:26,910 --> 01:13:27,410 Го сакам. 1307 01:13:27,410 --> 01:13:29,480 Па ајде да зборуваме за одбереш. 1308 01:13:29,480 --> 01:13:33,445 Ќе ров Ажурирање овде. 1309 01:13:33,445 --> 01:13:35,720 >> И изберете се случува да биде многу слична. 1310 01:13:35,720 --> 01:13:38,790 Целта на SELECT, Избери цел во животот 1311 01:13:38,790 --> 01:13:45,910 е да ви даде еден куп на колони кои ги исполнуваат одредени услови. 1312 01:13:45,910 --> 01:13:48,230 И кога велам задоволи одредени услови, 1313 01:13:48,230 --> 01:13:50,800 вашиот ум може веднаш се врати во тоа КАДЕ клаузула 1314 01:13:50,800 --> 01:13:52,090 што се појавуваше на Ажурирање. 1315 01:13:52,090 --> 01:13:54,880 И дека оваа клаузула е токму таму во одбереш. 1316 01:13:54,880 --> 01:14:06,020 >> Ако ние не се стави на КАДЕ клаузула и велиме Изберете име, 1317 01:14:06,020 --> 01:14:16,490 hometown-- напишано дека малку wrong-- име, роден град од Табела 1. 1318 01:14:16,490 --> 01:14:19,690 Ако само да се каже дека, она SELECT ќе ни даде е дека тоа е 1319 01:14:19,690 --> 01:14:23,730 ќе ни даде double-- маса, наместо. 1320 01:14:23,730 --> 01:14:27,450 А двојно низа, ако ние сме размислување за во PHP сетила. 1321 01:14:27,450 --> 01:14:33,239 Но, тоа е само ќе ни даде двојна низа на две columns-- име, 1322 01:14:33,239 --> 01:14:33,780 и роден град. 1323 01:14:33,780 --> 01:14:36,400 1324 01:14:36,400 --> 01:14:38,130 И тоа ќе ги игнорира проект. 1325 01:14:38,130 --> 01:14:41,310 И тоа ќе ги игнорира суперсила. 1326 01:14:41,310 --> 01:14:44,696 И тоа само ќе ни даде секој еден ред на табелата. 1327 01:14:44,696 --> 01:14:46,570 Значи, ако ние само се вметнуваат Andi, ќе имаме Анди. 1328 01:14:46,570 --> 01:14:48,605 И ќе имаме оригиналната четири. 1329 01:14:48,605 --> 01:14:53,720 Ако тие биле ажурирани, што ќе да се гледа, и така натаму, и така натаму. 1330 01:14:53,720 --> 01:14:56,520 >> Значи ова е затоа што ние не користете КАДЕ клаузула. 1331 01:14:56,520 --> 01:14:59,200 Но можеме да го употребиме во точно ист начин како што го користи во Ажурирање. 1332 01:14:59,200 --> 01:15:05,310 Ако само сакате табела на имињата и супер моќи на луѓето кои живеат 1333 01:15:05,310 --> 01:15:13,430 во Њујорк, ние може да се изврши изјава како Изберете име, superpower-- 1334 01:15:13,430 --> 01:15:27,190 Јас сум само ќе го напуштите that-- ОД Табела 1 КАДЕ роден град = Њујорк. 1335 01:15:27,190 --> 01:15:33,370 >> Значи ова оди да се покаже дека може да се се сосема различни колони, 1336 01:15:33,370 --> 01:15:36,920 и потоа го ставаат колумни дека не сте дури и добивање назад во КАДЕ клаузула. 1337 01:15:36,920 --> 01:15:39,200 Ние дури и не сакаат родниот град на секого. 1338 01:15:39,200 --> 01:15:41,920 Но, ние сакаме името и суперсила на луѓе 1339 01:15:41,920 --> 01:15:43,817 чии роден град е градот Њујорк. 1340 01:15:43,817 --> 01:15:45,650 Па тоа е нешто што може да се направи со КАДЕ 1341 01:15:45,650 --> 01:15:49,112 клаузула е што може да се справи со колони дека ние не мора да сакаат назад. 1342 01:15:49,112 --> 01:15:52,320 На ист начин во ажурирање, можеме да се справиме со колони дека ние не мора да 1343 01:15:52,320 --> 01:15:53,270 сакате да ја ажурирате. 1344 01:15:53,270 --> 01:15:58,890 Ние може да се ажурира на Град на секого кој е име е Сем, на пример. 1345 01:15:58,890 --> 01:16:02,080 Ние може да се ажурира на градот сите чии ID број е 2. 1346 01:16:02,080 --> 01:16:04,960 Па само да се ажурира Градот на вториот ред 1347 01:16:04,960 --> 01:16:08,220 каде што ние не треба да се справи со потребно вообичаеното прашање. 1348 01:16:08,220 --> 01:16:13,264 >> И да го избришете е, како што би Очекуваме, Избриши од Табела 1. 1349 01:16:13,264 --> 01:16:14,930 И тогаш имаме друг КАДЕ клаузула. 1350 01:16:14,930 --> 01:16:17,940 Значи можеме да кажеме КАДЕ ID = 1. 1351 01:16:17,940 --> 01:16:18,950 Избришете првиот ред. 1352 01:16:18,950 --> 01:16:23,240 И да го избришете секогаш ќе ги избрише по ред, или тоа ќе се избришат некои бројот на редови. 1353 01:16:23,240 --> 01:16:26,990 Избриши од табелата, каде што роден град = Њујорк 1354 01:16:26,990 --> 01:16:28,740 ќе ги избрише сите во Њујорк. 1355 01:16:28,740 --> 01:16:30,985 Тоа е, ако имаше ненадеен трагичен чума 1356 01:16:30,985 --> 01:16:33,360 и само сакав да го отстраните сите од табелата кој 1357 01:16:33,360 --> 01:16:35,760 живееле во еден град која беше погодена од чума. 1358 01:16:35,760 --> 01:16:38,050 Тие може да почива во мир. 1359 01:16:38,050 --> 01:16:43,849 >> Овие се четирите SQL команди кои ќе треба да се користи. 1360 01:16:43,849 --> 01:16:45,390 Вие дури и не би можеле да треба да ги користат сите. 1361 01:16:45,390 --> 01:16:47,690 Но овие се четирите дека ќе очекува CS50 1362 01:16:47,690 --> 01:16:53,630 да се биде удобно со одење во двете квиз 1, а исто така и pset7 pset8. 1363 01:16:53,630 --> 01:16:55,820 >> Има само таа маса повторно. 1364 01:16:55,820 --> 01:16:58,930 Во овој, суперсила Рој има е надграден за ласерски зраци, кои 1365 01:16:58,930 --> 01:17:00,880 е пример јас не го користам. 1366 01:17:00,880 --> 01:17:05,480 Не знам кој Рој сака, но силата. 1367 01:17:05,480 --> 01:17:07,670 Рој суперсила на сила. 1368 01:17:07,670 --> 01:17:09,090 Кетрин не го направите денес. 1369 01:17:09,090 --> 01:17:10,260 Тоа е жално. 1370 01:17:10,260 --> 01:17:11,260 Но, таа има супер брзина. 1371 01:17:11,260 --> 01:17:13,780 1372 01:17:13,780 --> 01:17:14,670 >> Па тоа беше PHP. 1373 01:17:14,670 --> 01:17:19,410 Пред да зборуваме за MVC, дали некој има прашања во врска со PHP? 1374 01:17:19,410 --> 01:17:23,864 Сега SQL, или PHP ако одеднаш имаат излезе со прашање за PHP? 1375 01:17:23,864 --> 01:17:27,560 1376 01:17:27,560 --> 01:17:28,460 Одлично. 1377 01:17:28,460 --> 01:17:29,920 Добро, ние сме сите во собата тогаш. 1378 01:17:29,920 --> 01:17:33,660 >> Значи зборуваме малку за модел погледнете контролори, 1379 01:17:33,660 --> 01:17:38,770 ајде да се вратиме на некои на работи во pset7. 1380 01:17:38,770 --> 01:17:42,470 Значи она што модел погледнете контролор is-- не сум 1381 01:17:42,470 --> 01:17:45,660 ќе се спаси промени мојот да се најавите бидејќи јас целосно го заклани. 1382 01:17:45,660 --> 01:17:49,220 Но во основа имаме два одделни работи се случува. 1383 01:17:49,220 --> 01:17:52,390 Имаме јавна директориумот кој ги содржи 1384 01:17:52,390 --> 01:17:56,460 го кодот што се случува да биде погубен и на веб страници, кои ќе бидат посетени. 1385 01:17:56,460 --> 01:17:58,780 И ние исто така ја имаат оваа ставови директориум. 1386 01:17:58,780 --> 01:18:01,780 И ставовите содржи шаблони. 1387 01:18:01,780 --> 01:18:04,390 >> Тоа е она што на функцијата render-- видовме малтерот 1388 01:18:04,390 --> 01:18:08,240 функција во еден куп на кодот на PHP дека CS50 веќе го напишал за вас, 1389 01:18:08,240 --> 01:18:10,550 кој ги зема во одредени параметри. 1390 01:18:10,550 --> 01:18:14,510 Она што го прави број е што тоа се случува во погледи, 1391 01:18:14,510 --> 01:18:18,000 кои се поставува на како prewritten HTML код, 1392 01:18:18,000 --> 01:18:20,720 и тоа е внесување вредности во одредени места. 1393 01:18:20,720 --> 01:18:23,990 Ова е како кога ќе се одат во CS50 финансии, 1394 01:18:23,990 --> 01:18:25,760 истата Насловна е на секоја страница. 1395 01:18:25,760 --> 01:18:28,130 Исто подножјето е на секоја страница. 1396 01:18:28,130 --> 01:18:31,880 Тоа е затоа што на патот кои го прават работите е тоа ќе 1397 01:18:31,880 --> 01:18:36,720 автоматски да се закрпи во таа глава и гледачот кој можете да ги најдете во пати. 1398 01:18:36,720 --> 01:18:41,400 >> Ние всушност може да оди во глава, и Види, тоа е една HTML датотека со главата. 1399 01:18:41,400 --> 01:18:43,280 Тоа е се здобија некои адаптери. 1400 01:18:43,280 --> 01:18:48,450 Вие не треба да се погледне во CSS за pset7, ако не сакаат да. 1401 01:18:48,450 --> 01:18:50,560 Но, можете да ги менувате нив, ако сакате, да направат 1402 01:18:50,560 --> 01:18:53,470 вашите финансии се погледне малку различни. 1403 01:18:53,470 --> 01:18:57,560 >> Тоа е се здобија некои PHP во насловот е малку за да ја видите 1404 01:18:57,560 --> 01:19:01,240 ако има некој друг наслов тоа треба да се стави во оваа глава. 1405 01:19:01,240 --> 01:19:04,300 Но само некои други писма, и врски, и други работи. 1406 01:19:04,300 --> 01:19:08,700 Глава завршува, телото почнува, и Упс, имаме овој чуден малку крајот малку. 1407 01:19:08,700 --> 01:19:14,730 И таму е div, исто како и на неопределен вид на елемент 1408 01:19:14,730 --> 01:19:17,120 дека има идеја за средината. 1409 01:19:17,120 --> 01:19:22,450 >> А потоа кога ќе видиме подножјето, ние имаат на крајот на една div. 1410 01:19:22,450 --> 01:19:25,000 Имаме дното кое е каде што текстот е на подножјето. 1411 01:19:25,000 --> 01:19:26,770 Крајот на div, крајот на телото, крајот на HTML. 1412 01:19:26,770 --> 01:19:29,070 >> Значи она што го направи е прави се направи е вид 1413 01:19:29,070 --> 01:19:33,150 на амандман до глава, односно различни PHP фајл кој 1414 01:19:33,150 --> 01:19:37,110 ќе ги содржи вистинските работи кои ќе видите како вашиот маса на акции 1415 01:19:37,110 --> 01:19:39,690 ако сте за купување или продавање акции. 1416 01:19:39,690 --> 01:19:41,480 И тогаш тоа ќе го додадете во подножјето. 1417 01:19:41,480 --> 01:19:44,890 И преглед на модел Идејата е дека ние контролер 1418 01:19:44,890 --> 01:19:49,590 сакаат да се одделат како работите изгледаат од кодот. 1419 01:19:49,590 --> 01:19:53,420 Тоа е ние сакаме да се разделиме интерфејс и заднинската, каде што на страниците е 1420 01:19:53,420 --> 01:20:00,440 работи што корисникот го гледа, убаво visuals-- HTML, CSS, работи како што, 1421 01:20:00,440 --> 01:20:02,320 слики, итн. 1422 01:20:02,320 --> 01:20:05,780 И позадински е PHP. 1423 01:20:05,780 --> 01:20:07,710 Ова е кодот што ќе пишувам. 1424 01:20:07,710 --> 01:20:10,240 Ова е местото каде што тоа е во кодот прави вистински операции. 1425 01:20:10,240 --> 01:20:12,400 Ова е кога ќе сме додавање залихи на вашата маса, 1426 01:20:12,400 --> 01:20:14,890 кога сте за купување и продажба, тоа е задниот крај. 1427 01:20:14,890 --> 01:20:20,210 >> И ние може да, како што видовме, вклучувајќи PHP директно во HTML. 1428 01:20:20,210 --> 01:20:23,210 Така што би можеле да имаат направено за Оваа задача е само имаше 1429 01:20:23,210 --> 01:20:26,200 HTML датотека за секоја страница, како најава. 1430 01:20:26,200 --> 01:20:30,260 А потоа на таа страница, само имаше огромен блок на PHP код, 1431 01:20:30,260 --> 01:20:33,822 вклучувајќи ги и сите на кодот кој таа страница конкретно ќе треба. 1432 01:20:33,822 --> 01:20:35,780 И тогаш ние би можеле да имаат направиле тоа за портфолио. 1433 01:20:35,780 --> 01:20:40,250 Ние би можеле да имаат направено сите на купување и продажба во рамките на одделни страници. 1434 01:20:40,250 --> 01:20:43,680 >> Туку затоа што ние сме рендерирање одделно од каде 1435 01:20:43,680 --> 01:20:46,660 пишуваме заднинската код, ние лесно може да 1436 01:20:46,660 --> 01:20:52,660 промени начинот на кој работите изгледаат без менување на секоја датотека. 1437 01:20:52,660 --> 01:20:55,460 Ние се прават работите, како само додадете нова div до дното 1438 01:20:55,460 --> 01:21:00,720 of-- Здраво Јас модифицирани подножјето. 1439 01:21:00,720 --> 01:21:03,710 Вие само може да се направи такви работи. 1440 01:21:03,710 --> 01:21:07,250 Но, исто така, може да се промени целиот визуелен слој 1441 01:21:07,250 --> 01:21:09,290 без да влијае на она што е случува во заднинскиот систем. 1442 01:21:09,290 --> 01:21:12,000 И можете да го промените целата бекендот и уште 1443 01:21:12,000 --> 01:21:13,900 мора да изгледа исто како што беше порано. 1444 01:21:13,900 --> 01:21:14,400 Ова 1445 01:21:14,400 --> 01:21:16,170 >> Е идејата на модел погледнете контролорот. 1446 01:21:16,170 --> 01:21:19,992 А тоа е всушност наметнато парадигма во некои од програмските јазици 1447 01:21:19,992 --> 01:21:21,700 можеби ќе сакате да го користите за конечниот проекти. 1448 01:21:21,700 --> 01:21:25,100 Ако го направите развој iOS, тие ставови, 1449 01:21:25,100 --> 01:21:29,120 што е она што го гледате на iPhone, и тогаш заднинската како што е како посебна работа. 1450 01:21:29,120 --> 01:21:31,260 >> Можете да размислувате за малку. 1451 01:21:31,260 --> 01:21:35,190 Има многу на бинарни датотеки во компјутерски науки, што е смешно, 1452 01:21:35,190 --> 01:21:37,270 бидејќи се што е во бинарна. 1453 01:21:37,270 --> 01:21:38,550 Јас не планираат тоа. 1454 01:21:38,550 --> 01:21:41,590 Тоа беше игра на зборови ненамерни. 1455 01:21:41,590 --> 01:21:43,860 Да, игра на зборови не се наменети. 1456 01:21:43,860 --> 01:21:49,070 >> Но, како и .h .C фајлови и датотеки, има многу одвојување на нештата што ги 1457 01:21:49,070 --> 01:21:49,900 може да не се потребни. 1458 01:21:49,900 --> 01:21:54,330 Па ние само може да го уредувате ч датотеки, или некој што само може да се види .h датотека и знаат 1459 01:21:54,330 --> 01:21:57,650 токму на функции кои се во .C фајлови без да мора да се знае 1460 01:21:57,650 --> 01:21:58,870 нивното спроведување. 1461 01:21:58,870 --> 01:22:02,800 Оваа идеја за одвојување на компонентите кои зависат едни од други 1462 01:22:02,800 --> 01:22:06,990 но може да се вид на пристап до едни со други преку различни канали, минувајќи 1463 01:22:06,990 --> 01:22:09,310 на променливи, само вклучуваат извештаи, работите 1464 01:22:09,310 --> 01:22:14,440 како што, овој принцип помага да се создаде апликации 1465 01:22:14,440 --> 01:22:17,080 кои можат да бидат полесно изменето од страна на повеќе лица, 1466 01:22:17,080 --> 01:22:20,440 може полесно да се промени или модифицирани на големи размери, 1467 01:22:20,440 --> 01:22:24,880 и полесно се debug во голем број на начини. 1468 01:22:24,880 --> 01:22:28,254 >> Навистина брзо, имам неколку совети за pset7, 1469 01:22:28,254 --> 01:22:31,420 кој јас ќе се направи на цел екран, па вие не само гледајќи во the-- врвот врвот tippee. 1470 01:22:31,420 --> 01:22:33,964 1471 01:22:33,964 --> 01:22:35,130 Таму не се толку многу совети. 1472 01:22:35,130 --> 01:22:38,060 >> Но, јас спомнав PHP е тешко да се debug. 1473 01:22:38,060 --> 01:22:39,290 Двокреветни и трокреветни го проверам. 1474 01:22:39,290 --> 01:22:41,550 Ако вашиот код едноставно не е прикажани на оваа страница, 1475 01:22:41,550 --> 01:22:46,240 тоа е веројатно е грешка PHP, жалам. 1476 01:22:46,240 --> 01:22:48,570 >> Вие никогаш не треба да се погледне CSS, ако не сакаат да. 1477 01:22:48,570 --> 01:22:52,150 Но, штом еднаш ќе завршиш, тоа може да биде малку забавно нешто добро да се оди само во 1478 01:22:52,150 --> 01:22:54,770 и хаос со параметри CSS. 1479 01:22:54,770 --> 01:22:58,700 CSS и HTML се пример за модел Поглед стил контролер нешто премногу, нели? 1480 01:22:58,700 --> 01:23:02,150 Вие би можеле да имаат стил тагови внатрешноста на HTML елементи. 1481 01:23:02,150 --> 01:23:04,800 Но, ако сте еден вид на да ги изнесува до CSS, 1482 01:23:04,800 --> 01:23:08,180 тие полесно да се уреди, и да игра околу со тоа, и да се забавуваат со. 1483 01:23:08,180 --> 01:23:10,816 >> Третираат CS50 помошник функционира како црните кутии. 1484 01:23:10,816 --> 01:23:12,940 Вие не треба да се знае точно што го направи го прави, 1485 01:23:12,940 --> 01:23:16,770 но верувам да секогаш го правам во право работа во зависност од она што го давате, 1486 01:23:16,770 --> 01:23:17,690 вакви работи. 1487 01:23:17,690 --> 01:23:21,040 И Јас ќе им препорачаат гледање на Давид можи, 1488 01:23:21,040 --> 01:23:24,490 минува низ сите работи, а не само todos, 1489 01:23:24,490 --> 01:23:26,960 но навистина може да се третираат овие како црните кутии. 1490 01:23:26,960 --> 01:23:29,280 Не одат во овие функции во потрага за бубачки. 1491 01:23:29,280 --> 01:23:33,510 >> И добредојде на враќање од нашите доминирам Zamyla. 1492 01:23:33,510 --> 01:23:34,010 Одлично. 1493 01:23:34,010 --> 01:23:40,430 >> Дали постојат било какви прашања пред финалето ние вид на отскокнување за ден? 1494 01:23:40,430 --> 01:23:42,610 Уште ме во живо? 1495 01:23:42,610 --> 01:23:44,700 Одлично. 1496 01:23:44,700 --> 01:23:47,120 Здраво livestream луѓе. 1497 01:23:47,120 --> 01:23:47,620 Одлично. 1498 01:23:47,620 --> 01:23:50,260 Постојат повеќе прашања? 1499 01:23:50,260 --> 01:23:50,760 Не? 1500 01:23:50,760 --> 01:23:52,884 >> А мислам дека и ние сме добро да се оди за денес. 1501 01:23:52,884 --> 01:23:55,550 Јас ќе се држи околу малку потоа ако луѓето имале прашања 1502 01:23:55,550 --> 01:23:57,480 тие се плашеле да прашате на потокот. 1503 01:23:57,480 --> 01:23:59,790 Но во спротивно, имаат добар ден. 1504 01:23:59,790 --> 01:24:01,933