1 00:00:00,000 --> 00:00:05,040 2 00:00:05,040 --> 00:00:08,440 >> SAM LEVATICH: Tere tulemast osa sel nädalal. 3 00:00:08,440 --> 00:00:10,040 Ma ei ole Andi. 4 00:00:10,040 --> 00:00:14,590 Andi on langenud haige sel päeval, ja ma on omamoodi kutsutud viimase hetke 5 00:00:14,590 --> 00:00:15,700 üle võtta. 6 00:00:15,700 --> 00:00:20,920 See on gripihooaeg, nii et veenduge, et olete viibivad puhas, pesu käed, 7 00:00:20,920 --> 00:00:24,800 ja tervisliku toitumise nii, et sa ka ei ole voodihaige. 8 00:00:24,800 --> 00:00:26,870 >> Aga ilma edasise jututa, olgem alustada. 9 00:00:26,870 --> 00:00:29,970 Täna me ei kavatse rääkida umbes PHP veidi bit-- kuidas 10 00:00:29,970 --> 00:00:33,900 PHP on seotud HTML, kuidas see käsitleb CSS ja mõned web 11 00:00:33,900 --> 00:00:36,100 asju sa tegid viimase ülesande. 12 00:00:36,100 --> 00:00:37,930 Me läheme rääkida natuke SQL 13 00:00:37,930 --> 00:00:41,360 ja kuidas te saate töötada andmebaasid mis on päris oluline osa P 14 00:00:41,360 --> 00:00:43,650 määrata 8-- P seatud 7. 15 00:00:43,650 --> 00:00:44,480 P seatud 7. 16 00:00:44,480 --> 00:00:48,400 >> Ja siis me ei kavatse rääkida natuke natuke, kuidas arvates kontrollerid tööd 17 00:00:48,400 --> 00:00:54,640 ja miks see on filosoofia mõned kaasaegsed veebilehti ja erineva kujundusega. 18 00:00:54,640 --> 00:00:58,760 Päris palju palju liike apps ja rakendused võite saata 19 00:00:58,760 --> 00:01:01,120 kasutavad seda mudelit, Arvestades kontroller raames, 20 00:01:01,120 --> 00:01:02,890 et sa kasutad P seatud 7, nii et ma 21 00:01:02,890 --> 00:01:05,220 rääkida natuke miks see on muutunud 22 00:01:05,220 --> 00:01:07,970 populaarne, miks see on oluline ja kena. 23 00:01:07,970 --> 00:01:12,052 Ja siis ma lõpuks liikuda mõned näpunäiteid võidelda P seatud 7. 24 00:01:12,052 --> 00:01:13,760 Ja kui meil on aega üle jäänud lõpus, 25 00:01:13,760 --> 00:01:17,320 me saame tegelikult teha mõned tööd, et koos. 26 00:01:17,320 --> 00:01:20,380 >> Nii, PHP. 27 00:01:20,380 --> 00:01:23,790 Tegelikult olete ehk märganud see-- sa ei tõesti sukelduda see-- 28 00:01:23,790 --> 00:01:27,880 kuid P seatud 6 olid mõned PHP kood, mis juhtus. 29 00:01:27,880 --> 00:01:34,710 Ja kuna PHP on C-like keel, PHP, erinevalt HTML ja CSS, 30 00:01:34,710 --> 00:01:39,030 on programmeerimiskeel, samas HTML ja CSS on staatiline. 31 00:01:39,030 --> 00:01:44,050 Nad märkekeeltele tegelevad stiil ja visuaalne kujundus. 32 00:01:44,050 --> 00:01:46,230 PHP on reaalne asi. 33 00:01:46,230 --> 00:01:51,590 >> PHP on silmad, see on conditions-- kõik see kraam, mis on lõbus umbes C. 34 00:01:51,590 --> 00:01:56,190 See on vähe asju, mis on veidi natuke parem kui C, mida me näeme, 35 00:01:56,190 --> 00:01:59,760 aga ma arvan, et lihtsaim viis rääkida umbes PHP on lihtsalt sukelduda. 36 00:01:59,760 --> 00:02:04,087 Nii et ma lähen paremale arvesse IDE sel hetkel. 37 00:02:04,087 --> 00:02:06,170 Esimene asi, mida me ei kavatse tegema, on tegelikult otsima 38 00:02:06,170 --> 00:02:10,169 natuke mõningaid PHP kood, mis oli P seatud 6. 39 00:02:10,169 --> 00:02:13,600 Nii nii, et me teeme selle-- Enne, kuidas me jooksid 40 00:02:13,600 --> 00:02:18,550 server seadme oli see, et me oleks liik-- 41 00:02:18,550 --> 00:02:21,750 kas kasutada oma täitmise või töötajate rakendamine 42 00:02:21,750 --> 00:02:27,059 of server.c laskumist kataloog ja töötab server.c kas pole 43 00:02:27,059 --> 00:02:30,100 arguments-- nii lihtsalt nimetame seda kohta kohalik masin, mis on see, mida sa ilmselt 44 00:02:30,100 --> 00:02:31,849 tegi enamik AEG_ ja siis söötes 45 00:02:31,849 --> 00:02:35,380 directory-- koos mis kasutada selle juur 46 00:02:35,380 --> 00:02:38,310 kus veebisait käivitada, põhimõtteliselt. 47 00:02:38,310 --> 00:02:42,180 >> See nädal P seatud 7, kui suur kui meie kood server.c 48 00:02:42,180 --> 00:02:47,580 on olemas inimesi, kes on juba kirjaliku need ilusad asjad üle mis CS50 49 00:02:47,580 --> 00:02:49,630 mis on natuke rohkem funktsioone, 50 00:02:49,630 --> 00:02:52,920 server programm, mis on võimeline tegelevad natuke rohkem 51 00:02:52,920 --> 00:02:56,350 Hienoudet võime me vaata mõlemas P seatud 7 ja P seatud 8. 52 00:02:56,350 --> 00:03:01,410 Ja nii, et sa käivitada server on kirjutades, "apache50." 53 00:03:01,410 --> 00:03:03,960 >> Ja enne kui midagi, soovite veenduda 54 00:03:03,960 --> 00:03:06,070 et Apache 50 ei ole juba töötab, kui see on 55 00:03:06,070 --> 00:03:08,130 minu masin, mis ma tegin seda testida. 56 00:03:08,130 --> 00:03:10,320 Ja sa seda helistades apache50. 57 00:03:10,320 --> 00:03:14,070 Peatus, ja te näete, et see on peatumine veebiserver, kui sa vaatad seal 58 00:03:14,070 --> 00:03:16,340 allosas terminaliaken. 59 00:03:16,340 --> 00:03:21,090 Ja siis lihtsalt alustada, me oleme helistame, "apache50 hakata." 60 00:03:21,090 --> 00:03:23,150 Ja siis me läheme söödast kataloog. 61 00:03:23,150 --> 00:03:26,950 >> Nüüd, kuna me tahame vaadata mõningaid P seatud 6 koodi 62 00:03:26,950 --> 00:03:32,850 et meil oli ellu, ma tegelikult kopeerida natuke P 63 00:03:32,850 --> 00:03:37,090 seatud 6 kood minu kausta kust saab näha vasakul pool. 64 00:03:37,090 --> 00:03:40,170 Seda nimetatakse "SECTION8" suurte tähtedega 65 00:03:40,170 --> 00:03:44,510 sest ma olen lihtsalt nii elevil to live-otseülekanne täna. 66 00:03:44,510 --> 00:03:47,330 >> Nii et kui võtame seda, see peaks kõik töötab päris tõhusalt. 67 00:03:47,330 --> 00:03:52,350 Ta ütleb, OK, meie sait on nüüd saadaval aadressil IDE, 68 00:03:52,350 --> 00:03:57,710 Põhimõtteliselt, mis on see, mida sa kasutad täpselt nii, nagu see oli P seatud 7-- P seatud 6. 69 00:03:57,710 --> 00:04:00,899 Kõik minu indeksid on üks indeks täna. 70 00:04:00,899 --> 00:04:02,940 Nii saame minna, et aadress, kui sa mäletad, 71 00:04:02,940 --> 00:04:05,710 vaid klõpsates seda vähe nuppu üleval paremal. 72 00:04:05,710 --> 00:04:14,200 >> Ja sa mäleta seda koodi, mis juhtus siis, kui sa läksid hello.php. 73 00:04:14,200 --> 00:04:18,000 Ja milline kood on mõeldud teha on, kui sa kirjutasid oma nime 74 00:04:18,000 --> 00:04:20,550 siin-- kui sa ütled Sam sest see on minu name-- 75 00:04:20,550 --> 00:04:23,620 ja ma vajutan tere öelda, kui läksime järgmisel leheküljel, 76 00:04:23,620 --> 00:04:25,270 et nimi pidi olema kuvatud. 77 00:04:25,270 --> 00:04:28,550 Oleks öelda "Tere, Sam" või "Tere," mis iganes nime 78 00:04:28,550 --> 00:04:32,470 pannakse ta kuigi läksime täiesti uuele veebilehele. 79 00:04:32,470 --> 00:04:36,610 >> Ja see on selline asi, et PHP teha saab. 80 00:04:36,610 --> 00:04:42,840 PHP on suutnud andmeid kahe veebilehti. 81 00:04:42,840 --> 00:04:44,390 See on täiesti erinev lehel. 82 00:04:44,390 --> 00:04:46,990 Näete pealkiri on "tere" siin. 83 00:04:46,990 --> 00:04:49,080 Tegelikult on neil sama pealkiri, aga ma 84 00:04:49,080 --> 00:04:52,560 luban neil on erinevad web lehti, kui me vaatame allikas. 85 00:04:52,560 --> 00:04:55,890 Ja sa ei liigu andmed, mis on kantud antud välja, 86 00:04:55,890 --> 00:04:59,830 saatke see järgmise leheküljel, mis kuramuse nõutud, 87 00:04:59,830 --> 00:05:02,490 ja seejärel, et andmeid on võimeline seal selle praegusel kujul. 88 00:05:02,490 --> 00:05:04,810 >> Nüüd me ei ole veel rakendatud seda ise, mis 89 00:05:04,810 --> 00:05:08,710 on see, mida me teeme just nüüd Sorteeri saada maitse, kuidas PHP töötab, 90 00:05:08,710 --> 00:05:15,070 kuid põhiline mõte on, et PHP-- saate omamoodi mõelda nagu funktsioon. 91 00:05:15,070 --> 00:05:18,570 Midagi, mis PHP saab Sind ei see ei võta parameetrid 92 00:05:18,570 --> 00:05:24,710 et sa lähteandmetest HTML lehele kasutamise kaudu PHP ja vormid, 93 00:05:24,710 --> 00:05:29,960 ja see võib anda need parameetrid Järgmisele lehele, et see laeb üles. 94 00:05:29,960 --> 00:05:35,110 >> Sel juhul me peale üles seda leheküljel koos "Ütle tere" nuppu. 95 00:05:35,110 --> 00:05:38,960 Aga nüüd, ma tegelikult kustutada mõned, et koodi 96 00:05:38,960 --> 00:05:44,850 on hello.php mis oli joosta et tegelikult väljapanek "Tere, 97 00:05:44,850 --> 00:05:49,680 maailma "või" tere, Sam "või "Tere," mis iganes oli lihtsalt sisend. 98 00:05:49,680 --> 00:05:53,620 Nii kohe, me oleme kavatsete teha, et põhimõtteliselt. 99 00:05:53,620 --> 00:05:56,570 Me läheme uuesti, et ja lisada ka mõned rohkem funktsioone, 100 00:05:56,570 --> 00:06:00,210 teha natuke rohkem sellega, vaadake Mis PHP on tõesti võimeline. 101 00:06:00,210 --> 00:06:04,870 >> Nii esimene, räägime Selle faili hello.php. 102 00:06:04,870 --> 00:06:07,440 Nii et kui me suurendus vähe bit-- ja nüüd olen 103 00:06:07,440 --> 00:06:10,520 omamoodi üritab kerima kõik kuidas lihtsalt ringi seal me läheme. 104 00:06:10,520 --> 00:06:14,220 Näete seda nimetatakse hello.php, kuid süntaks see 105 00:06:14,220 --> 00:06:16,880 näeb välja nagu HTML faili. 106 00:06:16,880 --> 00:06:20,380 Seda seetõttu, et tegelik PHP failis 107 00:06:20,380 --> 00:06:25,220 on kõik kinni vahel Küsimärk-katus plokid. 108 00:06:25,220 --> 00:06:28,610 Kõik siin peetakse PHP koodi. 109 00:06:28,610 --> 00:06:32,040 >> Ja märkad, et kui ma tegin kommentaar, 110 00:06:32,040 --> 00:06:35,320 näete tuttav kaks kaldkriipsu. 111 00:06:35,320 --> 00:06:38,440 Ja kui sa meenutavad HTML, kui ma kirjutada kommentaar, 112 00:06:38,440 --> 00:06:42,540 tundub midagi lähemale see, mis on kommentaar HTML. 113 00:06:42,540 --> 00:06:46,570 Nii et tõesti kõike vahel Nende kahe noolsulgudes 114 00:06:46,570 --> 00:06:50,060 Nüüd on PHP kood, mis kajastub asjaolu, 115 00:06:50,060 --> 00:06:53,270 et see väike kommentaar sümbolit on muutunud kommentaari. 116 00:06:53,270 --> 00:06:58,420 >> Nii et iga kord, kui sa kirjutada PHP koodi, isegi kui pole HTML kood väljaspool seda, 117 00:06:58,420 --> 00:07:02,720 see on alati saab olema ümbritsetud need nurksulud 118 00:07:02,720 --> 00:07:04,080 küsimärki. 119 00:07:04,080 --> 00:07:08,260 Võite omamoodi mõelda see-- kuidas kõik kood, mis jooksis oma C programmid 120 00:07:08,260 --> 00:07:13,950 oli suletud int peamine, tühine, lokkis traksidega, lõpuks lokkis traksidega avalduse. 121 00:07:13,950 --> 00:07:17,100 Ja te näete looksulg sisse PHP, liiga, kuid see on omamoodi 122 00:07:17,100 --> 00:07:20,490 nagu peamine meetod PHP. 123 00:07:20,490 --> 00:07:25,630 >> Nüüd, kuidas me midagi teha PHP? 124 00:07:25,630 --> 00:07:29,190 Nüüd, PHP on programmeerimine keel, mis on väga C-like, 125 00:07:29,190 --> 00:07:30,970 aga see töötab veebis. 126 00:07:30,970 --> 00:07:33,270 Nii et üks asi, mis Teil immediately-- üks 127 00:07:33,270 --> 00:07:38,130 esimesi asju sa tõesti tegid C oli teile trükitud kraami välja, eks? 128 00:07:38,130 --> 00:07:42,290 Nii C tegime, et koos printf funktsiooni. 129 00:07:42,290 --> 00:07:46,430 Me andsime selle stringi, ilmselt uue liini, 130 00:07:46,430 --> 00:07:49,850 ja siis me lõpetada see semikooloniga. 131 00:07:49,850 --> 00:07:53,790 >> Nii nii, et me ei kavatse seda teha in PHP-- sest see ei ole päris printf. 132 00:07:53,790 --> 00:07:55,940 See on natuke teistsugune süntaks. 133 00:07:55,940 --> 00:08:02,580 Nii, et me printida asju teha PHP on meil öelda: "echo hello" 134 00:08:02,580 --> 00:08:04,180 või "Kaja" iga sõna. 135 00:08:04,180 --> 00:08:09,830 Ja see mõjub teed printf koos haaknõela, "tere." 136 00:08:09,830 --> 00:08:11,990 Ja see lisab uue rea ta. 137 00:08:11,990 --> 00:08:16,000 >> Nii saab kohe teha sure-- Ma kujutist taas veidi bit-- 138 00:08:16,000 --> 00:08:18,250 olgem veenduge, et et kood töötab 139 00:08:18,250 --> 00:08:21,030 sest seal võib väga hästi olla viga selles kood 140 00:08:21,030 --> 00:08:22,880 et me peame tegelema. 141 00:08:22,880 --> 00:08:25,860 Nii et server on juba käivitatud. 142 00:08:25,860 --> 00:08:30,630 Nii et kui me tagasi kerima alaserva, yup, server töötab endiselt. 143 00:08:30,630 --> 00:08:34,510 Nii et kui me lihtsalt puuduta seda natuke siin-- 144 00:08:34,510 --> 00:08:37,620 welcome-- peaksime get-- suur. 145 00:08:37,620 --> 00:08:39,930 >> Me ikka on võttes tuttav "Ütle tere" dialoogi, 146 00:08:39,930 --> 00:08:45,750 aga kui ma kirjuta "hi" Me näeme et tekst "tere" oli tõepoolest 147 00:08:45,750 --> 00:08:50,080 välja printida, mis on täpselt nii, nagu lootsime, sest kaja PHP 148 00:08:50,080 --> 00:08:53,190 on nagu printf avalduse. 149 00:08:53,190 --> 00:09:01,410 Nii tagasi koodi, kuidas P seatud 6 tegin jaotus kood olete varustatud 150 00:09:01,410 --> 00:09:05,920 teha seda nii, et PHP oleks väljund asi, mida 151 00:09:05,920 --> 00:09:07,920 trükitud eelmise ekraani? 152 00:09:07,920 --> 00:09:10,350 >> Ja omamoodi uurida miks see juhtub, oleme 153 00:09:10,350 --> 00:09:15,510 lähe index.html, mis on originaal faili, faili 154 00:09:15,510 --> 00:09:18,710 ilmub selle ekraanile koos "Ütle tere" nuppu. 155 00:09:18,710 --> 00:09:20,950 Sa märkad, et seal on kõik klassikaline asju 156 00:09:20,950 --> 00:09:26,910 me oleme harjunud HTML sellised kui need asjad, need sildid suletud 157 00:09:26,910 --> 00:09:31,080 noolsulgudega, nagu PHP kuid ilma küsimärke, 158 00:09:31,080 --> 00:09:34,650 mis näitab, eriline asi HTML. 159 00:09:34,650 --> 00:09:36,895 Meil on pealkiri, mis on "tere." 160 00:09:36,895 --> 00:09:41,010 Ja märkad, et nagu me nägime, pealkiri on "tere" mõlemal juhul. 161 00:09:41,010 --> 00:09:43,260 Muudame selle ühe to "öelda" lihtsalt, et me 162 00:09:43,260 --> 00:09:48,170 saab eristada end, kus me oleme. 163 00:09:48,170 --> 00:09:49,600 >> Aga meil on keha. 164 00:09:49,600 --> 00:09:52,690 Ja siis huvitav natuke, siis natuke, et näitab üles HTML, 165 00:09:52,690 --> 00:09:54,530 on see vorm element. 166 00:09:54,530 --> 00:09:56,370 Ja nii on meil kujul. 167 00:09:56,370 --> 00:09:58,330 Ja see on võti. 168 00:09:58,330 --> 00:10:00,530 See, kuidas me töötame koos PHP. 169 00:10:00,530 --> 00:10:05,790 Tegevus parameeter kujul ütleb, et hello.php 170 00:10:05,790 --> 00:10:09,310 on see, mida me kavatseme saata väärtused seda vormi. 171 00:10:09,310 --> 00:10:13,830 See on koht, kus me möödaminnes parameetreid, nii rääkida. 172 00:10:13,830 --> 00:10:18,680 >> Märkad teine ​​asi siin on, et meetod on "saada." 173 00:10:18,680 --> 00:10:24,450 On kaks peamist meetodid, mille abil hakkab 174 00:10:24,450 --> 00:10:28,750 kasutad PHP andmete edastamiseks vahel websites-- veebilehti, 175 00:10:28,750 --> 00:10:30,500 rather-- selle ülesande. 176 00:10:30,500 --> 00:10:34,070 Ja need meetodid on "saada" ja "post". 177 00:10:34,070 --> 00:10:37,010 Seal on mõned peent erinevused get ja post 178 00:10:37,010 --> 00:10:40,520 et saame into-- me on "saada" ümber, kui soovite. 179 00:10:40,520 --> 00:10:44,030 >> Aga kõik kavatsused ja eesmärkidel, saada ja pärast 180 00:10:44,030 --> 00:10:47,120 on nii lihtsalt viisil, et te kaotate parameetrid 181 00:10:47,120 --> 00:10:49,500 natuke erineva hukkamisi. 182 00:10:49,500 --> 00:10:53,500 Praegu me ei kavatse kasutada saada, sest saada oli, mida kasutati algselt 183 00:10:53,500 --> 00:10:57,340 PHP faili P seatud 6. 184 00:10:57,340 --> 00:11:00,850 Ja tegelikult, kui me minna ja otsida Enne oleme toimetanud midagi muud, 185 00:11:00,850 --> 00:11:03,090 Ma ütlen hi mina-- mis su nimi on? 186 00:11:03,090 --> 00:11:03,812 >> Sihtrühm: Elliot. 187 00:11:03,812 --> 00:11:04,770 SAM LEVATICH: Oh, jumal. 188 00:11:04,770 --> 00:11:05,600 Ma ei tea, kuidas kirjutada seda. 189 00:11:05,600 --> 00:11:06,766 Kas sa õigekirja et minu jaoks? 190 00:11:06,766 --> 00:11:08,710 Sihtrühm: E-L-L-I-O-T. 191 00:11:08,710 --> 00:11:09,720 >> SAM LEVATICH: I-O-T? 192 00:11:09,720 --> 00:11:10,440 >> Sihtrühm: Jah. 193 00:11:10,440 --> 00:11:10,960 >> SAM LEVATICH: Perfect. 194 00:11:10,960 --> 00:11:11,210 OKEI. 195 00:11:11,210 --> 00:11:12,751 Ma arvan, et ma tegin seda, kuidas kirjutada seda. 196 00:11:12,751 --> 00:11:13,510 Vabandust selle pärast. 197 00:11:13,510 --> 00:11:16,560 Aga kui me ütleme "tere öelda," see ei ole ta ei kavatse näidata üles ekraanil 198 00:11:16,560 --> 00:11:18,476 veel, sest meil muuta kood natuke. 199 00:11:18,476 --> 00:11:21,290 Aga kui me ei "Ütle tere" - OK, nii et "tere" on siin. 200 00:11:21,290 --> 00:11:24,137 Aga kui me võtame lähemalt vaadata URL ise, 201 00:11:24,137 --> 00:11:26,220 Me näeme, et see lõpeb koos hello.php? name = Elliot. 202 00:11:26,220 --> 00:11:30,980 203 00:11:30,980 --> 00:11:37,180 >> Niisiis, see on viis edastades järgmisel veebilehel 204 00:11:37,180 --> 00:11:39,240 parameetreid, et oleme läbinud. 205 00:11:39,240 --> 00:11:40,870 Me ütlesime name = Elliot. 206 00:11:40,870 --> 00:11:46,290 Ja see on lõpuks, kuidas P seatud 6 külastatud muutuja, mida me möödunud aastal 207 00:11:46,290 --> 00:11:47,520 vormi kaudu. 208 00:11:47,520 --> 00:11:51,470 Ja see on midagi, on omane get taotluse. 209 00:11:51,470 --> 00:11:57,480 GET taotluse muudab parameetrid tuntud veebilehe URL. 210 00:11:57,480 --> 00:12:01,190 >> Ja sa meenutada, liiga, P seatud 6 et te 211 00:12:01,190 --> 00:12:04,450 tuli kirjutada funktsiooni mis käsitles asjaolu, 212 00:12:04,450 --> 00:12:09,700 et see päringustringiga võib eksisteerida pärast faili. 213 00:12:09,700 --> 00:12:14,684 Võiks olla küsimärk järgneb poolt põhimõtteliselt iga märgiga. 214 00:12:14,684 --> 00:12:16,350 Ja see on täpselt see, mis toimub siin. 215 00:12:16,350 --> 00:12:21,280 Ja põhjus, miks sa pidid sõeluda, et Teie rakendamise server.c P 216 00:12:21,280 --> 00:12:27,570 seatud 6 on nii, et võid öelda PHP kood, mis name = Elliot. 217 00:12:27,570 --> 00:12:30,460 Pidite suutma sõeluda, et välja URL 218 00:12:30,460 --> 00:12:35,900 nii et PHP faili alla teadis, mida ta tegeles. 219 00:12:35,900 --> 00:12:39,350 >> Loodetavasti annab see motivatsiooni server.c 220 00:12:39,350 --> 00:12:43,900 Nüüd, kui me liigume edasi Väljaspool C arvesse PHP. 221 00:12:43,900 --> 00:12:48,240 Nii saab tegelikult keskenduda pääseda asju läbi get taotluse nüüd 222 00:12:48,240 --> 00:12:48,880 sel hetkel. 223 00:12:48,880 --> 00:12:50,157 Ma lähen salvestada. 224 00:12:50,157 --> 00:12:51,240 Me ei muuda midagi. 225 00:12:51,240 --> 00:12:56,080 Tundub, meil on sisestusväli. 226 00:12:56,080 --> 00:12:58,550 >> Me milles mõned omadused, kui me saame teha HTML. 227 00:12:58,550 --> 00:12:59,550 Need on lihtsad asjad. 228 00:12:59,550 --> 00:13:00,580 Meil ei ole vaja neid. 229 00:13:00,580 --> 00:13:03,750 Aga meil autotäitm välja, mis põhimõtteliselt says-- sa tead, 230 00:13:03,750 --> 00:13:05,710 kui kirjutad asju arvesse web, mõnikord 231 00:13:05,710 --> 00:13:07,355 ta püüab täita, et teile. 232 00:13:07,355 --> 00:13:08,230 Nii et see on kena asi. 233 00:13:08,230 --> 00:13:11,700 Me tahame, et see välja lülitada selleks. 234 00:13:11,700 --> 00:13:13,970 See oli CS50 otsuse. 235 00:13:13,970 --> 00:13:15,640 Nii saame kustutada, et kui me tahtsime. 236 00:13:15,640 --> 00:13:19,510 >> Autofookus lihtsalt pulgad kursor kujul kohe alguses. 237 00:13:19,510 --> 00:13:21,060 Jällegi ei ole väga olulised. 238 00:13:21,060 --> 00:13:26,220 >> Aga name = "nimi" - see on natuke keeruline, sest see on nimi ja nimi. 239 00:13:26,220 --> 00:13:28,730 Aga me ei muutnud see midagi muud. 240 00:13:28,730 --> 00:13:30,563 Ja tegelikult, see on mida me teeme kohe. 241 00:13:30,563 --> 00:13:34,830 Me ütleme "inimene", mis on omamoodi nagu nimi 242 00:13:34,830 --> 00:13:36,790 Kui isik on määratletud nende nimi. 243 00:13:36,790 --> 00:13:41,480 >> Nii saab sulgeda, uuesti üles meie kodulehel 244 00:13:41,480 --> 00:13:46,110 kuna meie server töötab endiselt Apache 50, ja me ütleme, tere, siin on 245 00:13:46,110 --> 00:13:47,200 Elliot uuesti. 246 00:13:47,200 --> 00:13:48,460 Miks mitte? 247 00:13:48,460 --> 00:13:49,220 Tere. 248 00:13:49,220 --> 00:13:52,880 Ja kui me läheme siia, eks näis siis selle asemel name = Elliot, 249 00:13:52,880 --> 00:13:55,200 see ütleb inimese = Elliot. 250 00:13:55,200 --> 00:14:00,060 Ja see on otseselt tingitud asjaolust, et me lihtsalt muutunud name = "inimene." 251 00:14:00,060 --> 00:14:06,840 >> Nii sisend element HTML kujul nimi väljale 252 00:14:06,840 --> 00:14:10,590 on tunnus parameeter, mis kuramuse möödas. 253 00:14:10,590 --> 00:14:14,250 See on nagu siis, kui loote funktsiooni "lisada", mis asus kahe täisarvu 254 00:14:14,250 --> 00:14:16,670 ja sa ütlesid, int a ja int b. 255 00:14:16,670 --> 00:14:22,680 See oleks nimele, ja kui sa tahtsid teises vormis, mis 256 00:14:22,680 --> 00:14:27,800 me saame teha just kopeerimine ja kleepimist, siis oleks meil nime b. 257 00:14:27,800 --> 00:14:31,030 >> Nüüd on meil kaks parameetrit mis on läbinud 258 00:14:31,030 --> 00:14:36,970 saada järgmisele website-- Järgmise veebilehe hello.php. 259 00:14:36,970 --> 00:14:39,770 Ja me saame tegelikult näha et taas, kui tahame. 260 00:14:39,770 --> 00:14:44,830 See on lihtsaim viis lahendada veebi koodi IDE, põhimõtteliselt. 261 00:14:44,830 --> 00:14:47,940 Sa käivitada server, saad selle töötab, ja siis iga kord, kui 262 00:14:47,940 --> 00:14:50,649 teha mõned muudatused, just lähedal et faili lihtsalt karta. 263 00:14:50,649 --> 00:14:52,440 Vajutades nuppu Tagasi on natuke keeruline 264 00:14:52,440 --> 00:14:55,800 sest see võib laadida varem versioon, mitte kõige ajakohasem. 265 00:14:55,800 --> 00:14:59,200 >> Ja siis klõpsake lihtsalt nuppu, pop õigus up-- oh, 266 00:14:59,200 --> 00:15:00,510 ja nüüd on kaks vormi. 267 00:15:00,510 --> 00:15:10,440 Ja kui me kirjutame üks asi igasse one-- "Jason Hirshhorni," jaoks instance-- 268 00:15:10,440 --> 00:15:11,590 ütleme tere. 269 00:15:11,590 --> 00:15:12,840 Ootame üles meie parameetreid. 270 00:15:12,840 --> 00:15:18,910 Tundub, meil, nagu eeldatakse, a = jason ja b = Hirshhorni, 271 00:15:18,910 --> 00:15:23,760 mis esindab kahte parameetrit et me võtsime selle funktsiooni. 272 00:15:23,760 --> 00:15:27,900 >> Vaatame nüüd tegelikult saada rakendamisel, et funktsionaalsust, et me 273 00:15:27,900 --> 00:15:30,840 oli P seatud 6. 274 00:15:30,840 --> 00:15:32,490 Nii just nüüd lihtsalt kajastas tere. 275 00:15:32,490 --> 00:15:34,310 Ja see ei ole väga kasulik. 276 00:15:34,310 --> 00:15:38,530 Me tahame, et kajastada mõne muutuja mis võeti vastu meile. 277 00:15:38,530 --> 00:15:40,320 Ja me teame nime selle muutuja. 278 00:15:40,320 --> 00:15:41,770 Meil on ja me oleme b. 279 00:15:41,770 --> 00:15:43,500 Nii võiksime valida kaja kas üks. 280 00:15:43,500 --> 00:15:45,470 >> Aga kuidas me seda kasutada? 281 00:15:45,470 --> 00:15:48,820 Noh, on olemas teatud globaalsete muutujate PHP. 282 00:15:48,820 --> 00:15:51,240 Ja ma kirjutan neid kommentaare siin. 283 00:15:51,240 --> 00:15:59,910 Kaks kõige olulisemad on get ja postitada meie eesmärkidel praegu. 284 00:15:59,910 --> 00:16:05,350 Need on massiivid või Tehniliselt sõnastikud 285 00:16:05,350 --> 00:16:10,540 kus meie muutujaid, et me oleme kulgeb järgmise veebilehe live. 286 00:16:10,540 --> 00:16:14,520 Ja järgnevalt näeme, kuidas neid kasutada. 287 00:16:14,520 --> 00:16:19,720 >> Teine lühike teade PHP koodi ja mõned spetsiifikat see-- C, 288 00:16:19,720 --> 00:16:23,260 kuulutada muutuja või muutujate kasutamine, 289 00:16:23,260 --> 00:16:24,570 kõigepealt tuli tunnistada neid. 290 00:16:24,570 --> 00:16:30,860 Ja mida sa pidid tegema, kui sa deklareeritud neist oli öelda int a või char b. 291 00:16:30,860 --> 00:16:35,630 Sa pidid deklareerima tüüpi neid muutujaid, enne kui nad loonud. 292 00:16:35,630 --> 00:16:38,800 PHP-- sa ei pea tegema ükskõik mida. 293 00:16:38,800 --> 00:16:42,522 PHP ei küsi tüübist muutuv. 294 00:16:42,522 --> 00:16:44,480 Ja nii, et sa luua variable-- pigem 295 00:16:44,480 --> 00:16:49,930 kui öelda, int, char, string-- mis on tõesti char *, nagu me sead ühendit väljakirjutada 296 00:16:49,930 --> 00:16:52,180 mitte tehes kõik et kuna kõik 297 00:16:52,180 --> 00:16:54,620 on sama tüüpi, typeless, saame lihtsalt 298 00:16:54,620 --> 00:16:59,210 kasutada üks märk, mis on dollari märk. 299 00:16:59,210 --> 00:17:03,700 Ja te näete, see on juba popping up, little autotäitm asju. 300 00:17:03,700 --> 00:17:11,380 Ja see on selge, et _GET ja _POST On kaks võimalust, et mul on olemas 301 00:17:11,380 --> 00:17:11,900 mulle. 302 00:17:11,900 --> 00:17:16,430 Mõned neist muud asjad on teiste globaalsete muutujate PHP 303 00:17:16,430 --> 00:17:18,430 et teid kasutades üle käigus P seatud 7. 304 00:17:18,430 --> 00:17:20,569 Sest nüüd me läheme keskenduda get ja post. 305 00:17:20,569 --> 00:17:22,910 Aga see on kasulik asi, et IDE ei 306 00:17:22,910 --> 00:17:24,980 kus, kui olete sisestanud et dollari märk, 307 00:17:24,980 --> 00:17:28,760 see saab alustada täites globaalseid muutujaid või muutujate olete juba määratletud. 308 00:17:28,760 --> 00:17:34,360 >> Nii et kui sa tahad, et määratleda muutuja nimega "string" 309 00:17:34,360 --> 00:17:38,290 võid lihtsalt pani võrdne "hi". 310 00:17:38,290 --> 00:17:40,100 Ja see on põhimõtteliselt nii lihtne. 311 00:17:40,100 --> 00:17:44,720 Ja siis me võiksime teha midagi "echo $ string." 312 00:17:44,720 --> 00:17:48,524 IDE tuleb visata mõned vigu, kui ma teen midagi valesti, 313 00:17:48,524 --> 00:17:50,190 nii et loodetavasti ma teen kõik õigesti. 314 00:17:50,190 --> 00:17:52,060 Aga vead alati ei teki. 315 00:17:52,060 --> 00:17:56,670 >> Teine keeruline asi PHP on see, et see ei ole koostatud. 316 00:17:56,670 --> 00:18:00,640 Nii C programme, mida sa teeksid igapäevaelust of-- põhiliselt 317 00:18:00,640 --> 00:18:02,710 sa oleks muudatust koodi, siis tahaks salvestada, 318 00:18:02,710 --> 00:18:04,460 ja siis oleks Tee, kus make oli 319 00:18:04,460 --> 00:18:08,830 samm, et kutsutakse koostaja, kolisevad, et muuta oma koodi, selle teksti 320 00:18:08,830 --> 00:18:10,570 faili, käivitatava. 321 00:18:10,570 --> 00:18:15,550 PHP on C-tüüpi, kuid see on teostatud lennult teie veebibrauser. 322 00:18:15,550 --> 00:18:17,640 Seega puudub võimalus teada. 323 00:18:17,640 --> 00:18:19,790 >> Tee oleks visata neid kasulik vigu, eks? 324 00:18:19,790 --> 00:18:22,190 See oleks nagu, sa ei deklareerinud seda muutujat 325 00:18:22,190 --> 00:18:23,320 Enne proovisin seda kasutada. 326 00:18:23,320 --> 00:18:29,120 Sa tegid kõik see halb stuff-- segfault, segfault, kõik, mis omamoodi lõbus korda 327 00:18:29,120 --> 00:18:31,000 mis tuli teha. 328 00:18:31,000 --> 00:18:33,920 PHP on kahe teraga mõõk sest sa ei saa neid vigu, 329 00:18:33,920 --> 00:18:37,770 kuid see tähendab ka, et sa ei tea tõesti, mis valesti oma programmi 330 00:18:37,770 --> 00:18:39,840 kui sa lihtsalt käivitada see ja see ei tööta. 331 00:18:39,840 --> 00:18:45,130 Aga siluri nentima mõned loodetavasti abiks pisiasjadest 332 00:18:45,130 --> 00:18:47,950 süntaktiliselt et saate määrata. 333 00:18:47,950 --> 00:18:52,850 >> Nüüd, kui me läheme üle mina-- öelda, olgem sulgeda, et. 334 00:18:52,850 --> 00:18:54,522 Taastada. 335 00:18:54,522 --> 00:18:55,480 Ja me oleme tagasi siin. 336 00:18:55,480 --> 00:18:57,210 Nii on meil varieeruv ja muutuvast b. 337 00:18:57,210 --> 00:18:58,626 Ja need ei lõppkokkuvõttes oluline. 338 00:18:58,626 --> 00:19:01,850 Me nimetame neid h ja g ilma kindla põhjuseta. 339 00:19:01,850 --> 00:19:03,120 >> Ja me ütleme tere. 340 00:19:03,120 --> 00:19:07,480 Nüüd tundub, et meie string "hi" on tõepoolest trükkimine. 341 00:19:07,480 --> 00:19:10,460 Me oleme loonud muutuja nimega "string", seadke see võrdub "hi". 342 00:19:10,460 --> 00:19:15,520 Pange tähele, et me ei pea tegema malloc või teha iseloomu massiivi. 343 00:19:15,520 --> 00:19:19,110 >> PHP, sest muutujaid on typeless, string 344 00:19:19,110 --> 00:19:22,230 on sama kui char kõik kavatsused ja eesmärkidel. 345 00:19:22,230 --> 00:19:23,570 See võiks olla "hi." 346 00:19:23,570 --> 00:19:26,340 See võib olla just iseloomu k. 347 00:19:26,340 --> 00:19:29,290 See võib olla number 1. 348 00:19:29,290 --> 00:19:30,300 Ja see ei huvita. 349 00:19:30,300 --> 00:19:33,560 PHP ei hooli tüübist oma muutuv. 350 00:19:33,560 --> 00:19:34,390 Või see ei ravi. 351 00:19:34,390 --> 00:19:36,240 See huvitab, kui sa püüad ja teha asju koos sellega, 352 00:19:36,240 --> 00:19:38,790 kuid see ei hooli Deklaratsiooni samm. 353 00:19:38,790 --> 00:19:46,960 >> Ja täpselt samamoodi nagu C, saate Kinnitan stringid virnas niimoodi 354 00:19:46,960 --> 00:19:51,130 kuigi ütleb "korsten" on väike natuke potentsiaali eksitav, kui 355 00:19:51,130 --> 00:19:52,230 me räägime PHP. 356 00:19:52,230 --> 00:19:54,020 Aga me ei pea muretsema, et. 357 00:19:54,020 --> 00:19:55,936 Nii saime string "Tere," ja me kaja string. 358 00:19:55,936 --> 00:19:58,880 Nüüd me oleme arutanud muutujaid. 359 00:19:58,880 --> 00:20:06,060 Nüüd peame rääkima get ja lisada ja sooritada lõplik asi, mis on 360 00:20:06,060 --> 00:20:12,660 vaja tõesti seda varundada funktsionaalsust P seatud 6. 361 00:20:12,660 --> 00:20:14,990 Nii just nüüd kajana string, kuid me 362 00:20:14,990 --> 00:20:17,080 ei ole need muutujad saada ja kontrollida. 363 00:20:17,080 --> 00:20:19,430 Ja kuna me kasutame meetod saada, siis 364 00:20:19,430 --> 00:20:24,810 Tundub loomulik, et meie muutuja oleme huvitatud, nii a ja b, 365 00:20:24,810 --> 00:20:29,870 hakkab asuma massiivi või sõnastik, tehniliselt saada. 366 00:20:29,870 --> 00:20:33,510 >> Nii et kui me luua saa niimoodi Teie groups-- ma pressitud sisestage 367 00:20:33,510 --> 00:20:36,770 ja see ei meeldinud see-- kuid siin on meil saada. 368 00:20:36,770 --> 00:20:38,000 Ja nii saan juba olemas. 369 00:20:38,000 --> 00:20:41,380 Nii saame juba hakata juurdepääsu mõned elemendid saada. 370 00:20:41,380 --> 00:20:45,000 Kui me ei saa seda süntaks massiivid PHP on väga C-like. 371 00:20:45,000 --> 00:20:47,900 Meil on kaks nurksulgudes. 372 00:20:47,900 --> 00:20:53,440 >> Nii et kui me ütleme saada normaalne massiiv, võiksime juurde 373 00:20:53,440 --> 00:20:55,600 zeroth indeks, esimene indeks. 374 00:20:55,600 --> 00:20:56,840 PHP on null indeks. 375 00:20:56,840 --> 00:21:00,550 Võib öelda, null, üks, two-- selliseid asju. 376 00:21:00,550 --> 00:21:03,420 Ja ma olen öelnud, et saada on tehniliselt sõnastik. 377 00:21:03,420 --> 00:21:08,290 Mis PHP teeb kapoti all, mis on natuke kenamaks kui C, 378 00:21:08,290 --> 00:21:12,760 on see juba annab teile mõned sõnastik funktsionaalsus, mis 379 00:21:12,760 --> 00:21:16,240 on tõesti hash tabeleid, või üritab väidetavalt. 380 00:21:16,240 --> 00:21:19,360 Või tehniliselt võiks proovida ka. 381 00:21:19,360 --> 00:21:25,500 Aga PHP rakendab hash tabelit, mis moodustab efektiivse sõnastikku. 382 00:21:25,500 --> 00:21:28,400 >> Ja nii me ei tea nime Meie muutuja, eks? 383 00:21:28,400 --> 00:21:32,440 See on sooritanud päringustringiga PHP. 384 00:21:32,440 --> 00:21:37,290 Oleme = h ja b = g kus ja b on nimed muutujad. 385 00:21:37,290 --> 00:21:41,580 Nii nii, et me ei pääse vastava väärtuse võti 386 00:21:41,580 --> 00:21:45,055 meie sõnastiku lihtsalt öeldes _GET_GET ["a"]. 387 00:21:45,055 --> 00:21:48,170 388 00:21:48,170 --> 00:21:51,365 >> Nüüd on meil _GET ["a"]. 389 00:21:51,365 --> 00:21:56,930 Ja kui me lihtsalt asendada sees Meie kaja, kui me kaja _GET_GET ["a"] - 390 00:21:56,930 --> 00:22:02,410 ja me näeme, kui siluri viskab vigu umbes see-- 391 00:22:02,410 --> 00:22:05,620 Hoiame et sulgeda see välja. 392 00:22:05,620 --> 00:22:07,130 Tee lahti. 393 00:22:07,130 --> 00:22:10,390 Nii et me lihtsalt teeme õigus nüüd, et b ei tohiks asja. 394 00:22:10,390 --> 00:22:12,980 "tema" ja "Tema" - "hum." "tema" ja "hum." 395 00:22:12,980 --> 00:22:14,810 Kõlab hästi. 396 00:22:14,810 --> 00:22:18,040 >> Ja see välja printida "tema", mis on hull. 397 00:22:18,040 --> 00:22:21,920 Aga see on täpselt see, mida toimunut P seatud 6. 398 00:22:21,920 --> 00:22:27,240 Põhimõtteliselt, mida P seatud 6 oli doing-- kaja hello, 399 00:22:27,240 --> 00:22:31,580 name-- kus see oli muutuja nimi ja see lihtsalt 400 00:22:31,580 --> 00:22:35,520 küsib kirjutad, et natuke teksti. 401 00:22:35,520 --> 00:22:37,380 Oli ka mõningaid lisakood, kus 402 00:22:37,380 --> 00:22:40,550 see lisada, kui avaldused, mida me saame teha just nüüd. 403 00:22:40,550 --> 00:22:50,120 >> Me ei saa öelda, kui on olemas, mis on funktsionaalsus jooksul PHP, 404 00:22:50,120 --> 00:22:55,110 _GET Koos alakriips "nimi" - mis on põhimõtteliselt öelda, 405 00:22:55,110 --> 00:22:58,760 "Kui nimi on täidetud", sest oleksime võinud lihtsalt klõpsanud nuppu 406 00:22:58,760 --> 00:23:02,580 esitada kujul ilma kirjutades midagi sinna valdkonnas. 407 00:23:02,580 --> 00:23:07,760 Ja me pakkima, et meie sõbralik looksulg. 408 00:23:07,760 --> 00:23:09,175 Meil võib olla teine ​​avalduses. 409 00:23:09,175 --> 00:23:13,300 410 00:23:13,300 --> 00:23:18,820 Ja see on kõik sees PHP nurk sulg, küsimärk, nurgik, 411 00:23:18,820 --> 00:23:20,040 kui soovite. 412 00:23:20,040 --> 00:23:21,750 >> Ja nüüd me näeme, kui see töötab. 413 00:23:21,750 --> 00:23:26,300 Hoian ootab ta, et siluda ja jama välja mind, põhimõtteliselt 414 00:23:26,300 --> 00:23:28,410 kuid see ei ole veel. 415 00:23:28,410 --> 00:23:30,830 Võib-olla on see nüüd sest ma rääkisin. 416 00:23:30,830 --> 00:23:31,330 Jep. 417 00:23:31,330 --> 00:23:32,510 See tegi tegelikult. 418 00:23:32,510 --> 00:23:34,610 Niisiis, miski ei näita üles. 419 00:23:34,610 --> 00:23:38,750 See on sellepärast, et midagi on valesti et ma kirjutasin PHP koodi. 420 00:23:38,750 --> 00:23:42,844 Ja ma mainisin silumine on keeruline, sest PHP, me 421 00:23:42,844 --> 00:23:45,260 ei kompileerida eelnevalt ja koostaja ei meeldi, 422 00:23:45,260 --> 00:23:46,710 Siin on koht, kus oma vead. 423 00:23:46,710 --> 00:23:49,690 >> Aga mida me teha saame on-- teha inimesed mäletavad 424 00:23:49,690 --> 00:23:57,010 kuidas vaadata erinevate võrgu nõuab, et PHP-- või mis veebilehed 425 00:23:57,010 --> 00:23:57,620 Kirjuta? 426 00:23:57,620 --> 00:24:00,290 [? Malin?] Tegi seda loengu üks või kaks korda. 427 00:24:00,290 --> 00:24:05,830 Mäletad, kui me minna, et leida erinevate võlgade ja 200 Oks, 428 00:24:05,830 --> 00:24:09,780 Kõik need koodid, mis saadetakse läbi HTTP alates veebilehe veebilehe? 429 00:24:09,780 --> 00:24:12,514 Kas keegi mäletab kus me läheme seda teed? 430 00:24:12,514 --> 00:24:13,787 >> Sihtrühm: Page Source. 431 00:24:13,787 --> 00:24:14,870 SAM LEVATICH: Page allikas. 432 00:24:14,870 --> 00:24:15,890 Täpselt. 433 00:24:15,890 --> 00:24:19,230 Kui te lähete Page Source-- täiuslik. 434 00:24:19,230 --> 00:24:21,630 Nii Page Source tõmbab inspektor. 435 00:24:21,630 --> 00:24:23,140 >> Ja ma kasutan Safari. 436 00:24:23,140 --> 00:24:25,790 Palju siis ilmselt kasutad Chrome või Firefox. 437 00:24:25,790 --> 00:24:27,750 Aga kui sa oled Igal kaasaegse browser-- 438 00:24:27,750 --> 00:24:29,500 ja julgelt järgi mööda, kui soovite. 439 00:24:29,500 --> 00:24:32,560 Sa võid kirjutada üles selle koodi või lihtsalt vaadata sees P komplekt 6 440 00:24:32,560 --> 00:24:35,820 Kataloog mõned sarnased asjad. 441 00:24:35,820 --> 00:24:41,020 hello.php on see, mida me oleme Praegu töötab emuleerib. 442 00:24:41,020 --> 00:24:42,476 >> Seega on olemas erinevaid klapid. 443 00:24:42,476 --> 00:24:43,850 Me võime vaadata kõiki ressursse. 444 00:24:43,850 --> 00:24:45,810 Me näeme lähtekoodi. 445 00:24:45,810 --> 00:24:49,900 Nii tundub, et see ei ole saada minevikus keha lõpuks. 446 00:24:49,900 --> 00:24:54,890 Ta leidis vea PHP ja lõpetas laadimise kogu veebilehe. 447 00:24:54,890 --> 00:24:58,320 Me ei pea isegi lõpp silt HTML või midagi. 448 00:24:58,320 --> 00:25:07,189 >> Ja kui me vaatame võrgustik, saame näha, et me seda saatis. 449 00:25:07,189 --> 00:25:07,980 See on domeeni. 450 00:25:07,980 --> 00:25:09,270 See on aadress. 451 00:25:09,270 --> 00:25:10,070 See dokument. 452 00:25:10,070 --> 00:25:14,310 Me get kasutades meetodit. 453 00:25:14,310 --> 00:25:15,760 >> Ja see on punane. 454 00:25:15,760 --> 00:25:19,030 Või oli see punaseks, kui ma ei valides. 455 00:25:19,030 --> 00:25:22,680 Kuidas tühistage? 456 00:25:22,680 --> 00:25:23,980 Noh, see oli punane. 457 00:25:23,980 --> 00:25:25,201 Lubage mul värskendada. 458 00:25:25,201 --> 00:25:25,700 Seal on. 459 00:25:25,700 --> 00:25:26,640 Nüüd on punased. 460 00:25:26,640 --> 00:25:30,530 >> Nii et see on punane, mis tähendab, see ebaõnnestus, mis on halb. 461 00:25:30,530 --> 00:25:32,280 Nii Uurime, miks ta ei suuda. 462 00:25:32,280 --> 00:25:37,070 Nii et kõik, et Page Source saa põhimõtteliselt öelda, on oma asi 463 00:25:37,070 --> 00:25:38,720 ei tööta, mida me saame juba näha. 464 00:25:38,720 --> 00:25:42,100 Nii ideaalis oleks olla rohkem kasulik vahend. 465 00:25:42,100 --> 00:25:45,710 Ja seal on mõned sirvimislaiendused mis võimaldavad teil siluda PHP, 466 00:25:45,710 --> 00:25:50,490 kuid me ei kavatse kirjalikult ton PHP, 467 00:25:50,490 --> 00:25:53,190 nii et see on ilmselt lihtsalt parim vaatama läbi oma koodi 468 00:25:53,190 --> 00:25:56,760 hoolikalt ja lihtsalt veenduda, et see ei ole midagi muud. 469 00:25:56,760 --> 00:26:03,876 >> Vaatame, kui vormi osas kui väide on, kus probleem on. 470 00:26:03,876 --> 00:26:07,420 Ma tahan laadige see siia üles tagasi. 471 00:26:07,420 --> 00:26:09,830 Tere, tere. 472 00:26:09,830 --> 00:26:11,350 Nii et probleem on olemas. 473 00:26:11,350 --> 00:26:15,130 >> Nii õige süntaks PHP, PHP läheb 474 00:26:15,130 --> 00:26:17,369 olla C-like, et näete silmad. 475 00:26:17,369 --> 00:26:18,410 Näete, kui avaldused. 476 00:26:18,410 --> 00:26:20,920 Näete kõik need sõbrad et olete tutvunud 477 00:26:20,920 --> 00:26:24,820 koos jooksul Selle CS50 poolaastal. 478 00:26:24,820 --> 00:26:29,960 Aga parim viis aru saada, kuidas midagi PHP on Google seda 479 00:26:29,960 --> 00:26:33,170 või mõningaid näiteid PHP koodi sest sa tead funktsionaalsust. 480 00:26:33,170 --> 00:26:35,080 >> Sa tead, mida saate teha programmis. 481 00:26:35,080 --> 00:26:35,976 Võite loop. 482 00:26:35,976 --> 00:26:37,600 Võite loop nii mitu korda kui soovid. 483 00:26:37,600 --> 00:26:39,433 Võite loop kõik kehvasti erineval viisil. 484 00:26:39,433 --> 00:26:40,700 Saate luua funktsioone. 485 00:26:40,700 --> 00:26:43,241 Saate luua funktsioonid kutsuda teisi funktsioone, funktsioonid 486 00:26:43,241 --> 00:26:44,150 mis nimetavad ennast. 487 00:26:44,150 --> 00:26:45,733 Ja sa pead nimed need mõisted. 488 00:26:45,733 --> 00:26:49,860 Sul recursion, silmad, kui muud kontrolli voolab. 489 00:26:49,860 --> 00:26:51,300 Ja nii Google on su parim sõber. 490 00:26:51,300 --> 00:26:53,540 Isegi öelda, "PHP kui Väide "ja muidu 491 00:26:53,540 --> 00:26:57,740 olla tonni poste vastused teiste inimestega 492 00:26:57,740 --> 00:27:02,090 kes on olnud sarnaseid küsimusi teile, kes on hakanud just läbi PHP 493 00:27:02,090 --> 00:27:03,820 ja on uudishimulik süntaks asi. 494 00:27:03,820 --> 00:27:08,480 >> Kuna meil on luksus on võimalik vaadata koodi P komplekt 6, 495 00:27:08,480 --> 00:27:14,980 me tegelikult tõmmake üles ja vaata, et OK, siin on midagi huvitavat. 496 00:27:14,980 --> 00:27:18,070 Nii et see on see, mida ta tegelikult tundus P seatud 6. 497 00:27:18,070 --> 00:27:20,340 Nii et kui me minna läbi selle, näeme, et me oleme 498 00:27:20,340 --> 00:27:27,150 sain mitu neist vähe PHP-nagu küsimärk bitti. 499 00:27:27,150 --> 00:27:29,050 >> Ja seal ei ole lokkis traksid. 500 00:27:29,050 --> 00:27:30,250 On kooloniga. 501 00:27:30,250 --> 00:27:32,340 Ja seal on lokkis traksid PHP, kuid see 502 00:27:32,340 --> 00:27:38,700 on vormi ja selle kandja PHP, mis töötab hästi HTML 503 00:27:38,700 --> 00:27:43,830 sest nagu näete, me sulgeda välja need PHP bits-- elses 504 00:27:43,830 --> 00:27:49,770 ja IFS ja kõik selle-- ja seejärel me Interspersing HTML sees 505 00:27:49,770 --> 00:27:54,640 samas pärast käsuvoog sätestatud PHP. 506 00:27:54,640 --> 00:27:58,480 >> Nii et ma olen lihtsalt kavatse Kiire jalutuskäik läbi selle 507 00:27:58,480 --> 00:28:01,740 sest see on palju sama kontseptsioone, mis me teeme enne. 508 00:28:01,740 --> 00:28:07,280 Meil kui ei ole tühi, sulgudes _GET_GET ["nimi"]. 509 00:28:07,280 --> 00:28:08,500 See kõik on sama värk. 510 00:28:08,500 --> 00:28:15,430 Me kasutavad _GET sõnastik, mis PHP saadab taotluse vormid, 511 00:28:15,430 --> 00:28:20,720 sest see on parameetrid tegevus, ja meetod on saada. 512 00:28:20,720 --> 00:28:22,110 Ja siis, et lõpetab selle. 513 00:28:22,110 --> 00:28:27,420 Koolon tähistaja lihtsalt seda teha kui if tulemus on tõsi. 514 00:28:27,420 --> 00:28:29,490 See on nagu lokkis traksidega. 515 00:28:29,490 --> 00:28:33,320 Ja tegelikult, see on lokkis traksidega teistes keeltes nagu Python, 516 00:28:33,320 --> 00:28:37,070 mis võivad ilmneda, kui sa just teha oma lõplik projekt. 517 00:28:37,070 --> 00:28:40,170 >> Ja siis see rida, tere. 518 00:28:40,170 --> 00:28:41,510 Siis on meil see imelik asi. 519 00:28:41,510 --> 00:28:43,190 Meil rohkem sulgudes. 520 00:28:43,190 --> 00:28:46,140 Pole HTTP there-- või PHP, vabandust. 521 00:28:46,140 --> 00:28:47,250 Aga seal on võrdusmärk. 522 00:28:47,250 --> 00:28:50,625 Ja siis on meil funktsioon, htmlspecialchars (_GEThtmlspecialchars (_GET ["nimi"]). 523 00:28:50,625 --> 00:28:54,440 524 00:28:54,440 --> 00:28:58,040 See on omamoodi nagu rohkem täiustatud versiooni kaja. 525 00:28:58,040 --> 00:29:01,450 Nagu meil oli kaja kui viis printida asju läbi PHP. 526 00:29:01,450 --> 00:29:03,890 See on funktsioon, mis on määratletud PHP, et 527 00:29:03,890 --> 00:29:08,160 hakkab tegelema mõned vastik tegelased ja baidiväärtused 528 00:29:08,160 --> 00:29:09,540 et siis võiks mööda minna. 529 00:29:09,540 --> 00:29:11,070 See on alati ohutum kasutada seda. 530 00:29:11,070 --> 00:29:14,930 Aga kaja teeb tööd just fine, kui me ei ole 531 00:29:14,930 --> 00:29:17,620 tegelevad midagi liiga vastik. 532 00:29:17,620 --> 00:29:20,340 >> Ja nii see on samasugune mõju põhiliselt 533 00:29:20,340 --> 00:29:26,360 Selle kraami vahel küsimus märgid hinnatakse PHP. 534 00:29:26,360 --> 00:29:34,490 htmlspecialchars naaseb kena HTML trükitud väärtus _GET_GET ["nimi"], st 535 00:29:34,490 --> 00:29:36,010 mida me trükitud kujul. 536 00:29:36,010 --> 00:29:40,025 Ja siis ütlen tere, komadega ruumi, ja siis. 537 00:29:40,025 --> 00:29:42,910 See kogu asi vahel nurk sulgudes 538 00:29:42,910 --> 00:29:47,390 asendatakse iganes htmlspecialchars paneb välja. 539 00:29:47,390 --> 00:29:49,390 Nii et põhimõtteliselt sarnased mida me teeme. 540 00:29:49,390 --> 00:29:54,760 Ja meil on teine ​​väide, mis on tere, mis on loogiline. 541 00:29:54,760 --> 00:29:58,070 Nüüd lähme tagasi meie koodi ja vaata exactly-- oh. 542 00:29:58,070 --> 00:30:02,200 Ütlesin olemas, mis ei ole asi, mida me tahtsime teha. 543 00:30:02,200 --> 00:30:05,370 Tahtsime öelda ei ole tühi. 544 00:30:05,370 --> 00:30:10,020 >> Ja nii see peaks toimima vähe natuke parem, mitte tühja _GET_GET ["nimi"]. 545 00:30:10,020 --> 00:30:12,710 Ja see lokkis traksidega sobib, et lokkis traksidega. 546 00:30:12,710 --> 00:30:15,210 Meil meie looksulg siin. 547 00:30:15,210 --> 00:30:17,790 Kaja hello _GET ["nimi"]. 548 00:30:17,790 --> 00:30:19,912 Vaatame, kas see toimib veidi paremini. 549 00:30:19,912 --> 00:30:21,350 Me ikka töötab meie server. 550 00:30:21,350 --> 00:30:23,910 Tere Jason. 551 00:30:23,910 --> 00:30:24,780 Tere Jason. 552 00:30:24,780 --> 00:30:25,810 Ja see töötas sel ajal. 553 00:30:25,810 --> 00:30:29,860 Ja nii see on tõestus et saate tõepoolest 554 00:30:29,860 --> 00:30:35,180 kasutada looksulg, et sa teame ja armastust PHP koodi HTML. 555 00:30:35,180 --> 00:30:41,100 PHP koodi tingimusel, et Teid pset 6-- pset 6-- 556 00:30:41,100 --> 00:30:44,760 on veel üks võimalus teeme sama asja. 557 00:30:44,760 --> 00:30:49,220 >> Nüüd on meil võimsust. 558 00:30:49,220 --> 00:30:55,740 Meil on funktsionaalsus rakendada PHP koodi, et nägime pset 6 559 00:30:55,740 --> 00:30:57,390 ise, põhimõtteliselt. 560 00:30:57,390 --> 00:31:01,350 Enne kui ma liikuda, mida on mõned küsimusi, et teil on sel hetkel? 561 00:31:01,350 --> 00:31:02,066 Jah [kuuldamatu]. 562 00:31:02,066 --> 00:31:06,512 >> Sihtrühm: Nii redaktsiooni pset6, kui sa jooksed seda, seal on ruumi. 563 00:31:06,512 --> 00:31:09,330 Ja ma ei näe, kus ruumi on pärast koma. [Kuuldamatu] start 564 00:31:09,330 --> 00:31:10,700 Avatud sulg. 565 00:31:10,700 --> 00:31:15,420 Kuidas lisada ruumi kuidas sa kirjutasid oma koodid? 566 00:31:15,420 --> 00:31:17,910 >> SPEAKER: See on hea küsimus. 567 00:31:17,910 --> 00:31:21,650 Ja nii Leiame, et välja. 568 00:31:21,650 --> 00:31:24,450 Nii et on tõesti hea küsimus ja üks, et ma ei pidanud. 569 00:31:24,450 --> 00:31:25,950 Aga teeme seda koos. 570 00:31:25,950 --> 00:31:30,280 >> Nii esiteks, mida Ma teen koos kaja 571 00:31:30,280 --> 00:31:33,690 Kui me lihtsalt kaja tere, on väljundiks tere. 572 00:31:33,690 --> 00:31:41,310 Kui me kaja nüüd seda saada eraldi line, Uurime, mis juhtub. 573 00:31:41,310 --> 00:31:43,740 Nii me klõpsake seda. 574 00:31:43,740 --> 00:31:45,220 Me ütleme, hi Jason. 575 00:31:45,220 --> 00:31:48,690 Nii jälle, me ei ole seda ruumi. 576 00:31:48,690 --> 00:31:53,090 >> Ja see on sellepärast, et PHP, kui me oleme kaja 577 00:31:53,090 --> 00:31:55,820 ükskõik kui palju spaces-- nope, mitte V-- 578 00:31:55,820 --> 00:32:01,770 ükskõik kui palju ruumi panime siin-- kui me nüüd laadige see uuesti üles, 579 00:32:01,770 --> 00:32:03,010 hi Jason. 580 00:32:03,010 --> 00:32:05,770 Jah, vaata, kõik need ruumid sai söödud. 581 00:32:05,770 --> 00:32:08,020 Ja see on midagi, mis kaja funktsioon teeb. 582 00:32:08,020 --> 00:32:11,110 >> Nii hoolitseda nimetatud ruumi ja see on 583 00:32:11,110 --> 00:32:14,960 üks põhjustest miks sa ei kasuta kaja 584 00:32:14,960 --> 00:32:18,200 ja te kasutate htmlspecialchars asemel. 585 00:32:18,200 --> 00:32:22,140 Ma olen uudishimulik, mida oleks juhtuda, kui me seda tegime 586 00:32:22,140 --> 00:32:26,700 kus me suletud ruumi string. 587 00:32:26,700 --> 00:32:29,720 Ma ausalt ei tea, mida juhtub, kui ma seda teen. 588 00:32:29,720 --> 00:32:30,790 >> Nii et üks võimalus. 589 00:32:30,790 --> 00:32:32,210 See on üks viis hoolitseda selle eest. 590 00:32:32,210 --> 00:32:34,840 Kui te wrap ruumi string, siis ruumi 591 00:32:34,840 --> 00:32:36,920 on väljund kenasti poolt kaja. 592 00:32:36,920 --> 00:32:41,930 Kindlaim asi, mida teha on teha htmlspecialchars. 593 00:32:41,930 --> 00:32:43,800 See on alati kindel. 594 00:32:43,800 --> 00:32:47,050 Aga nüüd on meil võimalus seda teha seda kaja, kui vaja. 595 00:32:47,050 --> 00:32:50,700 Ja samamoodi, saame Kaja uued liinid, kõik omamoodi 596 00:32:50,700 --> 00:32:53,550 kraami te olete juba tuttav teeb PHP. 597 00:32:53,550 --> 00:32:57,460 >> Keegi teine, mida on enam küsimused, mida teised inimesed on 598 00:32:57,460 --> 00:33:01,090 sel hetkel umbes PHP? 599 00:33:01,090 --> 00:33:04,620 Kui inimesed näitasid natuke hilja, Ma olen õnnelik, et jääda pärast natuke 600 00:33:04,620 --> 00:33:06,420 ja rääkida mõned alguses. 601 00:33:06,420 --> 00:33:10,380 Ja see on ka kõik livestreamed, ja arhiveeritud, mis on hull. 602 00:33:10,380 --> 00:33:13,960 >> Igatahes, nii et nüüd teeme mõned rohkem arenenud kraam PHP. 603 00:33:13,960 --> 00:33:18,790 Ja üks esimesi asju, mida toodi C oli silmuseid. 604 00:33:18,790 --> 00:33:24,060 Ja PHP on võimsam loop nimetatakse foreach loop. 605 00:33:24,060 --> 00:33:37,940 Ja tundub, et see-- iga tühja nagu tühi, looksulgudega, tehke asi. 606 00:33:37,940 --> 00:33:41,500 Nii et see on põhimõtteliselt stenografist. 607 00:33:41,500 --> 00:33:45,380 >> Vaata, silmus nagu süntaktiline ehitus 608 00:33:45,380 --> 00:33:50,590 töötati välja C ja kokkupanek keel ja asju. 609 00:33:50,590 --> 00:33:56,300 Töötati välja C, täpselt, lühendina jaoks palju tüüpe silmuseid 610 00:33:56,300 --> 00:33:57,750 et inimesed näeksid. 611 00:33:57,750 --> 00:34:01,230 Nagu siis, kui kirjutas loop, siis Tihti oli initsialiseerimishetkel 612 00:34:01,230 --> 00:34:04,700 hukati kohe alguses, et seisund, kus loop oleks stop-- 613 00:34:04,700 --> 00:34:07,030 ja see on omadus see on lihtsalt mõnda aega silmus, 614 00:34:07,030 --> 00:34:10,040 või et mõnda aega on täpselt lihtsalt, et feature-- ja seejärel 615 00:34:10,040 --> 00:34:12,320 incrementation samm lõpus. 616 00:34:12,320 --> 00:34:16,489 Ja nii sa sageli leiad end kirjalikult koodi nagu järgmine. 617 00:34:16,489 --> 00:34:19,780 Ma lähen kustutada osa sellest. 618 00:34:19,780 --> 00:34:23,850 >> Aga kui me iterating läbi tegelased massiivi, 619 00:34:23,850 --> 00:34:26,960 Näiteks nagu me oleme sain hulgaliselt tähemärke. 620 00:34:26,960 --> 00:34:29,400 Sorry, et tuua tagasi C. Ma tean, sa arvasid teinud. 621 00:34:29,400 --> 00:34:31,900 Aga see on ainult selleks, õppe PHP, ma luban. 622 00:34:31,900 --> 00:34:38,880 Nii et kui sul on char str pikkus 8, ja olgem 623 00:34:38,880 --> 00:34:46,760 öelda, et see ütleb Hellooo koos trailing null. 624 00:34:46,760 --> 00:34:48,270 Hea, et see on meie string. 625 00:34:48,270 --> 00:34:51,469 >> Ja siis oli meil silmus. 626 00:34:51,469 --> 00:34:53,730 Meil on int i võrdub 0. 627 00:34:53,730 --> 00:34:57,960 628 00:34:57,960 --> 00:35:09,110 Ja me tahame, et väljuda, kui str i võrdub ei võrdu tühjaks, 629 00:35:09,110 --> 00:35:11,590 sest me väljuda, kui see võrdub null. 630 00:35:11,590 --> 00:35:19,170 Ja siis me teeme i ++ igal punkti jaoks silmus. 631 00:35:19,170 --> 00:35:30,480 Midagi koos str i. 632 00:35:30,480 --> 00:35:34,950 >> Nii et põhilised valem oli, meil oli see massiiv, et me 633 00:35:34,950 --> 00:35:37,910 tahtsin käsitleda eraldi elemente. 634 00:35:37,910 --> 00:35:45,170 Aga mida me pidime tegema, on pidime põhimõtteliselt luua eraldi täisarv 635 00:35:45,170 --> 00:35:50,530 muutuja, mis oli lugedes üles iga aeg läksime läbi silmuse. 636 00:35:50,530 --> 00:35:55,240 Ja siis oleks meil siis helista strstr [i] kui me tõesti tahtsid teha 637 00:35:55,240 --> 00:35:57,280 lihtsalt minna iseloomu poolt iseloomu, eks? 638 00:35:57,280 --> 00:36:00,185 Me ei taha, et juurdekasvu täisarv ja siis kasutada, et täisarv 639 00:36:00,185 --> 00:36:02,780 juurdepääsu iga märgi ükshaaval. 640 00:36:02,780 --> 00:36:04,410 Me tõesti tähthaaval. 641 00:36:04,410 --> 00:36:08,600 >> Ja nii iga arukalt arvutab, et meie jaoks. 642 00:36:08,600 --> 00:36:11,875 Kui meil on hulgaliselt, mis saame kuulutada PHP 643 00:36:11,875 --> 00:36:15,900 kui Lihtsalt-- kui meil on muutuv nimetatakse, olgem kutsuvad seda valikut. 644 00:36:15,900 --> 00:36:19,840 Imedest ei kirjutades, et see on nagu iga teine ​​muutuja. 645 00:36:19,840 --> 00:36:20,730 See on lihtsalt massiivi. 646 00:36:20,730 --> 00:36:26,890 Ja meil on vähe [kuuldamatu] nagu 1, 2, 3, vaid mingi lähtestatud massiivi. 647 00:36:26,890 --> 00:36:29,680 See on OK, see ei meeldi minu foreach. 648 00:36:29,680 --> 00:36:33,120 >> Aga kui me foreach-- tegelikult Ma kirjutada, et natuke vale. 649 00:36:33,120 --> 00:36:34,840 On kaks võimalust teha foreach loop. 650 00:36:34,840 --> 00:36:37,400 Seal on ka süntaksi ja kui süntaks. 651 00:36:37,400 --> 00:36:40,580 Ja me teeme süntaksis esimene, mitte nii. 652 00:36:40,580 --> 00:36:41,780 See on minu viga. 653 00:36:41,780 --> 00:36:53,785 >> Nii foreach num massiivi, kaja num. 654 00:36:53,785 --> 00:36:56,970 655 00:36:56,970 --> 00:36:59,500 Ja PHP karjuma mulle miskipärast. 656 00:36:59,500 --> 00:37:03,520 See järeldus ootamatu aastal midagi, 657 00:37:03,520 --> 00:37:05,820 mis on natuke vaeva. 658 00:37:05,820 --> 00:37:09,105 Aga me nuputada miks see nii on hetkel. 659 00:37:09,105 --> 00:37:11,960 660 00:37:11,960 --> 00:37:13,610 Nii ei meeldi, et. 661 00:37:13,610 --> 00:37:15,040 Proovime abil nagu. 662 00:37:15,040 --> 00:37:17,310 See eelistab nii süntaks on tundub. 663 00:37:17,310 --> 00:37:22,550 Nii teeme foreach massiivi num. 664 00:37:22,550 --> 00:37:24,520 >> Nii vähe selgitus mis juhtus 665 00:37:24,520 --> 00:37:30,670 Kas nii süntaks on saying-- ka esimene, Vaatame, mida see prindib välja. 666 00:37:30,670 --> 00:37:32,260 Nii me avada meie IDE. 667 00:37:32,260 --> 00:37:33,110 Käime siin. 668 00:37:33,110 --> 00:37:35,845 Me ütleme, Tere Jason. 669 00:37:35,845 --> 00:37:41,390 Ja ta tegi 123, mis olid sisu massiivi, et oleme loonud up top. 670 00:37:41,390 --> 00:37:45,500 >> Nii sukeldudes see foreach loop, meil on muutuja nimega massiivi 671 00:37:45,500 --> 00:37:47,470 mis on massiiv kolme numbrid. 672 00:37:47,470 --> 00:37:52,120 Ja siis me teeme foreach massiivi num, kaja num. 673 00:37:52,120 --> 00:37:54,990 Ja see on rohkem intuitiivne kui ette ripnema. 674 00:37:54,990 --> 00:38:02,380 Me öeldes, ravimisel iga asjad massiivi kui num, 675 00:38:02,380 --> 00:38:05,180 Ma tahan, et sa mulle num. 676 00:38:05,180 --> 00:38:06,640 Ja see on täpselt see, mida ta teeb. 677 00:38:06,640 --> 00:38:12,000 >> PHP on arvutamist kui sa ütled foreach massiiv, 678 00:38:12,000 --> 00:38:16,080 ja sa oled tegelevad massiivi, mida sa lähed tahan korrata üle 679 00:38:16,080 --> 00:38:19,950 on märke, et massiiv, on ints, et massiiv, 680 00:38:19,950 --> 00:38:21,920 on elemente, mis massiivi. 681 00:38:21,920 --> 00:38:26,110 Ja see on lastes teil salvestada need muutujad nii num, 682 00:38:26,110 --> 00:38:29,360 ja siis lihtsalt väljund num kohe mitte öelda, 683 00:38:29,360 --> 00:38:34,090 Mul on muutuja nimega i ja siis ma tahan väljund strstr [i]. 684 00:38:34,090 --> 00:38:39,130 >> Ja nii, et võimaldab meil teha lahedaid asju. 685 00:38:39,130 --> 00:38:43,330 Nagu põhimõtteliselt ei ole meil luua need muutujad nagu i poolt ja teha kõik 686 00:38:43,330 --> 00:38:45,090 Selle incrementation kraami lõpus. 687 00:38:45,090 --> 00:38:48,290 PHP hoolitseb kõigi selle teile. 688 00:38:48,290 --> 00:38:54,470 >> Nüüd räägime foreach kui see kehtib meie _GET sõnastik. 689 00:38:54,470 --> 00:38:57,170 Nii me välja kommenteerida kiiresti. 690 00:38:57,170 --> 00:39:02,030 Nii et meil on meie _GET massiivi. 691 00:39:02,030 --> 00:39:04,361 Meil on see muutuv. 692 00:39:04,361 --> 00:39:05,610 Ja see sai mõned asjad on. 693 00:39:05,610 --> 00:39:10,275 >> Just nüüd, meil on ainult üks muutuja edastata seda, mis on nime. 694 00:39:10,275 --> 00:39:13,420 Aga kui me vajutage Enter, nüüd meil on kaks muutujat. 695 00:39:13,420 --> 00:39:17,910 Saame nimi ja vanus, näiteks kui me tahame saada vanusest ja ka 696 00:39:17,910 --> 00:39:20,960 nimi inimene, veidralt piisavalt. 697 00:39:20,960 --> 00:39:25,690 >> Nüüd _GET läheb olla sõnastik kaks elementi, 698 00:39:25,690 --> 00:39:27,980 kahe põhiväärtus paari. 699 00:39:27,980 --> 00:39:33,490 Ja esimene key-- ma lähen kirjuta see üles laual ka. 700 00:39:33,490 --> 00:39:37,136 Meil on meie sõnastiku _GET. 701 00:39:37,136 --> 00:39:39,520 Vabandame, see on natuke raske mõista. 702 00:39:39,520 --> 00:39:46,690 Aga sees meie sõnastiku meil Nime, mis saab olema midagi 703 00:39:46,690 --> 00:39:47,680 et me antud. 704 00:39:47,680 --> 00:39:53,040 Ja me peame vanus, mis on ka saab olema midagi, et me antud. 705 00:39:53,040 --> 00:39:56,020 Ja see on täielikult meie sõnastikku. 706 00:39:56,020 --> 00:39:57,730 >> Nii see ju kaks elemente. 707 00:39:57,730 --> 00:40:01,310 Ja seda sellepärast, foreach silmad on targad, me 708 00:40:01,310 --> 00:40:04,900 Võib arvata, ja õigesti Võib arvata, et foreach 709 00:40:04,900 --> 00:40:08,080 võib korrata kaudu sõnastik, väljatrükk 710 00:40:08,080 --> 00:40:10,850 saadud väärtused nimi ja vanus. 711 00:40:10,850 --> 00:40:14,510 >> Nii saab tegelikult teha just seda. 712 00:40:14,510 --> 00:40:17,520 Olgem ehitada foreach loop. 713 00:40:17,520 --> 00:40:23,351 Ja me ei kavatse teha _GET nagu. 714 00:40:23,351 --> 00:40:24,850 Ja me teeme järgmine. 715 00:40:24,850 --> 00:40:34,186 Vaatame, mis juhtub, kui me kirjutame lihtsalt sõna, ja siis öelda kaja sõna. 716 00:40:34,186 --> 00:40:40,540 Oleme ka läheb kaja uus liin vaid teha seda veidi selgem, 717 00:40:40,540 --> 00:40:41,260 mis toimub. 718 00:40:41,260 --> 00:40:42,890 >> Vaatame. 719 00:40:42,890 --> 00:40:44,390 See ei anna mulle mingeid vigu. 720 00:40:44,390 --> 00:40:46,810 Ja me sulgeda. 721 00:40:46,810 --> 00:40:51,020 Meie kodulehel, sa lähed tegema palju, et jooksul pset7. 722 00:40:51,020 --> 00:40:53,890 Nii me ütleme, minu nimi on Sam. 723 00:40:53,890 --> 00:40:58,560 Minu vanus on 45. 724 00:40:58,560 --> 00:41:01,060 See ei ole. 725 00:41:01,060 --> 00:41:05,640 Aga ta prindib välja, kui oodata, Sam 45. 726 00:41:05,640 --> 00:41:08,930 >> Ja nii sa märkad, et Mis foreach loop did-- siin 727 00:41:08,930 --> 00:41:12,360 lähme tagasi, et nii see on kuni kohta board-- saame _GET kui sõna. 728 00:41:12,360 --> 00:41:15,130 Ja seal oli neli asja _GET. 729 00:41:15,130 --> 00:41:17,410 Aga see ainult välja printida kaks asja. 730 00:41:17,410 --> 00:41:21,290 foreach, olles oma luure ise, Eeldatakse, et see, mida me tõesti tahtsid 731 00:41:21,290 --> 00:41:24,100 oli väärtuste mitte võtmed. 732 00:41:24,100 --> 00:41:27,800 >> Aga seal on nii, et me võiks printida võtmed välja ka, kui me tahtsime. 733 00:41:27,800 --> 00:41:30,810 Kui me tahame ka teada, milliseid Nende muutujate kutsuti, 734 00:41:30,810 --> 00:41:33,540 seal on nii, et me pääseb ka seda. 735 00:41:33,540 --> 00:41:36,840 Ja viis omamoodi teha, Nii võime öelda, laseb tõesti 736 00:41:36,840 --> 00:41:39,485 jagada see põhiväärtus paari. 737 00:41:39,485 --> 00:41:42,370 738 00:41:42,370 --> 00:41:47,580 Vaatame, mis juhtub nüüd. 739 00:41:47,580 --> 00:41:50,550 >> Nii et meil on võti. 740 00:41:50,550 --> 00:41:52,290 Meil on väärtus. 741 00:41:52,290 --> 00:41:56,650 Meil on veel üks uus line loetavust. 742 00:41:56,650 --> 00:42:00,540 Ja vaatame, mis juhtub kui me teeme seda nüüd. 743 00:42:00,540 --> 00:42:04,950 744 00:42:04,950 --> 00:42:06,720 Ma ei tea, kui vana Jason on. 745 00:42:06,720 --> 00:42:09,180 Jasoni 15. 746 00:42:09,180 --> 00:42:11,650 Nii et meil on nimi Jason, vanus 15. 747 00:42:11,650 --> 00:42:15,830 Nii oleme suutnud pääseda võti ja väärtust paari sõnastiku 748 00:42:15,830 --> 00:42:18,590 lihtsalt öeldes, kui olulised punktid väärtus. 749 00:42:18,590 --> 00:42:23,350 Ja see on foreach süntaktilise suhkrut natuke, mis võimaldab 750 00:42:23,350 --> 00:42:25,960 pääsete asju sõnastik. 751 00:42:25,960 --> 00:42:31,190 >> Loodetavasti selline rõhutab võimu foreach loop. 752 00:42:31,190 --> 00:42:35,690 Saab päris palju visata midagi, mis tundub iterable, 753 00:42:35,690 --> 00:42:38,922 nagu midagi, mis on mitu elemente nagu massiivi, 754 00:42:38,922 --> 00:42:41,880 nagu dictionary-- need kaks Esmane asju teil töötavad koos 755 00:42:41,880 --> 00:42:45,630 nii elus kui ka pset 7. 756 00:42:45,630 --> 00:42:49,350 Nii et sa ei viska seda kraami seda ja siis nuputada 757 00:42:49,350 --> 00:42:51,030 mida sa tahad teha. 758 00:42:51,030 --> 00:42:54,250 See ütlen, OK, ma lähen need asjad on andmeid, et 759 00:42:54,250 --> 00:42:55,680 võeti vastu mulle. 760 00:42:55,680 --> 00:43:02,470 Ja see on midagi, mida sa oled kavatsed kasutada palju on pset 7. 761 00:43:02,470 --> 00:43:08,550 >> Ma lähen kiirkerimist maha lihtsalt näha, kus ma olen. 762 00:43:08,550 --> 00:43:11,410 763 00:43:11,410 --> 00:43:13,070 Kas inimesed on küsimusi sel hetkel? 764 00:43:13,070 --> 00:43:13,778 Küsimused üldse? 765 00:43:13,778 --> 00:43:14,400 Jah? 766 00:43:14,400 --> 00:43:18,320 >> Sihtrühm: Nii võtme ja väärtuse, siis võiks nimetada seda midagi muud 767 00:43:18,320 --> 00:43:20,507 ja ikkagi töötab? 768 00:43:20,507 --> 00:43:21,090 SPEAKER: Oops. 769 00:43:21,090 --> 00:43:22,820 Wow, ma täiesti jättis kogu liini. 770 00:43:22,820 --> 00:43:23,380 Hea töö. 771 00:43:23,380 --> 00:43:26,502 Nii, a. 772 00:43:26,502 --> 00:43:30,109 Key ja väärtus on vaid konventsiooni. 773 00:43:30,109 --> 00:43:30,650 See on kasulik. 774 00:43:30,650 --> 00:43:34,010 Sa saaksid mõned disain punktid, võibolla mõned stiili punktid 775 00:43:34,010 --> 00:43:36,970 millega seda teha, sest see tõesti väljendab kavatsust. 776 00:43:36,970 --> 00:43:39,650 Aga ütleme ja yarp. 777 00:43:39,650 --> 00:43:42,476 >> Sihtrühm: Sa ei pea midagi muuta HTML faili 778 00:43:42,476 --> 00:43:43,607 et kajastada mis? 779 00:43:43,607 --> 00:43:44,440 SPEAKER: Üldse mitte. 780 00:43:44,440 --> 00:43:47,260 Sihtrühm: Ja see lihtsalt ei tea, et sest võrdub suurem than-- 781 00:43:47,260 --> 00:43:47,801 Ettekandja: Jah. 782 00:43:47,801 --> 00:43:49,489 Sihtrühm: --that näitaja, et see on-- 783 00:43:49,489 --> 00:43:50,030 Ettekandja: Jah. 784 00:43:50,030 --> 00:43:52,260 See on foreach süntaksi, aga jah. 785 00:43:52,260 --> 00:43:53,720 >> Sihtrühm: Ei ole tüüpe. 786 00:43:53,720 --> 00:43:57,230 Mis siis, kui sa tahtsid vanus olla vaid number? 787 00:43:57,230 --> 00:43:59,510 Kas on võimalik seda teha? 788 00:43:59,510 --> 00:44:04,550 >> SPEAKER: On viise, et kontrollida, kas muutujad vastavad teatud tüüpi. 789 00:44:04,550 --> 00:44:08,482 Nii PHP küsib veidi rohkem sa, sest puuduvad liigid. 790 00:44:08,482 --> 00:44:09,440 Mõnes mõttes see küsib vähem. 791 00:44:09,440 --> 00:44:11,070 Mõnes mõttes see küsib rohkem. 792 00:44:11,070 --> 00:44:13,320 Sest kui sul on lihtsalt midagi muutuja, 793 00:44:13,320 --> 00:44:14,960 sa ei tea, millist tüüpi ta on. 794 00:44:14,960 --> 00:44:19,310 Aga kui sa oled tark umbes muutujad et olete mõnele tüüpe ja veenduge, 795 00:44:19,310 --> 00:44:22,750 mis toimib ainult return-- sa tahan funktsioone ainult tagasipöördumine 796 00:44:22,750 --> 00:44:26,210 üht tüüpi väärtust nii et saab põhimõtteliselt 797 00:44:26,210 --> 00:44:31,090 eeldada, et muutuja saad tagasi funktsioonist on sellist tüüpi 798 00:44:31,090 --> 00:44:32,780 mis te arvate, on see, põhimõtteliselt. 799 00:44:32,780 --> 00:44:36,550 >> Aga seal on mõned meetodid mille abil saab vaadata. 800 00:44:36,550 --> 00:44:39,801 Ma ei mäleta neid välja mu peas. 801 00:44:39,801 --> 00:44:43,300 Ma ootan seda siniseks. 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 Leidub võimalusi ehitatud PHP, mida saab 805 00:44:52,000 --> 00:44:54,440 kontrollida tüüpi muutujatest teile. 806 00:44:54,440 --> 00:44:58,250 Aga kui sa määrata muutujaid teravmeelselt, siis ei tohi 807 00:44:58,250 --> 00:45:01,330 pead tegema, et liiga palju pset 7. 808 00:45:01,330 --> 00:45:02,780 Aga need meetodid ei eksisteeri. 809 00:45:02,780 --> 00:45:06,704 Ja see on midagi, mis on keel ise. 810 00:45:06,704 --> 00:45:08,370 Ja ma ei mäleta täpset süntaksit. 811 00:45:08,370 --> 00:45:09,930 Võiks isegi otsida see üles. 812 00:45:09,930 --> 00:45:11,974 Kuid aeg on sisuliselt. 813 00:45:11,974 --> 00:45:13,890 on Kas keegi on veel küsimusi? 814 00:45:13,890 --> 00:45:14,660 Jah. 815 00:45:14,660 --> 00:45:15,951 >> Sihtrühm: Mul on veel üks. 816 00:45:15,951 --> 00:45:19,050 Nii et sa mainisid GET meetodiga, kuid sa ei maininud POST meetodit. 817 00:45:19,050 --> 00:45:20,500 Kas me jälle on? 818 00:45:20,500 --> 00:45:21,540 >> Ettekandja: Jah, me tule tagasi seda. 819 00:45:21,540 --> 00:45:24,840 See on täpselt see, mida ma otsisin minu telefoni, mis nüüd magama, 820 00:45:24,840 --> 00:45:26,960 aga ma leida. 821 00:45:26,960 --> 00:45:30,680 Lihtsalt veenduge, me tabanud kõik PHP märkmeid. 822 00:45:30,680 --> 00:45:35,640 Yep, pole silumine versiooni. 823 00:45:35,640 --> 00:45:41,940 Jah, meil on veel mõned asjad, mis me tahame teha nüüd selles punktis. 824 00:45:41,940 --> 00:45:45,980 >> Nii räägime POST, mis te mainisite, 825 00:45:45,980 --> 00:45:49,630 ainus erinevus vahel GET ja POST on 826 00:45:49,630 --> 00:45:53,150 et mäletad, kui me vaatasime sellelt aadressilt ja nägime, oh, 827 00:45:53,150 --> 00:45:58,270 nimi võrdub ja vanus võrdub yarp on õigus URL meid seal. 828 00:45:58,270 --> 00:46:03,300 POST on veidi saladuslik selle läbimise kohta. 829 00:46:03,300 --> 00:46:08,090 >> Nii et kui sa ei taha kasutaja teada, näiteks, siis 830 00:46:08,090 --> 00:46:11,160 ei tahtnud kasutajanime ja salasõna isiku 831 00:46:11,160 --> 00:46:15,080 praegu sisse logitud kuvatakse URL, mis on mõistliku asi 832 00:46:15,080 --> 00:46:17,770 et ei taha URL, sest keegi ei näe. 833 00:46:17,770 --> 00:46:21,520 Kui nad viitavad kellelegi lehel ei taha oma URL krohvitud seal, 834 00:46:21,520 --> 00:46:27,850 sest see võimaldaks inimestel sisse lihtsalt koos kleepimine URL asemel 835 00:46:27,850 --> 00:46:29,670 tegelikult täites vormi. 836 00:46:29,670 --> 00:46:31,710 POST on natuke rohkem saladuslik. 837 00:46:31,710 --> 00:46:34,150 >> Ja ainsad asjad, mis me peame muutma 838 00:46:34,150 --> 00:46:38,550 on selle meetodi muutust alates saa postitada. 839 00:46:38,550 --> 00:46:42,367 Ja siis sees HTTP asemel juurdepääsu massiivi _GET, 840 00:46:42,367 --> 00:46:43,950 me läheme juurdepääsu massiivi _POST. 841 00:46:43,950 --> 00:46:48,600 >> Ja me märkad, et kui avame selle tagasi jälle, 842 00:46:48,600 --> 00:46:51,910 Jason väheneb aeglaselt vanus. 843 00:46:51,910 --> 00:46:53,230 nimi Jason, vanus 14. 844 00:46:53,230 --> 00:46:54,280 Sama värk hüppab. 845 00:46:54,280 --> 00:46:57,190 Aga me läheme URL ja need muutujad ei ole olemas. 846 00:46:57,190 --> 00:47:00,540 >> Ja nii, et POST passes-- nii mäletan 847 00:47:00,540 --> 00:47:02,750 kuidas vaadata allikas lehele. 848 00:47:02,750 --> 00:47:04,570 Läheme võrku. 849 00:47:04,570 --> 00:47:06,920 Me värskendada. 850 00:47:06,920 --> 00:47:10,690 Ja see on veel üks asi, mis POST teile hoiatusi. 851 00:47:10,690 --> 00:47:15,050 Te olete näinud kasti, teksti kasti niimoodi brauseris. 852 00:47:15,050 --> 00:47:18,170 Kas oled kindel, et tahad saata kujul uuesti? 853 00:47:18,170 --> 00:47:21,170 Post Mis saates need vormid. 854 00:47:21,170 --> 00:47:24,680 >> Sest põhimõtteliselt, kui sa saatsid oma krediitkaardi andmeid keegi, 855 00:47:24,680 --> 00:47:26,350 et ei kavatse näidata üles URL. 856 00:47:26,350 --> 00:47:28,180 See saab olema POST taotluse. 857 00:47:28,180 --> 00:47:32,905 Nii et kui sa värskenda lehekülge, see uuesti saata, et pärast taotluse. 858 00:47:32,905 --> 00:47:35,530 Nüüd me ei taha saata moodustada uuesti, sest ta ei kavatse 859 00:47:35,530 --> 00:47:37,340 luua korduvaid oste. 860 00:47:37,340 --> 00:47:41,160 >> Ja me märgata, et siin, meetod, mida me kasutame on POST. 861 00:47:41,160 --> 00:47:43,065 Ja see oli tõesti üle baiti. 862 00:47:43,065 --> 00:47:45,460 See üle 401 neist. 863 00:47:45,460 --> 00:47:47,190 Programmi päris pisikesi. 864 00:47:47,190 --> 00:47:51,600 Aga seal kuskil, et näeme väärtused, mida edasi. 865 00:47:51,600 --> 00:47:59,540 Veebilehti ise näen, kuid me nagu kasutajad ei ole võimalik näha, 866 00:47:59,540 --> 00:48:01,650 kui sa oled häkker. 867 00:48:01,650 --> 00:48:05,340 Kui sa oled hea häkker, saate otsida. 868 00:48:05,340 --> 00:48:09,360 >> Kui sa tead, põhi vormi HTML, 869 00:48:09,360 --> 00:48:11,790 väärtused teeb Endast lehekülgi. 870 00:48:11,790 --> 00:48:13,160 Sul on võimalik näha. 871 00:48:13,160 --> 00:48:16,720 Väärtused on seal, nad natuke vähem selge teile 872 00:48:16,720 --> 00:48:19,522 juurdepääsu, põhimõtteliselt. 873 00:48:19,522 --> 00:48:23,620 >> Kas meil on enam küsimusi GET, POST 874 00:48:23,620 --> 00:48:26,800 before-- mida me teeme järgmine tegelikult vaadata mõned koodi 875 00:48:26,800 --> 00:48:30,837 et sa oled andes in pset 7, rääkida kuidas ta kasutab mõnda neist mõistetest, 876 00:48:30,837 --> 00:48:32,670 ja rääkida asju, mida sa ei kavatse 877 00:48:32,670 --> 00:48:35,090 to pean tegema natuke ka pset 7. 878 00:48:35,090 --> 00:48:36,760 Veel küsimusi enne seda? 879 00:48:36,760 --> 00:48:38,047 Rohkem küsimusi teiega on? 880 00:48:38,047 --> 00:48:41,250 881 00:48:41,250 --> 00:48:41,840 Hea. 882 00:48:41,840 --> 00:48:45,370 >> Olgu, vaatame natuke on pset 7, 883 00:48:45,370 --> 00:48:49,530 Kahtlemata mida on kõik kõige põnevil. 884 00:48:49,530 --> 00:48:52,126 885 00:48:52,126 --> 00:48:54,750 Ma mõtlen, et see on midagi, David läheb läbi natuke. 886 00:48:54,750 --> 00:49:00,890 Aga me peame kolm kataloogi juures top, samuti konfiguratsioonifaili. 887 00:49:00,890 --> 00:49:04,650 See on andmebaasid, mida me tulen räägime umbes viis minutit. 888 00:49:04,650 --> 00:49:07,220 Sisaldab sa ei pea kunagi vaadata selle kataloogi 889 00:49:07,220 --> 00:49:12,480 kui te ei taha, aga see on tore tean, seal on igasuguseid abilisi. 890 00:49:12,480 --> 00:49:14,210 Abilised on nagu abivalmis funktsioone. 891 00:49:14,210 --> 00:49:18,120 Ja siis on meil config, milles mõned asjad üles. 892 00:49:18,120 --> 00:49:24,590 >> Leidub funktsioone, mis CS50 on kirjutatud, et on abimees ja config. 893 00:49:24,590 --> 00:49:27,250 Ja mõned PHP, et juba väljub faile 894 00:49:27,250 --> 00:49:30,880 teeme palju rohkem Sorteeri on nüri jalg töö. 895 00:49:30,880 --> 00:49:35,250 Nagu siis, kui me minna avaliku login.php, mis on see, mida 896 00:49:35,250 --> 00:49:38,350 näitab üles just siis, kui te lähete pset 7. 897 00:49:38,350 --> 00:49:40,580 Me näeme, et seal on see nõuab avalduses. 898 00:49:40,580 --> 00:49:43,420 Ja see omamoodi nagu terav hulka, hashtag 899 00:49:43,420 --> 00:49:46,850 hulka, kui sa oled uuema põlvkonna. 900 00:49:46,850 --> 00:49:49,740 Aga see põhimõtteliselt ütleb, et mul on vaja juurdepääsu 901 00:49:49,740 --> 00:49:52,260 kõigile funktsioonidele config.php. 902 00:49:52,260 --> 00:49:55,290 Ja siis võiks olla vaja igasuguseid muid asju. 903 00:49:55,290 --> 00:49:59,670 >> config tegelikult vajab abilisi. 904 00:49:59,670 --> 00:50:02,490 Nii et kui teil on vaja config, sa oled ka 905 00:50:02,490 --> 00:50:05,660 sh või nõudes abilised ka. 906 00:50:05,660 --> 00:50:09,590 Nii, mis annab teile juurdepääsu kõigile cool funktsioone, et me ei kavatse kasutada, 907 00:50:09,590 --> 00:50:10,420 Asjad muuta. 908 00:50:10,420 --> 00:50:13,490 Ma olen tegelikult läheb leevendada see veidi allapoole. 909 00:50:13,490 --> 00:50:16,280 Nii funktsiooni siis me oleme läheb jalutada 910 00:50:16,280 --> 00:50:22,380 vahetult enne astume SQL vähe natuke on login.php funktsiooni, lihtsalt 911 00:50:22,380 --> 00:50:26,586 sest ta kasutab mõningaid teemasid et me lihtsalt rääkisime PHP. 912 00:50:26,586 --> 00:50:30,840 >> Näed Esimene asi on see, kui $ _SERVER. 913 00:50:30,840 --> 00:50:34,500 See on veel üks globaalse muutuja, et sa lähed tegelema. 914 00:50:34,500 --> 00:50:38,460 See on nagu _GET ja _POST, kuid mida server sisaldab See võib teile 915 00:50:38,460 --> 00:50:42,730 tea, kas taotlus meetod oli GET või POST. 916 00:50:42,730 --> 00:50:47,250 Nagu varem, mida me teeme on lihtsalt meie kood, mis me kirjutasime, 917 00:50:47,250 --> 00:50:51,880 Me lihtsalt muutuvas seda GET ja POST sõltuvalt sellest, mida HTML on. 918 00:50:51,880 --> 00:50:55,120 Kuid on lehekülgi, mis võib olla külastatud mõlemat tüüpi taotlustele. 919 00:50:55,120 --> 00:50:57,410 Ja võiksite teha erinevaid asju sõltuvalt 920 00:50:57,410 --> 00:50:59,740 tüübist taotluse, nagu login teeb. 921 00:50:59,740 --> 00:51:04,400 >> Nii saate kontrollida, et taotluse meetod läbi pääseda võtmed, 922 00:51:04,400 --> 00:51:08,630 läbi kasutades nuppu ja saada väärtus midagi sõnastik 923 00:51:08,630 --> 00:51:10,260 _SERVER. 924 00:51:10,260 --> 00:51:13,800 Nii et on veel globaalne muutuja nagu _GET ja _POST. 925 00:51:13,800 --> 00:51:16,990 >> Kui see SAADA tahame muuta sisselogimist. 926 00:51:16,990 --> 00:51:21,920 Render on funktsioon, mis põhimõtteliselt lihtsalt paneb üles HTMLi 927 00:51:21,920 --> 00:51:24,500 ja läbib seda mõned parameetrid. 928 00:51:24,500 --> 00:51:28,740 See pealkiri on parameeter, mis on kasutatud väljapanek Kummalisel 929 00:51:28,740 --> 00:51:32,670 pealkiri lehele küsimus, asi siin, 930 00:51:32,670 --> 00:51:34,850 öelda või hello meie eelmise näite. 931 00:51:34,850 --> 00:51:36,100 Nüüd on meil teine ​​asi. 932 00:51:36,100 --> 00:51:38,570 Või kui see on POST, me teha mõned muud kraami. 933 00:51:38,570 --> 00:51:40,790 Me kasutavad seda tühja meetod. 934 00:51:40,790 --> 00:51:42,750 See ei ole olemas, see on tühi. 935 00:51:42,750 --> 00:51:45,440 Ja me nägime enne, PHP on päris palju ehitatud 936 00:51:45,440 --> 00:51:52,370 meetodite et David will-- kui meetodid, mis on kasulik teile, 937 00:51:52,370 --> 00:51:55,560 neid hoiatada teid kõndida läbi, et David 938 00:51:55,560 --> 00:51:59,770 annab alguses ülevaate, ja ka Zamyla abivalmis bitti. 939 00:51:59,770 --> 00:52:01,040 Ta on tagasi kõigile. 940 00:52:01,040 --> 00:52:03,100 Me võime kõik rõõmustada. 941 00:52:03,100 --> 00:52:06,530 Vabandan on tabavalt nimetatud funktsiooni et lihtsalt põhimõtteliselt prindib välja 942 00:52:06,530 --> 00:52:10,130 mõned veateated sest CS50 on väga viisakas. 943 00:52:10,130 --> 00:52:14,770 >> Ja nüüd see, et see on keeruline natuke, sest see 944 00:52:14,770 --> 00:52:16,697 on koht, kus me oleme päringu andmebaasi. 945 00:52:16,697 --> 00:52:18,280 Nüüd me ei ole rääkinud andmebaasides. 946 00:52:18,280 --> 00:52:22,220 Ja me ei kavatse järgmisel viis minutit või nii, maksimaalne. 947 00:52:22,220 --> 00:52:24,980 Kuid see on funktsioon et CS50 on kirjutanud 948 00:52:24,980 --> 00:52:38,050 saada tabeli põhimõtteliselt andmebaasist et me töötame koos in pset 7. 949 00:52:38,050 --> 00:52:40,860 Ma lihtsalt ei oska oma null indekseerimise täna. 950 00:52:40,860 --> 00:52:42,060 Aga jah, see on 7. 951 00:52:42,060 --> 00:52:46,340 >> Nii päringu see läheb tagastada massiiv, põhimõtteliselt on võti natuke. 952 00:52:46,340 --> 00:52:54,130 Ja kuna neid asju ei ole kirjutades, et rida on hulgaliselt massiivid. 953 00:52:54,130 --> 00:52:59,480 Sest kui me mõtleme tabeli, mida me teeme 954 00:52:59,480 --> 00:53:04,830 on, kui olete õppinud psets nagu mängu 15. niikuinii 955 00:53:04,830 --> 00:53:06,990 kus sa pidid kasutama topelt rida, me põhiliselt 956 00:53:06,990 --> 00:53:15,210 on hulgaliselt teisi massiivid teeb laua. 957 00:53:15,210 --> 00:53:18,150 Ja sul ridade ja veergude. 958 00:53:18,150 --> 00:53:24,450 Ja siis pääsete neile meeldib [0] [1], saad [0] [1]. 959 00:53:24,450 --> 00:53:26,900 Basic värki. 960 00:53:26,900 --> 00:53:29,380 >> Mida me teeme siin see funktsioon, 961 00:53:29,380 --> 00:53:35,070 me palume andmebaasis kui kasutaja, et on 962 00:53:35,070 --> 00:53:40,200 üritan sisse logida, et on saadetakse läbi POST meetodit. 963 00:53:40,200 --> 00:53:43,950 Me näeme me saada kasutajanimi alates _POST. 964 00:53:43,950 --> 00:53:46,900 Nad on saadetud kasutaja või siis, saadab väärtus 965 00:53:46,900 --> 00:53:50,750 läbi vormi kaudu POST sest see kasutajanimi ja parool kraami. 966 00:53:50,750 --> 00:53:54,830 Kontrollime kasutajanimi näha, on see tabelis? 967 00:53:54,830 --> 00:53:58,070 Sest kui kasutaja logib aastal, siis oma kasutajanime 968 00:53:58,070 --> 00:54:03,320 tuleb hoida tabelis kasutajad, kes on sellele saidile. 969 00:54:03,320 --> 00:54:09,360 Ühesõnaga, kui kasutaja on andmebaasis, 970 00:54:09,360 --> 00:54:16,400 päringu läheb tagasi et rida, mis on massiivi. 971 00:54:16,400 --> 00:54:24,560 >> Aga keeruline osa on see, et kui isegi siis, kui topelt massiiv on ainult üks rida, 972 00:54:24,560 --> 00:54:31,900 isegi kui see on üks rida array-- nagu sul basically-- 973 00:54:31,900 --> 00:54:36,900 kui sul on suurus ühe massiivi mis hoiab teise massiivi, 974 00:54:36,900 --> 00:54:38,940 sa oled tõesti tegemist ühe veeru. 975 00:54:38,940 --> 00:54:41,420 Aga see on ikka ravida nagu topelt massiivi. 976 00:54:41,420 --> 00:54:44,560 >> Ja see on koht, kus see võib mõnikord saada keeruline, sest meil rida siin. 977 00:54:44,560 --> 00:54:46,440 Meie muutuja on rida. 978 00:54:46,440 --> 00:54:48,590 Ja siis me luua uus muutuja nimega reas 979 00:54:48,590 --> 00:54:51,450 ja milles see võrdub esimese rea rida. 980 00:54:51,450 --> 00:54:55,150 Ja märkad, et kommentaar ütleb, et see on esimene ja ainus rida. 981 00:54:55,150 --> 00:54:57,080 >> Nii et see on keeruline osa, kus nüüd funktsioone 982 00:54:57,080 --> 00:54:59,660 võib naasta massiivid väga lihtne. 983 00:54:59,660 --> 00:55:01,270 Seal ei ole mallocs. 984 00:55:01,270 --> 00:55:02,280 Sa ei näe mallocs. 985 00:55:02,280 --> 00:55:03,940 Nii et sa ei näe seg vigu. 986 00:55:03,940 --> 00:55:08,380 Aga funktsioone ikkagi kulgeb ümber massiive ja andmete rühmades. 987 00:55:08,380 --> 00:55:12,250 Ja sa pead olema ettevaatlik, mida täpselt oma ülesandeid naaseb. 988 00:55:12,250 --> 00:55:15,160 Ja isegi kui see on üks veerus niimoodi, päringu 989 00:55:15,160 --> 00:55:17,520 on ikka veel tagasi topelt massiivi. 990 00:55:17,520 --> 00:55:21,390 Nii et juurdepääs, et column-- või sa ei mõtle kõik see tagurpidi 991 00:55:21,390 --> 00:55:22,870 kuna me räägime rida. 992 00:55:22,870 --> 00:55:26,810 Aga juurdepääsu, et üks rida, sa ei saa lihtsalt öelda, rida. 993 00:55:26,810 --> 00:55:31,540 Kuigi see on üks rida, sa pead ei rowsrows [0] kuni omamoodi kõrvaldada see 994 00:55:31,540 --> 00:55:37,360 välimine natuke massiivi ja just teie ühes reas. 995 00:55:37,360 --> 00:55:38,342 >> Kas mõned muud asjad. 996 00:55:38,342 --> 00:55:40,050 Seal on funktsioon nimetatakse password_verify 997 00:55:40,050 --> 00:55:42,980 tõestava Parooli et oli postitatud. 998 00:55:42,980 --> 00:55:48,500 Ja siis me näeme teise globaalse muutuva siin, _SESSION. 999 00:55:48,500 --> 00:55:51,340 Põhimõtteliselt Session ID kuidas teil jälgida 1000 00:55:51,340 --> 00:55:53,990 ja kui keegi on sisse logitud või mitte. 1001 00:55:53,990 --> 00:55:58,590 Nii kohe koos login.php, me metsaraie kasutaja. 1002 00:55:58,590 --> 00:56:01,920 Mida me tahame teha, on me tahame öelda sessiooni id on võrdne rida 1003 00:56:01,920 --> 00:56:05,890 id, mis lihtsalt mõtet, sest iga rida on erinev id 1004 00:56:05,890 --> 00:56:07,239 number osana tabelis. 1005 00:56:07,239 --> 00:56:09,280 Me võtame arvesse SQL on teine, nii et kui mõni selle 1006 00:56:09,280 --> 00:56:13,500 Tundub natuke nagu blah, siis kõik saab lahendatud. 1007 00:56:13,500 --> 00:56:18,450 Aga me ei kavatse seada id võrdne õige asi, sisselogimist kasutaja. 1008 00:56:18,450 --> 00:56:20,530 Vabandan, kui midagi läheb valesti. 1009 00:56:20,530 --> 00:56:27,600 Ja see on sisselogimise otstarbeks elu nagu professor Humala ütleks. 1010 00:56:27,600 --> 00:56:29,130 >> Nii et oli login.php. 1011 00:56:29,130 --> 00:56:33,750 Ja palju PHP koodi kirjutad in pset 7, ta hakkab olema natuke. 1012 00:56:33,750 --> 00:56:36,470 Ärge unustage, et chmod kuni õige õigusi. 1013 00:56:36,470 --> 00:56:40,180 Seal on natuke et alguses spec. 1014 00:56:40,180 --> 00:56:46,382 >> Aga PHP, et sa oled kirjalikult läheb 1015 00:56:46,382 --> 00:56:47,840 teeme asju, mis on sarnane sellele. 1016 00:56:47,840 --> 00:56:49,715 Sa lähed, et olla juurdepääsu mõned asjad, mis 1017 00:56:49,715 --> 00:56:52,760 antakse teile globaalsete muutujate PHP, et 1018 00:56:52,760 --> 00:56:56,105 Tegemist on praeguse sisseloginud kasutaja, kas 1019 00:56:56,105 --> 00:57:00,460 on olnud taotlused saata see lehekülje, erinevad asjad niimoodi. 1020 00:57:00,460 --> 00:57:05,790 Ja see on ka potentsiaalselt iterating läbi rida see asi. 1021 00:57:05,790 --> 00:57:09,010 >> Erinevas funktsioon, päringu ei tagastab double massiivi. 1022 00:57:09,010 --> 00:57:11,450 Ja kui on olemas rohkem kui üks rida on, 1023 00:57:11,450 --> 00:57:15,080 kui are-- jah, kui seal on rohkem kui üks rida seda, 1024 00:57:15,080 --> 00:57:16,870 siis võib lauale. 1025 00:57:16,870 --> 00:57:20,500 Ja võiksite korrata läbi rida selle massiiv kasutades 1026 00:57:20,500 --> 00:57:22,860 foreach loop et me kirjeldatud. 1027 00:57:22,860 --> 00:57:30,270 >> Nii et kui sa foreach kohta kaheses massiiv, millised on word-- siin 1028 00:57:30,270 --> 00:57:31,909 Ma tegelikult kirjutada. 1029 00:57:31,909 --> 00:57:32,950 Ma kirjutan seda kiire siin. 1030 00:57:32,950 --> 00:57:44,280 >> Kui meil on foreach ridu nagu real, mis on tüüpi rida? 1031 00:57:44,280 --> 00:57:45,390 Kas keegi teab? 1032 00:57:45,390 --> 00:57:54,000 1033 00:57:54,000 --> 00:57:54,500 Said pihta? 1034 00:57:54,500 --> 00:57:57,110 Nii rida on kahe massiivi. 1035 00:57:57,110 --> 00:58:02,810 Mis on foreach läheb järeldavad et me tahame selle topelt massiivi 1036 00:58:02,810 --> 00:58:04,280 kui me iterating üle? 1037 00:58:04,280 --> 00:58:07,170 1038 00:58:07,170 --> 00:58:10,770 Meil on põhimõtteliselt eeldada, et see saab olema kas elemendid, 1039 00:58:10,770 --> 00:58:14,970 või ridade või veergude põhimõtteliselt. 1040 00:58:14,970 --> 00:58:18,740 Ja nii ridade ja veergude me saab käsitleda kui sama asi. 1041 00:58:18,740 --> 00:58:23,880 >> Põhimõtteliselt, mida foreach loop läheb mida teha, on see läheb tagasi rida. 1042 00:58:23,880 --> 00:58:28,500 rida saab olema tüüpi järjest samas reas on kahe massiivi. 1043 00:58:28,500 --> 00:58:32,290 Nii et kui sa annad foreach topelt rida, see on 1044 00:58:32,290 --> 00:58:35,830 ei kavatse korrata rohkem kui ühel tasandil sügav. 1045 00:58:35,830 --> 00:58:44,464 Milline on põhimõtteliselt öelda, kas on kaheksa rakkude selles table-- 1,2, 1046 00:58:44,464 --> 00:58:48,110 3 4, 5, 6, 7, 8-- foreach loop ei ole 1047 00:58:48,110 --> 00:58:51,880 lähe läbi kõik need rakud. 1048 00:58:51,880 --> 00:58:56,390 Mida foreach loop teen oli see läheb läbi see järjest 1049 00:58:56,390 --> 00:58:57,870 teile kogu see rida. 1050 00:58:57,870 --> 00:58:59,410 Ja siis lähen läbi, et järjest. 1051 00:58:59,410 --> 00:59:01,850 >> Seega ainult itereerib ühe taseme sügav. 1052 00:59:01,850 --> 00:59:05,310 Kui lisate nested foreach loop, siis 1053 00:59:05,310 --> 00:59:16,280 saab ravida igas reas naasnud rida, sa foreach rida element, 1054 00:59:16,280 --> 00:59:17,640 oletame. 1055 00:59:17,640 --> 00:59:22,750 Ja siis võiks echo element. 1056 00:59:22,750 --> 00:59:24,930 Nii et lühidalt vähe täiendõpet, kuidas 1057 00:59:24,930 --> 00:59:30,220 Te kasutate foreach silmad kontekstis päring. 1058 00:59:30,220 --> 00:59:32,840 >> Kas on mingeid küsimusi PHP? 1059 00:59:32,840 --> 00:59:36,520 Üldse midagi enne, kui me liikuda räägime SQL 1060 00:59:36,520 --> 00:59:37,820 ja nalja andmebaasi? 1061 00:59:37,820 --> 00:59:41,480 1062 00:59:41,480 --> 00:59:42,110 Hästi tundma? 1063 00:59:42,110 --> 00:59:42,750 Hästi tundma. 1064 00:59:42,750 --> 00:59:43,470 Hästi. 1065 00:59:43,470 --> 00:59:49,130 >> Jätkame tagasi PowerPoint, mida te ilmselt ei pane. 1066 00:59:49,130 --> 00:59:51,800 SQL, jess. 1067 00:59:51,800 --> 00:59:57,900 Inimesed, kes on minu osa tavaliselt teavad, et alamrubriikidesse lühendid 1068 00:59:57,900 --> 01:00:01,220 on alati just esimesed sõnad Ma arvan, et selle mängu, et 1069 01:00:01,220 --> 01:00:02,690 algorithm-- et akronüümi. 1070 01:00:02,690 --> 01:00:04,090 See ei ole algoritmi. 1071 01:00:04,090 --> 01:00:08,050 >> Nii SQL on andmebaaside. 1072 01:00:08,050 --> 01:00:11,060 See on keel, mis töötab andmebaasides. 1073 01:00:11,060 --> 01:00:14,440 Ja kõik andmebaasid on on tabelid, vähemalt viis 1074 01:00:14,440 --> 01:00:17,220 et SQL esindab neid. 1075 01:00:17,220 --> 01:00:23,610 >> Teine võimalus mõelda andmebaaside andmebaaside komplekti võtmeid ja väärtusi 1076 01:00:23,610 --> 01:00:24,110 põhimõtteliselt. 1077 01:00:24,110 --> 01:00:29,530 Võite mõelda andmebaasi sõnaraamatu ja ka tabeli. 1078 01:00:29,530 --> 01:00:34,300 Põhimõtteliselt on see nii, et siduda erinevaid andmeid teiste andmetega, 1079 01:00:34,300 --> 01:00:36,270 sageli läbi ridade ja veergude. 1080 01:00:36,270 --> 01:00:38,470 Ja see, kuidas see on SQL toimib paremini. 1081 01:00:38,470 --> 01:00:40,880 >> Nii et see on üks näide tabelis. 1082 01:00:40,880 --> 01:00:44,610 Mul on mõned näited inimesed minu osa, mis 1083 01:00:44,610 --> 01:00:45,970 Mul ei olnud aega, et muuta. 1084 01:00:45,970 --> 01:00:52,020 Aga meil asjad ID, nimi, suurriik, ja kodulinna. 1085 01:00:52,020 --> 01:00:54,100 Ma ei tea, kus keegi on alates minu osa, 1086 01:00:54,100 --> 01:00:56,266 nii et ma lähen lihtsalt eeldada, igaüks on New York 1087 01:00:56,266 --> 01:00:59,370 City sest mul on kõrge statistilise tõenäosus on õige. 1088 01:00:59,370 --> 01:01:04,200 >> SQL võtab automaatselt hoolitsust ID veerus teile. 1089 01:01:04,200 --> 01:01:07,560 Kui sisestate uue rea arvesse SQL andmebaasi, 1090 01:01:07,560 --> 01:01:09,700 see juurdekasvu et ID number ja lihtsalt 1091 01:01:09,700 --> 01:01:14,890 põhimõtteliselt kinni nagu viis nime, suurriik, kodulinna, kes 1092 01:01:14,890 --> 01:01:16,430 koridori lõpus, et tabelis. 1093 01:01:16,430 --> 01:01:19,160 Nii ID on veeru saate kunagi ei pea muretsema. 1094 01:01:19,160 --> 01:01:22,770 Aga, nagu puhul of login.php, kui me 1095 01:01:22,770 --> 01:01:26,610 olid üha sessiooni ID tabelist ja lihtsalt kasutades ID, 1096 01:01:26,610 --> 01:01:30,320 ID on võimalus üheselt tuvastada element andmebaasis. 1097 01:01:30,320 --> 01:01:34,980 >> Nii et kui meil oli kaks Sams, mõlemad mis õpetas CS50 ja nii sellest, kes 1098 01:01:34,980 --> 01:01:39,370 olid Milwaukee, need oleks ikka on erinevad ID numbrid 1099 01:01:39,370 --> 01:01:43,420 ja seega eraldiseisev kontekstis tabelis. 1100 01:01:43,420 --> 01:01:48,700 Nii et see on see, mida SQL tegeleb koos, töötades taga otsas. 1101 01:01:48,700 --> 01:01:54,160 >> Nüüd on need neli käske et peate töötama koos SQL. 1102 01:01:54,160 --> 01:01:56,390 Ja ma viskasin nad kõik ühel slaidil. 1103 01:01:56,390 --> 01:01:59,530 Aga me läheme läbi need kõik eraldi. 1104 01:01:59,530 --> 01:02:03,300 >> Esimene käsk on UPDATE, mis teeb mida võite oodata. 1105 01:02:03,300 --> 01:02:07,240 Ütle, et mõned andmed tabelis, mis on vananenud. 1106 01:02:07,240 --> 01:02:09,470 Nagu kui sa hoida jälgida inimeste nimed 1107 01:02:09,470 --> 01:02:13,350 ja vanuses, kui keegi on vanuse kasvades, siis 1108 01:02:13,350 --> 01:02:18,590 sa lähed tahan minna ja uuendada ainult selle isiku vanusest. 1109 01:02:18,590 --> 01:02:21,902 Näitena, mis töötab meie esimene table-- 1110 01:02:21,902 --> 01:02:24,610 ärge muretsege kirjalikult kõik Nende käskude samal ajal. 1111 01:02:24,610 --> 01:02:27,640 Aga kui sul uuendada alla et saad hea selles osas, 1112 01:02:27,640 --> 01:02:29,790 sest me ei kavatse mine tagasi lauale. 1113 01:02:29,790 --> 01:02:33,920 >> Nii et kui me läheme tagasi laua, oletame midagi, mis juhtus 1114 01:02:33,920 --> 01:02:38,480 oli oli maavärin või vigadeks line, et jagada otse 1115 01:02:38,480 --> 01:02:39,920 läbi New York City. 1116 01:02:39,920 --> 01:02:45,130 Ja me tahtsime uuendada kõik kes elas New York City. 1117 01:02:45,130 --> 01:02:49,670 Nad kõik olid liikuda Pennsylvania. 1118 01:02:49,670 --> 01:02:51,130 See ei ole kodulinnas. 1119 01:02:51,130 --> 01:02:53,180 Nad kõik olid kolida New Haven. 1120 01:02:53,180 --> 01:02:54,030 Seal me läheme. 1121 01:02:54,030 --> 01:02:57,630 Nii et igaüks, New York kolib New Haven. 1122 01:02:57,630 --> 01:03:01,300 >> Ja nii see on midagi, mis on toimetamine kolm rida selles tabelis. 1123 01:03:01,300 --> 01:03:04,716 Aga SQL, mida saate teha et vaid üks avaldusega. 1124 01:03:04,716 --> 01:03:05,715 Nii läheme tagasi uuendada. 1125 01:03:05,715 --> 01:03:09,670 Lubage mul kiire kustutada selle pardal uuesti. 1126 01:03:09,670 --> 01:03:14,570 Kui me räägime uuendamine on 1127 01:03:14,570 --> 01:03:17,640 mõned osad süntaks, mis on olulised. 1128 01:03:17,640 --> 01:03:19,770 Noh, kõik süntaks on võti. 1129 01:03:19,770 --> 01:03:22,210 Aga asjad roheline on vabatahtlik. 1130 01:03:22,210 --> 01:03:25,680 Valge on vaja, nagu eelnevalt nimed. 1131 01:03:25,680 --> 01:03:30,750 Ja helesinine on asju mis sõltuvad tabelis. 1132 01:03:30,750 --> 01:03:34,640 Nii et see, mis toimub koos värvilahendused siin, seal üleval. 1133 01:03:34,640 --> 01:03:40,250 >> Nii et kui me tahame, et uuendada ainult need read inimesed, kes elavad New York, 1134 01:03:40,250 --> 01:03:43,490 nii et mida me teeks, kui me ütlesime UPDATE? 1135 01:03:43,490 --> 01:03:46,320 Nii tabelis on koht, kus me paneme nimi meie lauale. 1136 01:03:46,320 --> 01:03:49,170 Ütleme nii, et nime Meie tabelis on tabelis üks. 1137 01:03:49,170 --> 01:03:52,515 Nii et me tahame uuendada tabelis üks. 1138 01:03:52,515 --> 01:03:57,470 Ja me tahame set-- Mida me tahame seada? 1139 01:03:57,470 --> 01:04:05,160 Noh me tahame öelda, et column-- PHP kohtleb rida unikaalseid identifikaatoreid. 1140 01:04:05,160 --> 01:04:07,930 Ja siis veerud erinevates valdkondades 1141 01:04:07,930 --> 01:04:09,940 neid elemente andmebaasi. 1142 01:04:09,940 --> 01:04:14,210 >> Nii et esimene element Andmebaasi on nimi Sam, suurriik CS50, 1143 01:04:14,210 --> 01:04:16,210 ja kodulinnas Milwaukee. 1144 01:04:16,210 --> 01:04:20,710 Nii et kui me ütlesime määrata, vaatame parameetrid jälle, et komplekti võtab. 1145 01:04:20,710 --> 01:04:23,880 Meil on veerus võrdub väärtusega. 1146 01:04:23,880 --> 01:04:27,290 Nii et me tahame öelda mõned column-- mis mäletan 1147 01:04:27,290 --> 01:04:31,850 on field-- me tahame näha valdkonnas võrdne midagi uut. 1148 01:04:31,850 --> 01:04:42,340 >> Nii et kui me just ütles uuendus Tabelis 1 esitatud nimetus võrdne Elliot. 1149 01:04:42,340 --> 01:04:46,310 Saaksin inimest Uue sektsiooni seda. 1150 01:04:46,310 --> 01:04:51,540 Aga kui me lihtsalt tegime uuendus tabelis 1 määrata nimi võrdne Elliot, mis oleks 1151 01:04:51,540 --> 01:04:55,530 laua nägema pärast seda? 1152 01:04:55,530 --> 01:04:56,410 Inimesed on aimu? 1153 01:04:56,410 --> 01:04:59,710 1154 01:04:59,710 --> 01:05:00,210 Jah. 1155 01:05:00,210 --> 01:05:03,195 >> Sihtrühm: Kõik, et rida muutuks Elliot. 1156 01:05:03,195 --> 01:05:04,570 SPEAKER: Kõik kus järjest? 1157 01:05:04,570 --> 01:05:06,067 Sihtrühm: esimeses reas. 1158 01:05:06,067 --> 01:05:07,150 SPEAKER: esimeses reas? 1159 01:05:07,150 --> 01:05:09,724 Miks esimeses reas? 1160 01:05:09,724 --> 01:05:10,890 Ma ei taha, et valida teile. 1161 01:05:10,890 --> 01:05:13,287 >> Sihtrühm: Võib-olla kõike kogu tabel? 1162 01:05:13,287 --> 01:05:15,120 SPEAKER: Kõigel Kogu tabelit, jah. 1163 01:05:15,120 --> 01:05:19,520 Ja see on täpselt õige because-- ma lihtsalt aidata teil natuke 1164 01:05:19,520 --> 01:05:22,650 there-- sest me jätta vabatahtlik WHERE klauslit. 1165 01:05:22,650 --> 01:05:27,260 Kui sul ei ole WHERE klausel, mida see käsk teha 1166 01:05:27,260 --> 01:05:32,240 on see teen tööd iga üherealised tabelis. 1167 01:05:32,240 --> 01:05:35,430 Igaühe nimi saada Elliott, põhimõtteliselt 1168 01:05:35,430 --> 01:05:37,360 mis Elliot on väga õnnelik. 1169 01:05:37,360 --> 01:05:40,070 Or Yanni, üks kahest. 1170 01:05:40,070 --> 01:05:42,490 Aga kõik uueks nimeks. 1171 01:05:42,490 --> 01:05:47,880 >> Nii, kuidas me kasutame KUS clause-- ja see kehtib kõigi Päritoludokumendi 1172 01:05:47,880 --> 01:05:51,410 mis on kõigis need erinevad asjad. 1173 01:05:51,410 --> 01:05:54,380 Nii märkad, et SET on veerus võrdse väärtusega. 1174 01:05:54,380 --> 01:05:55,190 Ja nii ei kus. 1175 01:05:55,190 --> 01:06:00,040 Aga need on erinevad tüüpi avaldused. 1176 01:06:00,040 --> 01:06:04,400 Nii veerus võrdub väärtus SET on loovutamisega. 1177 01:06:04,400 --> 01:06:08,320 Nagu me ütleme me tahame seada nimi võrdne Elliot. 1178 01:06:08,320 --> 01:06:15,390 Aga KUS sätted, need võrdõiguslikkuse kohta. 1179 01:06:15,390 --> 01:06:20,410 Ütleme, et me ainult tahtis muuta inimese nime, et Elliot 1180 01:06:20,410 --> 01:06:23,940 kui nende nimi oli Ryan, oletame. 1181 01:06:23,940 --> 01:06:24,920 >> Nii et kui me ütleme 1182 01:06:24,920 --> 01:06:32,700 >> KUS nimi võrdub Ryan, et oleks edukalt vaid muutus 1183 01:06:32,700 --> 01:06:37,440 name-- see oleks ainult nime muutmine valdkonnas ridadesse 1184 01:06:37,440 --> 01:06:40,770 kus nimi valdkonnas on võrdne Ryan. 1185 01:06:40,770 --> 01:06:44,430 Nii et kui meil oli mitu inimest nimega Ryan, kes kõik nende nimede 1186 01:06:44,430 --> 01:06:45,730 muudaks Elliot. 1187 01:06:45,730 --> 01:06:48,169 >> See on sarnane näiteks ja kui süü line jagab 1188 01:06:48,169 --> 01:06:50,960 New York City ja igaühel liikuda New Haven, kuidas me suudame 1189 01:06:50,960 --> 01:06:56,570 teha, et ühes hagiavalduses on UPDATE Tabel 1 sätestatud kodulinna = New Haven 1190 01:06:56,570 --> 01:07:00,210 kus kodulinnas võrdub New York City. 1191 01:07:00,210 --> 01:07:03,410 See on võimu UPDATE avaldus. 1192 01:07:03,410 --> 01:07:10,530 Me võime valida suvalise arvu rida läbi tõelise avaldused 1193 01:07:10,530 --> 01:07:12,860 umbes valdkondades nendes ridades. 1194 01:07:12,860 --> 01:07:19,510 Me ei saa öelda, UPDATE Tabel 1 sätestatud name = Elliot KUS rida = 1, 1195 01:07:19,510 --> 01:07:24,820 välja arvatud, et saame, kui me ütleme, ID = 1. 1196 01:07:24,820 --> 01:07:27,350 1197 01:07:27,350 --> 01:07:29,830 >> Nii et me ei kavatse olla töötavad võrdõiguslikkuse 1198 01:07:29,830 --> 01:07:32,830 valdkondades, võrdsus sambad. 1199 01:07:32,830 --> 01:07:38,030 Aga kasutades ID-alal on võimalus valida üksikuid ridu täpsemalt 1200 01:07:38,030 --> 01:07:43,210 sest ID valdkonnas on unikaalne tunnus SQL andmebaasi. 1201 01:07:43,210 --> 01:07:45,860 Nii nagu ajakohastamine reas üks, ID võrdub 1. 1202 01:07:45,860 --> 01:07:49,560 Uuendamine järjest kaks, vaid muuta, et ID number. 1203 01:07:49,560 --> 01:07:51,610 Aga võimu KUS avaldus on, et me 1204 01:07:51,610 --> 01:07:57,480 saate uuendada asju põhjal, mida nende kehtivaid väärtusi teatud asjad on. 1205 01:07:57,480 --> 01:07:58,155 Jah Elliot? 1206 01:07:58,155 --> 01:08:02,678 >> Sihtrühm: Ja mis siis, kui sa tahad mina-- Jällegi, see on teine ​​küsimus. 1207 01:08:02,678 --> 01:08:07,660 Aga minu esimene küsimus oli, kus see nii on? 1208 01:08:07,660 --> 01:08:09,130 Kuhu ma kaasajastamiseks? 1209 01:08:09,130 --> 01:08:11,100 See on PHP kood? 1210 01:08:11,100 --> 01:08:13,379 >> SPEAKER: Kus olete, jah. 1211 01:08:13,379 --> 01:08:15,170 Me läheme rääkida millisest kõik see 1212 01:08:15,170 --> 01:08:18,729 juhtub mingi kord läheme läbi kõik käsud. 1213 01:08:18,729 --> 01:08:21,130 Aga mida sa pead tean nüüd on põhimõtteliselt 1214 01:08:21,130 --> 01:08:26,279 et teie SQL andmebaasi eksisteerib midagi 1215 01:08:26,279 --> 01:08:30,090 tuleb juurde päringu funktsioon, mis CS50 määratleb. 1216 01:08:30,090 --> 01:08:33,800 Nii et kui te kasutate päringu funktsiooni pääsete selles tabelis. 1217 01:08:33,800 --> 01:08:39,529 >> Nii et sa saadab need käske oma tabeli PHP faile 1218 01:08:39,529 --> 01:08:41,420 läbi päringu funktsiooni. 1219 01:08:41,420 --> 01:08:45,410 Võite ka mängida oma laua otse. 1220 01:08:45,410 --> 01:08:49,050 Ja see on parim viis katsetada neid erinevaid käsklusi. 1221 01:08:49,050 --> 01:08:52,720 Ja me läheme läbi, kuidas täpselt seda teha natuke. 1222 01:08:52,720 --> 01:08:54,910 >> Nii et UPDATE käsk. 1223 01:08:54,910 --> 01:08:57,939 Ja ülejäänud käsud saab olema omamoodi sarnased, 1224 01:08:57,939 --> 01:08:59,069 kallal sarnaseid asju. 1225 01:08:59,069 --> 01:09:02,740 INSERT INTO on ilmselt Kõige erineb UPDATE. 1226 01:09:02,740 --> 01:09:06,170 Ma jätan selle sinna üles natuke ja töö siin. 1227 01:09:06,170 --> 01:09:10,215 Nii INSERT INTO, näete et tabelis on ikka sama. 1228 01:09:10,215 --> 01:09:17,010 Tahad INSERT INTO. 1229 01:09:17,010 --> 01:09:20,286 Kapitaliseeritus, SQL on tõstutundetu. 1230 01:09:20,286 --> 01:09:22,160 Nii et sa ei pea ära neid asju. 1231 01:09:22,160 --> 01:09:27,960 Kokkuleppeliselt sõnad valge on kapitaliseeritud. 1232 01:09:27,960 --> 01:09:31,590 Aga ma ka värvikoodiga neid. 1233 01:09:31,590 --> 01:09:34,390 Ainus põhjus, et sa ära neid, kui sa kirjutad neid 1234 01:09:34,390 --> 01:09:36,609 on lihtsalt rõhutada et need on konstandid. 1235 01:09:36,609 --> 01:09:39,189 Ja nii võite vaadata kapitaliseerimine või asjaolu 1236 01:09:39,189 --> 01:09:40,740 et ma olen värviline neid erinevalt. 1237 01:09:40,740 --> 01:09:44,910 >> Nii on meil lisada, teeme Tabel 1 kord. 1238 01:09:44,910 --> 01:09:45,930 See kõik on ühes reas. 1239 01:09:45,930 --> 01:09:48,609 Ma lihtsalt eraldab seda Erinevate avaldused. 1240 01:09:48,609 --> 01:09:52,399 Nii et ärge muretsege, et Tabel 1, teinud peale teine ​​rida. 1241 01:09:52,399 --> 01:09:56,130 >> Nii et me tahame INSERT INTO tabel 1 mõned väärtused. 1242 01:09:56,130 --> 01:09:58,922 Ja märkad vabatahtlik natuke, mis ma saan teise. 1243 01:09:58,922 --> 01:09:59,755 Nii on meil väärtusi. 1244 01:09:59,755 --> 01:10:03,640 1245 01:10:03,640 --> 01:10:08,100 >> Ütleme, et me tahame lisada Andi meie lauale, sest me ei pane Andi. 1246 01:10:08,100 --> 01:10:09,390 Andi on haige. 1247 01:10:09,390 --> 01:10:12,490 Lisame Andi meie lauale. 1248 01:10:12,490 --> 01:10:15,150 Pea meeles, et ID number uuendatakse automaatselt. 1249 01:10:15,150 --> 01:10:17,320 Nii et ainus väljad me vaja muretseda 1250 01:10:17,320 --> 01:10:20,230 on nimi, suurriik, ja kodulinna. 1251 01:10:20,230 --> 01:10:23,660 >> Ja nii, kuidas me seda teeme, Vaadates meie süntaks, on me oleme 1252 01:10:23,660 --> 01:10:28,780 just sulgudes komadega eraldatud väärtused, millest igaüks 1253 01:10:28,780 --> 01:10:29,890 on väärtus. 1254 01:10:29,890 --> 01:10:35,530 Nii et kui me tahame, et sisestada Andi meie tabelis, kõik me peame tegema, on õigus Andi. 1255 01:10:35,530 --> 01:10:38,630 Mis Andi on suurriik, inimesed Andi sektsiooni? 1256 01:10:38,630 --> 01:10:45,406 1257 01:10:45,406 --> 01:10:47,545 Ta meeldib lennu või meeldib kiirus, või midagi. 1258 01:10:47,545 --> 01:10:48,920 Mida me juba seal? 1259 01:10:48,920 --> 01:10:53,425 Meil on CS50, lennu, kiiruse ja tugevuse. 1260 01:10:53,425 --> 01:10:54,850 >> Sihtrühm: Ajarännak. 1261 01:10:54,850 --> 01:10:56,180 >> SPEAKER: Time travel, hämmastav. 1262 01:10:56,180 --> 01:11:04,280 Nii on meil Andi aeg reisimine ja oma kodulinna. 1263 01:11:04,280 --> 01:11:05,530 See on tõesti hea küsimus. 1264 01:11:05,530 --> 01:11:09,210 New York City, kui keegi teab. 1265 01:11:09,210 --> 01:11:13,600 Igaüks on New York on õppetund ära võtta täna. 1266 01:11:13,600 --> 01:11:17,710 >> Nii et see väide oleks sisestada, kui viiendas reas, 1267 01:11:17,710 --> 01:11:21,900 koos suurriik ajal reisida ja kodulinnas New York City. 1268 01:11:21,900 --> 01:11:25,660 Aga vabatahtlik valdkonnas on põhimõtteliselt viis 1269 01:11:25,660 --> 01:11:30,090 et täpsustada, millist sambad soovid lisada asju. 1270 01:11:30,090 --> 01:11:33,710 >> Nii, et me teeme seda nüüd, Andi, ajas rännata, New York City, 1271 01:11:33,710 --> 01:11:38,150 läheb täpselt, et meie table-- nimi, suurriik, kodulinnas. 1272 01:11:38,150 --> 01:11:42,290 Ja kui sa tahad teha midagi peale selle, 1273 01:11:42,290 --> 01:11:44,970 nagu öelda sa ei tea kellegi suurriik, 1274 01:11:44,970 --> 01:11:47,660 nagu, kuidas ma ei tea, Andi poolt suurriik alguses. 1275 01:11:47,660 --> 01:11:50,450 Nii ma teadsin, oli tema nimi ja oma kodulinna. 1276 01:11:50,450 --> 01:11:54,550 Mida ma võiksin teha, on suutsin do-- ma kustutada selle kiire. 1277 01:11:54,550 --> 01:11:57,910 1278 01:11:57,910 --> 01:12:00,090 >> Ma tahan ainult värskendada sambad. 1279 01:12:00,090 --> 01:12:04,100 Ja see on koht, kus vabatahtlikud tulbas hakkavad. 1280 01:12:04,100 --> 01:12:09,185 Ma tahan ainult uuendada nimi ja kodulinn. 1281 01:12:09,185 --> 01:12:12,650 1282 01:12:12,650 --> 01:12:16,480 Ja siis ma ütlen väärtusi. 1283 01:12:16,480 --> 01:12:24,430 Ma teen Andi ja New York City. 1284 01:12:24,430 --> 01:12:28,980 >> Kui ma oli jätnud nimekirja sambad ja lihtsalt teha need kaks asja, 1285 01:12:28,980 --> 01:12:32,450 kus oleks New York City on läinud? 1286 01:12:32,450 --> 01:12:35,900 Milline veerus oleks New York City on paigutatud? 1287 01:12:35,900 --> 01:12:38,950 Inimesed on aimu? 1288 01:12:38,950 --> 01:12:40,160 Suurriik, täpselt. 1289 01:12:40,160 --> 01:12:41,890 >> Nii see lihtsalt minema järjekorras. 1290 01:12:41,890 --> 01:12:45,530 Ja kui see jõuab lõpuks nimekirja, siis see lihtsalt lõpetada täites asju. 1291 01:12:45,530 --> 01:12:49,080 Ja väärtuste et jään ka kõik veerud oleks lihtsalt NULL. 1292 01:12:49,080 --> 01:12:51,840 Nii, sest me täpsustada nimi ja kodulinn, 1293 01:12:51,840 --> 01:12:56,110 me lähed on ID 5, nimi Andi, suurriik NULL. 1294 01:12:56,110 --> 01:12:58,750 Nii suurriik on deinitsialiseerimine väärtus. 1295 01:12:58,750 --> 01:13:01,340 Sa ei pruugi saada Sama Valgrindi vigu, kui sa püüad 1296 01:13:01,340 --> 01:13:01,970 ja seda kasutada. 1297 01:13:01,970 --> 01:13:05,160 Kõik saab kenasti nullitakse välja, sest NULL on väärtus SQL. 1298 01:13:05,160 --> 01:13:06,780 See on konstant. 1299 01:13:06,780 --> 01:13:08,980 Ja siis kodulinnas on New York City. 1300 01:13:08,980 --> 01:13:11,860 Nii see on lisada käsk. 1301 01:13:11,860 --> 01:13:13,610 Enne astume, ei veel kaks käske. 1302 01:13:13,610 --> 01:13:19,060 Kas inimesed on küsimusi UPDATE umbes lisada, SQL 1303 01:13:19,060 --> 01:13:21,556 üldiselt enne Astume peale meie lõplik bitti? 1304 01:13:21,556 --> 01:13:25,500 1305 01:13:25,500 --> 01:13:26,910 Inimesed tunnevad hea, väga. 1306 01:13:26,910 --> 01:13:27,410 Armastan seda. 1307 01:13:27,410 --> 01:13:29,480 Nii räägime SELECT. 1308 01:13:29,480 --> 01:13:33,445 Minnes kraavi UPDATE siin. 1309 01:13:33,445 --> 01:13:35,720 >> Ja valige saab olema väga sarnased. 1310 01:13:35,720 --> 01:13:38,790 Eesmärk SELECT, VALI oma elule mõtte 1311 01:13:38,790 --> 01:13:45,910 on teile kamp sambad mis vastavad teatud tingimustele. 1312 01:13:45,910 --> 01:13:48,230 Ja kui ma ütlen rahuldada Teatud tingimustel 1313 01:13:48,230 --> 01:13:50,800 meelt pruugi kohe tagasi minna, et WHERE klauslit 1314 01:13:50,800 --> 01:13:52,090 mis tulid UPDATE. 1315 01:13:52,090 --> 01:13:54,880 Ja see klausel täpselt seal SELECT. 1316 01:13:54,880 --> 01:14:06,020 >> Kui me ei pane KUS § ja ütleme SELECT nimi, 1317 01:14:06,020 --> 01:14:16,490 kodulinna kirjutatud, et vähe wrong-- nimi, kodulinna alates Tabel 1. 1318 01:14:16,490 --> 01:14:19,690 Kui me lihtsalt öelda, et mida VALI läheb meile on see 1319 01:14:19,690 --> 01:14:23,730 annan meile double-- tabeli, pigem. 1320 01:14:23,730 --> 01:14:27,450 Topelt massiivi kui me oleme mõtled PHP meeli. 1321 01:14:27,450 --> 01:14:33,239 Aga see on lihtsalt läheb meile topelt rida kaks columns-- nimi, 1322 01:14:33,239 --> 01:14:33,780 ja kodulinna. 1323 01:14:33,780 --> 01:14:36,400 1324 01:14:36,400 --> 01:14:38,130 Ja see ignoreerib ID. 1325 01:14:38,130 --> 01:14:41,310 Ja see ignoreerib suurriik. 1326 01:14:41,310 --> 01:14:44,696 Ja see lihtsalt annab meile iga üherealised kõnealuse tabeli. 1327 01:14:44,696 --> 01:14:46,570 Nii et kui me lihtsalt lisada Andi, me peame Andi. 1328 01:14:46,570 --> 01:14:48,605 Ja me peame originaal neli. 1329 01:14:48,605 --> 01:14:53,720 Kui nad on uuendatud, mis kajastuma, jne, jne. 1330 01:14:53,720 --> 01:14:56,520 >> Nii see on, sest me ei kasuta WHERE klauslit. 1331 01:14:56,520 --> 01:14:59,200 Aga me saame seda kasutada täpselt Samamoodi me kasutasime seda UPDATE. 1332 01:14:59,200 --> 01:15:05,310 Kui me tahame ainult tabeli nimed ja suurriikide elavate inimeste 1333 01:15:05,310 --> 01:15:13,430 New York, saame täita avaldus nagu SELECT nimi, superpower-- 1334 01:15:13,430 --> 01:15:27,190 Ma lihtsalt lahkuda selle-- FROM Tabel 1, kus kodulinna = New York City. 1335 01:15:27,190 --> 01:15:33,370 >> Nii et see näitab, et saate saada täiesti erinevad sambad, 1336 01:15:33,370 --> 01:15:36,920 ja siis pane sambad et sa ei ole isegi saada tagasi WHERE klauslit. 1337 01:15:36,920 --> 01:15:39,200 Me isegi ei taha kodulinnas kõigile. 1338 01:15:39,200 --> 01:15:41,920 Aga me tahame nime ja suurriik inimesed 1339 01:15:41,920 --> 01:15:43,817 kelle kodulinn on New York City. 1340 01:15:43,817 --> 01:15:45,650 Nii et me saab teha WHERE 1341 01:15:45,650 --> 01:15:49,112 klausel saame tegeleda sambad et me ei pruugi taha tagasi. 1342 01:15:49,112 --> 01:15:52,320 Samamoodi uuenduse, saame tegeleda sammastega, et me ei pea tingimata 1343 01:15:52,320 --> 01:15:53,270 soovite värskendada. 1344 01:15:53,270 --> 01:15:58,890 Me saame uuendada linna igaühele kelle nime on Sam, näiteks. 1345 01:15:58,890 --> 01:16:02,080 Me saame uuendada linna Igaühel, kelle ID number on 2. 1346 01:16:02,080 --> 01:16:04,960 Nii lihtsalt uuendada linna teises reas 1347 01:16:04,960 --> 01:16:08,220 kus me ei pea tegelema vaja ühist küsimus. 1348 01:16:08,220 --> 01:16:13,264 >> Ja kustutada on, kui soovite eeldada, kustutada Tabel 1. 1349 01:16:13,264 --> 01:16:14,930 Ja siis on meil veel üks WHERE klauslit. 1350 01:16:14,930 --> 01:16:17,940 Nii võime öelda, kus id = 1. 1351 01:16:17,940 --> 01:16:18,950 Kustuta esimeses reas. 1352 01:16:18,950 --> 01:16:23,240 Ja kustutada alati kustutada järjest või siis kustutada ridade arv. 1353 01:16:23,240 --> 01:16:26,990 Kustutada laua taga, kus kodulinna = New York City 1354 01:16:26,990 --> 01:16:28,740 kustutada kõik New York City. 1355 01:16:28,740 --> 01:16:30,985 See on siis, kui oli ootamatu traagilise katk 1356 01:16:30,985 --> 01:16:33,360 ja sa lihtsalt tahtsin, et eemaldada kõik lauast, kes 1357 01:16:33,360 --> 01:16:35,760 elas teatud linna mis tabas katk. 1358 01:16:35,760 --> 01:16:38,050 Võib nad rahus puhata. 1359 01:16:38,050 --> 01:16:43,849 >> Need on neli SQL käsud et sa pead kasutama. 1360 01:16:43,849 --> 01:16:45,390 Sa ei pruugi isegi vaja kasutada neid kõiki. 1361 01:16:45,390 --> 01:16:47,690 Kuid need on nelja et CS50 ootab teid 1362 01:16:47,690 --> 01:16:53,630 olla rahul laskumist nii viktoriini 1 ja ka pset7 ja pset8. 1363 01:16:53,630 --> 01:16:55,820 >> Seal on lihtsalt, et laua uuesti. 1364 01:16:55,820 --> 01:16:58,930 Selle üks, Roy suurriik on uuendati laserkiirte, mis 1365 01:16:58,930 --> 01:17:00,880 on näide ma ei kasuta. 1366 01:17:00,880 --> 01:17:05,480 Ma ei tea, millest üks Roy eelistab, kuid jõudu. 1367 01:17:05,480 --> 01:17:07,670 Roy on suurriik tugevust. 1368 01:17:07,670 --> 01:17:09,090 Katherine ei tee seda täna. 1369 01:17:09,090 --> 01:17:10,260 See on kahetsusväärne. 1370 01:17:10,260 --> 01:17:11,260 Aga ta on super kiirus. 1371 01:17:11,260 --> 01:17:13,780 1372 01:17:13,780 --> 01:17:14,670 >> Noh, et oli PHP. 1373 01:17:14,670 --> 01:17:19,410 Enne kui me räägime MVC, ei kellelgi on küsimusi PHP? 1374 01:17:19,410 --> 01:17:23,864 Nüüd SQL või PHP kui sa äkki on tulla küsimus PHP? 1375 01:17:23,864 --> 01:17:27,560 1376 01:17:27,560 --> 01:17:28,460 Hea. 1377 01:17:28,460 --> 01:17:29,920 Hea küll, me kõik seatud siis. 1378 01:17:29,920 --> 01:17:33,660 >> Nii räägib natuke umbes mudel seisukohta kontrollerid 1379 01:17:33,660 --> 01:17:38,770 lähme tagasi mõned selle kraami pset7. 1380 01:17:38,770 --> 01:17:42,470 Mis mudel seisukohta controller on-- ma ei ole 1381 01:17:42,470 --> 01:17:45,660 päästa oma muudatused sisse logima sest ma täiesti tappis ta. 1382 01:17:45,660 --> 01:17:49,220 Aga põhimõtteliselt on meil kaks Eraldi asju juhtub. 1383 01:17:49,220 --> 01:17:52,390 Meil on avaliku kataloog, mis sisaldab 1384 01:17:52,390 --> 01:17:56,460 kood, mis läheb täide ja veebilehti, mis on külastanud. 1385 01:17:56,460 --> 01:17:58,780 Ja meil on ka see vaade kataloogi. 1386 01:17:58,780 --> 01:18:01,780 Ja vaated sisaldab malle. 1387 01:18:01,780 --> 01:18:04,390 >> See on see, mida funktsioon render-- nägime muuta 1388 01:18:04,390 --> 01:18:08,240 funktsiooni kamp PHP koodi et CS50 on juba kirjutatud teile, 1389 01:18:08,240 --> 01:18:10,550 mis võtab teatud parameetreid. 1390 01:18:10,550 --> 01:18:14,510 Mida see kood teeb on see laskumist seisukohti, 1391 01:18:14,510 --> 01:18:18,000 mis on komplekti nagu prewritten HTML-koodi 1392 01:18:18,000 --> 01:18:20,720 ja see sisestamist väärtused arvesse teatud kohtades. 1393 01:18:20,720 --> 01:18:23,990 See, kuidas, kui sa minema CS50 Finance, 1394 01:18:23,990 --> 01:18:25,760 Samal päise kaudu on igal leheküljel. 1395 01:18:25,760 --> 01:18:28,130 Sama jalus on igal leheküljel. 1396 01:18:28,130 --> 01:18:31,880 Seda seetõttu, et viis et muuta tööd on siis see 1397 01:18:31,880 --> 01:18:36,720 automaatselt plaaster, mis päise kaudu ja vaataja, mis leiad seisukohti. 1398 01:18:36,720 --> 01:18:41,400 >> Me tegelikult ei lähe päise kaudu, ja otsida, see on HTML faili pea. 1399 01:18:41,400 --> 01:18:43,280 See ju mõned stylesheets. 1400 01:18:43,280 --> 01:18:48,450 Sa ei pea vaatama CSS jaoks pset7 kui sa ei taha. 1401 01:18:48,450 --> 01:18:50,560 Aga sa võid muuta neid, kui soovite, et 1402 01:18:50,560 --> 01:18:53,470 Sinu Finance pisut erineda. 1403 01:18:53,470 --> 01:18:57,560 >> See ju mõned PHP header natuke näha 1404 01:18:57,560 --> 01:19:01,240 kui seal on erinev pealkiri siis tuleks selles päise kaudu. 1405 01:19:01,240 --> 01:19:04,300 Aga mõned muud skriptid, ja linke ja muid asju. 1406 01:19:04,300 --> 01:19:08,700 Head lõpeb, keha hakkab, ja oih, meil on see imelik väike ots natuke. 1407 01:19:08,700 --> 01:19:14,730 Ja seal on div, nagu vormitu mingi element 1408 01:19:14,730 --> 01:19:17,120 mis on idee keskel. 1409 01:19:17,120 --> 01:19:22,450 >> Ja siis, kui me näeme jalus, meil lõpuks div. 1410 01:19:22,450 --> 01:19:25,000 Meil on põhjas, mis on kus jalus tekst on. 1411 01:19:25,000 --> 01:19:26,770 End of div lõpp keha, lõpuks HTML. 1412 01:19:26,770 --> 01:19:29,070 >> Mis muudab on tehes on muuta on omamoodi 1413 01:19:29,070 --> 01:19:33,150 siluda päise kaudu, et erinevat PHP faili 1414 01:19:33,150 --> 01:19:37,110 sisaldab tegelik asjad, mis Näete, nagu oma laua varude 1415 01:19:37,110 --> 01:19:39,690 kui ostad või müüsid aktsiaid. 1416 01:19:39,690 --> 01:19:41,480 Ja siis lisame jalus. 1417 01:19:41,480 --> 01:19:44,890 Ja mudeli vaade controller mõte on see, et me 1418 01:19:44,890 --> 01:19:49,590 soovite eraldi, kuidas asju vaatavad koodi. 1419 01:19:49,590 --> 01:19:53,420 See tahame eraldi frontend ja backend, kus esinda 1420 01:19:53,420 --> 01:20:00,440 värk, et kasutaja näeb, kena visuals-- HTML, CSS, asju, 1421 01:20:00,440 --> 01:20:02,320 pilte, jne. 1422 01:20:02,320 --> 01:20:05,780 Ja backend on PHP. 1423 01:20:05,780 --> 01:20:07,710 See on kirjutatud koodi. 1424 01:20:07,710 --> 01:20:10,240 See on koht, kus kood, mis on teeb tegelikku tegevust. 1425 01:20:10,240 --> 01:20:12,400 See on siis, kui olete lisatud varu oma laua, 1426 01:20:12,400 --> 01:20:14,890 kui sa osta ja müük, mis on backend. 1427 01:20:14,890 --> 01:20:20,210 >> Ja me saame, kui nägid, sealhulgas PHP otse HTML. 1428 01:20:20,210 --> 01:20:23,210 Nii et me oleks võinud teha Selle ülesande on lihtsalt pidin 1429 01:20:23,210 --> 01:20:26,200 HTML-faili iga lehekülje, nagu login. 1430 01:20:26,200 --> 01:20:30,260 Ja siis sellel lehel, lihtsalt oli suur blokk PHP koodi, 1431 01:20:30,260 --> 01:20:33,822 sealhulgas kõik koodi Sellel lehel just oleks vaja. 1432 01:20:33,822 --> 01:20:35,780 Ja siis me võiksime olla teha, et portfelli. 1433 01:20:35,780 --> 01:20:40,250 Me oleks võinud teha kõik osta ja müüvad jooksul üksikuid lehti. 1434 01:20:40,250 --> 01:20:43,680 >> Aga sellepärast, et me muutes eraldi, kus 1435 01:20:43,680 --> 01:20:46,660 me kirjalikult backend kood, saame kergesti 1436 01:20:46,660 --> 01:20:52,660 muuta, kuidas asju vaatama ilma muutuvad iga faili. 1437 01:20:52,660 --> 01:20:55,460 Teeme asjad lihtsalt lisada uus div alt 1438 01:20:55,460 --> 01:21:00,720 of-- Tere ma muuta jalus. 1439 01:21:00,720 --> 01:21:03,710 Sa võid teha midagi sellist. 1440 01:21:03,710 --> 01:21:07,250 Aga ka, saab muuta kogu visuaalne kujundus 1441 01:21:07,250 --> 01:21:09,290 mõjutamata, mis on läheb backend. 1442 01:21:09,290 --> 01:21:12,000 Ja saate muuta kogu backend ja veel 1443 01:21:12,000 --> 01:21:13,900 on see välja täpselt nagu see oli enne. 1444 01:21:13,900 --> 01:21:14,400 See 1445 01:21:14,400 --> 01:21:16,170 >> Kas idee mudeli vaade kontroller. 1446 01:21:16,170 --> 01:21:19,992 Ja see on tegelikult kehtestatud paradigma mõned programmeerimiskeeled 1447 01:21:19,992 --> 01:21:21,700 võiksite kasutada Lõpliku projektid. 1448 01:21:21,700 --> 01:21:25,100 Kui sul iOS arengut, neil on seisukohti, 1449 01:21:25,100 --> 01:21:29,120 mis on see, mida sa näed iPhone, ja siis taustaprogramm nagu näiteks eraldi asi. 1450 01:21:29,120 --> 01:21:31,260 >> Võite mõelda natuke. 1451 01:21:31,260 --> 01:21:35,190 Seal on palju kahendfailid sisse arvutiteadus, mis on naljakas, 1452 01:21:35,190 --> 01:21:37,270 sest kõik on binaarne. 1453 01:21:37,270 --> 01:21:38,550 Ma ei plaaninud seda. 1454 01:21:38,550 --> 01:21:41,590 See oli pun tahtmatu. 1455 01:21:41,590 --> 01:21:43,860 Jah, pun ole ette nähtud. 1456 01:21:43,860 --> 01:21:49,070 >> Aga nagu .h failid ja .c faili, seal on palju eraldav asju, mida me 1457 01:21:49,070 --> 01:21:49,900 ei pruugi vaja. 1458 01:21:49,900 --> 01:21:54,330 Nii saame lihtsalt muuta h failid või keegi saab lihtsalt näha .h faili ja tean 1459 01:21:54,330 --> 01:21:57,650 täpselt funktsioone, mis on ka .c faili ilma et teades 1460 01:21:57,650 --> 01:21:58,870 nende rakendamist. 1461 01:21:58,870 --> 01:22:02,800 See idee komponentide eraldamine mis sõltuvad teineteisest 1462 01:22:02,800 --> 01:22:06,990 kuid saab omamoodi juurdepääsu üksteise erinevate kanalite kaudu, möödaminnes 1463 01:22:06,990 --> 01:22:09,310 muutujaid, lihtsalt lisada avaldused asjad 1464 01:22:09,310 --> 01:22:14,440 niimoodi, et see põhimõte aitab luua rakendusi 1465 01:22:14,440 --> 01:22:17,080 mis võivad olla kergemini toimetanud mitu inimest, 1466 01:22:17,080 --> 01:22:20,440 saab kergemini muutunud või muutmine suur ulatus, 1467 01:22:20,440 --> 01:22:24,880 ja neid on lihtsam siluda ka palju võimalusi. 1468 01:22:24,880 --> 01:22:28,254 >> Tõesti kiire, ma pean mõned näpunäited pset7, 1469 01:22:28,254 --> 01:22:31,420 mis ma teen täisekraanil, et sa ei lihtsalt vaadata the-- tip tip Tippee. 1470 01:22:31,420 --> 01:22:33,964 1471 01:22:33,964 --> 01:22:35,130 Seal ei ole nii palju näpunäiteid. 1472 01:22:35,130 --> 01:22:38,060 >> Aga ma mainisin PHP on raske siluda. 1473 01:22:38,060 --> 01:22:39,290 Kahese seda kontrollida. 1474 01:22:39,290 --> 01:22:41,550 Kui koodi pole lihtsalt ilmumise lehel 1475 01:22:41,550 --> 01:22:46,240 see on ilmselt PHP viga, vabandust. 1476 01:22:46,240 --> 01:22:48,570 >> Sa ei pea kunagi vaadata CSS, kui sa ei taha. 1477 01:22:48,570 --> 01:22:52,150 Aga kui sa oled valmis, see võib olla toreda nalja asi lihtsalt minema 1478 01:22:52,150 --> 01:22:54,770 ja jama CSS parameetrid. 1479 01:22:54,770 --> 01:22:58,700 CSS ja HTML on näide mudel Arvestades kontroller stiilis asi ka, eks? 1480 01:22:58,700 --> 01:23:02,150 Sa oleks võinud stiilis sildid sees HTML elemente. 1481 01:23:02,150 --> 01:23:04,800 Aga kui sa omamoodi allhanke neid CSS, 1482 01:23:04,800 --> 01:23:08,180 nad kergemaks muuta, ja mängida ringi ja nautige. 1483 01:23:08,180 --> 01:23:10,816 >> Ravida CS50 abimees toimib mustad kastid. 1484 01:23:10,816 --> 01:23:12,940 Sa ei pea teadma täpselt krohvikihid teeb, 1485 01:23:12,940 --> 01:23:16,770 kuid usun, et see alati õigus asi sõltuvalt sellest, mida sa andke seda, 1486 01:23:16,770 --> 01:23:17,690 asjad niimoodi. 1487 01:23:17,690 --> 01:23:21,040 Ja ma soovitaks vaadates Davidi ülevaadet, 1488 01:23:21,040 --> 01:23:24,490 läbimas kõiki kraami, mitte ainult kõike, 1489 01:23:24,490 --> 01:23:26,960 kuid tõesti ravib Nende mustade kastide. 1490 01:23:26,960 --> 01:23:29,280 Ei lähe need funktsioonid otsin vigu. 1491 01:23:29,280 --> 01:23:33,510 >> Ja teretulnud tagasipöördumine Meie overlord Zamyla. 1492 01:23:33,510 --> 01:23:34,010 Hea. 1493 01:23:34,010 --> 01:23:40,430 >> Kas on olemas lõplikud küsimused enne me mingi põrge päev? 1494 01:23:40,430 --> 01:23:42,610 Kas ma olen ikka elus? 1495 01:23:42,610 --> 01:23:44,700 Hea. 1496 01:23:44,700 --> 01:23:47,120 Hi livestream inimesi. 1497 01:23:47,120 --> 01:23:47,620 Hea. 1498 01:23:47,620 --> 01:23:50,260 Kas on enam küsimusi? 1499 01:23:50,260 --> 01:23:50,760 No? 1500 01:23:50,760 --> 01:23:52,884 >> Ja siis ma arvan, et me oleme hea minna täna. 1501 01:23:52,884 --> 01:23:55,550 Ma jään umbes natuke hiljem, kui inimesed olid küsimused 1502 01:23:55,550 --> 01:23:57,480 nad kartsid küsida oja. 1503 01:23:57,480 --> 01:23:59,790 Aga muidu on hea päev. 1504 01:23:59,790 --> 01:24:01,933