1 00:00:00,000 --> 00:00:03,000 [Powered by Google Translate] [Kiirtutvustus Ülesanded 7] 2 00:00:03,000 --> 00:00:04,400 [Zamyla Chan] [Harvardi Ülikool] 3 00:00:04,400 --> 00:00:07,640 [See on CS50] [CS50.TV] 4 00:00:07,640 --> 00:00:12,090 >> Tere kõigile ja tere tulemast kiirtutvustus 7 CS50 rahandusministeerium. 5 00:00:12,090 --> 00:00:15,090 Nüüd on ametlikult teinud kõik psets sisse CS50, 6 00:00:15,090 --> 00:00:19,380 ja me lihtsalt jäänud veel üks, mis saab olema lõbus rakendamine 7 00:00:19,380 --> 00:00:23,770 veebileht, kus kasutajad saavad sisse logida CS50 rahandus 8 00:00:23,770 --> 00:00:25,830 ja osta ja müüa varud. 9 00:00:25,830 --> 00:00:32,280 >> Täna me ei kavatse on mõned meie käsutuses olevaid vahendeid. 10 00:00:32,280 --> 00:00:34,320 Me läheme räägime õigused. 11 00:00:34,320 --> 00:00:36,380 Kui teil on web kausta 12 00:00:36,380 --> 00:00:40,800 sa lähed tahan, et kasutajad saaksid täita teatud failid 13 00:00:40,800 --> 00:00:42,500 aga ka lihtsalt lugeda teiste ones, 14 00:00:42,500 --> 00:00:45,150 nii me uurime õigused ja kuidas saab määrata need. 15 00:00:45,150 --> 00:00:49,630 Siis me ei kavatse uurida PHP, HTML ja SQL koodi. 16 00:00:49,630 --> 00:00:51,990 >> Esiteks õigused. 17 00:00:51,990 --> 00:00:56,060 Kui oled terminali teatud kataloogid, 18 00:00:56,060 --> 00:01:00,430 siis mida sa teha tahad on, mida soovite käivitada chmod käsk. 19 00:01:00,430 --> 00:01:03,750 See on järgneb kas tähed või numbrid 20 00:01:03,750 --> 00:01:08,100 vastab mida sa põhimõtteliselt tahad maailma näha, 21 00:01:08,100 --> 00:01:09,830 sa ise näha jne 22 00:01:09,830 --> 00:01:13,350 Näiteks kui teil on kataloogi, 23 00:01:13,350 --> 00:01:15,560 siis sa tahad selle kausta tuleb käivitatava igaüks, et seda näeb, 24 00:01:15,560 --> 00:01:19,500 nii et mida sa teeksid on siis võiks käivitada käsk chmod a + x 25 00:01:19,500 --> 00:01:21,050 ja siis nime oma kausta. 26 00:01:21,050 --> 00:01:28,110 Kui teil on faili nagu CSS faili või pildifailid - 27 00:01:28,110 --> 00:01:33,060 nagu JPEG ja rasterpildid, asju või mis tahes JavaScripti koodi - 28 00:01:33,060 --> 00:01:36,440 soovite, et oleks loetav kõigile, 29 00:01:36,440 --> 00:01:39,880 nii siis mida te teete on võid kasutada metamärke - 30 00:01:39,880 --> 00:01:41,650 mis on tärniga - 31 00:01:41,650 --> 00:01:46,190 et põhimõtteliselt näitama CSS kausta - kõik selles kaustas - 32 00:01:46,190 --> 00:01:48,740  Ma ütlen, et see saab olema loetavad igaühele. 33 00:01:48,740 --> 00:01:54,220 Mis õigused, kui me kasutame tähed, 34 00:01:54,220 --> 00:01:57,610 me saame kasutada ka numbrite asemel. 35 00:01:57,610 --> 00:02:00,900 Nii et, näete, et lõppkokkuvõttes, kui sa tahad midagi olema käivitatav - 36 00:02:00,900 --> 00:02:02,810 mis on esindatud mitmeid 1 - 37 00:02:02,810 --> 00:02:08,340 midagi oleks loetav on number 4 ja siis - 38 00:02:08,340 --> 00:02:10,590 kirjutatav on number 2 - 39 00:02:10,590 --> 00:02:13,670 ja nii sisuliselt kui soovite kombinatsioon neist, siis lisage need. 40 00:02:13,670 --> 00:02:15,860 Kui sa tahad midagi olema loetav, kirjutatav ja käivitatav, 41 00:02:15,860 --> 00:02:21,970 siis oleks liita 4, 2 ja 1 ja et annaks sulle 7, 42 00:02:21,970 --> 00:02:26,230 siis kui sul on kaust, kuhu soovite, et olla käivitatav igaüks - 43 00:02:26,230 --> 00:02:31,380 samuti loetav ja kirjutatav - siis teete, et 7, 1, 1. 44 00:02:31,380 --> 00:02:38,140 See oleks 7 sina, siis 1 teiste inimestega. 45 00:02:38,140 --> 00:02:42,870 Kui teil on spec, siis see tegelikult määrata, millised kaustad ja mis failid 46 00:02:42,870 --> 00:02:45,040 tuleb chmod-ed konkreetselt. 47 00:02:45,040 --> 00:02:47,920 Näiteks, kui teil on kaustad - need on 7-1-1 - 48 00:02:47,920 --> 00:02:52,690 kui sul on pilte või HTML, CSS, JavaScript, 49 00:02:52,690 --> 00:02:55,870 siis need hakkavad olema 6, 0, 4 - või 6, 4, 4 - 50 00:02:55,870 --> 00:03:00,030 ja siis PHP faile saab olema 6, 0, 0. 51 00:03:00,030 --> 00:03:04,940 Idee, et on see, et kasutajad ei peaks tegelikult näha oma PHP koodi, 52 00:03:04,940 --> 00:03:08,370 aga lihtsalt võimalik näha väljund. 53 00:03:08,370 --> 00:03:11,030 >> Suurepärane! Liikumine PHP. 54 00:03:11,030 --> 00:03:18,850 Lihtsalt, kui sa tahad PHP fail, faili lõpp on. Php. 55 00:03:18,850 --> 00:03:22,000 Võite segada HTML PHP koodi. 56 00:03:22,000 --> 00:03:24,880 Kui teil on HTML faili, näiteks 57 00:03:24,880 --> 00:03:32,520 siis saate pange see oma vasaku nurga, küsimärk, php - 58 00:03:32,520 --> 00:03:39,320 pane oma php koodi - ja sulgege see teise küsimärk ja õige nurga all. 59 00:03:39,320 --> 00:03:45,020 Muutujad PHP on palju lihtsam toime tulla kui muutujate C. 60 00:03:45,020 --> 00:03:50,310 Iga muutuja lihtsalt algab dollari märk selle ees, ja nad nõrgalt kirjutatud. 61 00:03:50,310 --> 00:03:53,470 See tähendab, et sa ei pea muretsema, milles midagi 62 00:03:53,470 --> 00:03:55,020 võrdne jada või täisarv. 63 00:03:55,020 --> 00:03:57,710 Sa võid lihtsalt öelda, see on minu nimi muutuja 64 00:03:57,710 --> 00:04:00,390 ja siis see on tema väärtus, 65 00:04:00,390 --> 00:04:03,280 nii et see saab olema lihtsam asju ajada seal. 66 00:04:03,280 --> 00:04:08,220 >> Teine asi on see, et PHP võimaldab teil kasutada assotsiatiivne massiiv. 67 00:04:08,220 --> 00:04:11,330 Sa võid lihtsalt määratleda massiivi nagu sa oleks C 68 00:04:11,330 --> 00:04:14,900 öeldes, dollari märk-nime oma massiivi-võrdne, 69 00:04:14,900 --> 00:04:22,600 ja siis nurksulgudes on põhiliselt just väärtuste nimekirja kõikide massiivi elementide. 70 00:04:22,600 --> 00:04:27,160 Kuid PHP mida saab ka teha, on määrata põhimõtteliselt - 71 00:04:27,160 --> 00:04:31,050 see on selline nagu räsifunktsiooniga. 72 00:04:31,050 --> 00:04:34,410 Saate määrata indeks - mida sa lähed seda nimetada - 73 00:04:34,410 --> 00:04:37,030 ja siis, mis vastab väärtusele. 74 00:04:37,030 --> 00:04:42,880 Kui te tegelikult läbida = 1, b = 2, c = 3, 75 00:04:42,880 --> 00:04:50,820 siis oma reaga indeks annaks sulle 1. 76 00:04:50,820 --> 00:04:56,600 See pset soe teil välja mõned PHP osa küsimusi, 77 00:04:56,600 --> 00:04:59,240 ja siis me sukelduda CS50 rahandusministeerium. 78 00:04:59,240 --> 00:05:02,650 >> Meil on paar - meil on mõned funktsioonid, põhimõtteliselt 79 00:05:02,650 --> 00:05:05,130 rakendama sellel veebilehel. 80 00:05:05,130 --> 00:05:10,440 Me tahame, et kasutajad saaksid registreeruda meie kodulehel kasutajanimi ja parool. 81 00:05:10,440 --> 00:05:13,670 Me tahame, et nad saaksid otsida tsiteerida, 82 00:05:13,670 --> 00:05:19,330 ja siis me oleks välja trükkida nime, et tsiteerin samuti praegune hind, mis see on. 83 00:05:19,330 --> 00:05:26,830 Me tahame, et nad saaksid näha portfelli kõik aktsiad, et nad on ostnud siiani. 84 00:05:26,830 --> 00:05:34,240 Samuti tahame võimaldada neil osta varusid ning neid müüa. 85 00:05:34,240 --> 00:05:37,540 Ja siis lõpuks, me tahame, et nad saaksid näha ajalugu 86 00:05:37,540 --> 00:05:39,490 Kõiki tehinguid, mida nad olen teinud. 87 00:05:39,490 --> 00:05:41,540 Siis, lõpuks, pärast olete võtnud kõik see, 88 00:05:41,540 --> 00:05:45,110 siis sa oled vaba rakendada üks lisafunktsioon. 89 00:05:45,110 --> 00:05:46,610 Me läheme neisse. 90 00:05:46,610 --> 00:05:51,330 Need võivad olla kas võimaldab kasutajatel saada ekstra raha deponeerides ekstra raha, 91 00:05:51,330 --> 00:05:54,550 või siis võiks võimaldada neil muuta oma parooli või midagi sellist, 92 00:05:54,550 --> 00:06:00,590 neile meili kätte, kui nad ostavad või müüvad laos. 93 00:06:00,590 --> 00:06:05,370 Seal on piiratud omaduste loetelu, mida võiks rakendada ise, 94 00:06:05,370 --> 00:06:08,340 nii et on viimane seal. 95 00:06:08,340 --> 00:06:13,430 >> Kuna see on veebileht, kutid on ka palju vabadust kohandada seda. 96 00:06:13,430 --> 00:06:20,960 Teeme pakkuda mõned CSS koodi, kuid sa oled kindlasti vaba näpistama see, 97 00:06:20,960 --> 00:06:26,680 oleks ilusam, kuid aluseks on põhilised funktsioonid 98 00:06:26,680 --> 00:06:30,310 nii et alati viidata spec, mida sa tegelikult vaja lisada sinna. 99 00:06:30,310 --> 00:06:39,940 Pärast spec, me ei kavatse olla kasutades seadet kui ka server. 100 00:06:39,940 --> 00:06:43,910 See saab olema hosting meie kodulehel meile, tema kohalik server. 101 00:06:43,910 --> 00:06:49,750 Kui te järgite neid juhiseid ja unzip pset 7 jaotus kood 102 00:06:49,750 --> 00:06:53,500 oma virtuaalne host / kohaliku hosti kausta 103 00:06:53,500 --> 00:07:02,470  siis saate lihtsalt külastada http://localhost/ Google Chrome aparaat, 104 00:07:02,470 --> 00:07:09,120 ja siis jõuaks koodi, mis olete kirjutanud pset 7. 105 00:07:09,120 --> 00:07:14,490 >> Pset 7 on kaasas hunnik jaotus kood, 106 00:07:14,490 --> 00:07:18,330 ja loodetavasti Me oleme paar - läbi kogu psets enne seda - 107 00:07:18,330 --> 00:07:21,700 harjunud meid lugedes jaotuse kood, 108 00:07:21,700 --> 00:07:25,650 mõista, mis funktsioonid on juba ette, ja kuidas me võiks olla võimalik kasutada 109 00:07:25,650 --> 00:07:29,470 need ja muud funktsioonid, mida me ei kavatse rakendada. 110 00:07:29,470 --> 00:07:31,570 Sel juhul on meil 3 kaustadesse. 111 00:07:31,570 --> 00:07:36,350 Meil on HTML kaustas on kaust ja kausta. 112 00:07:36,350 --> 00:07:40,630 Mis me hakkame tegema seda pset on selline eraldav mõtlemine - 113 00:07:40,630 --> 00:07:45,580 programmeerimine mõtlemine - on PHP koodi kui tegelik visuaalne aspekt. 114 00:07:45,580 --> 00:07:52,690 Me olema üks PHP fail, mis teeb kogu mõtlemine, loeb andmebaasi, 115 00:07:52,690 --> 00:07:55,620 trükib välja asju, on kui avaldused - asju - 116 00:07:55,620 --> 00:08:02,140 ja siis see läheb üle andmed meie mallifail - või template.php faili. 117 00:08:02,140 --> 00:08:05,710 Mida see teeb on andmeid lugeda ja siis välja trükkida. 118 00:08:05,710 --> 00:08:09,550 >> Me võime ravida malle nagu "loll", et me ei taha neid 119 00:08:09,550 --> 00:08:12,370 tuleb teha palju tööd arvutamisel asju. 120 00:08:12,370 --> 00:08:16,330 Me tahame, et meie kontrollerid teha. 121 00:08:16,330 --> 00:08:21,610 Natuke edasi, et - võtame pilk mõned jaotus kood. 122 00:08:21,610 --> 00:08:28,250 Siin oleme meie index.html faili, ja see on üsna tühi. 123 00:08:28,250 --> 00:08:34,429 Sisuliselt, mida ta teeb - ta ütleb, noh, ma lähen nõuavad configuration.php faili. 124 00:08:34,429 --> 00:08:40,120 Me ei näe, et seal, kuid see on põhimõtteliselt helistades configuration.php faili 125 00:08:40,120 --> 00:08:42,240 ja täidesaatva seda. 126 00:08:42,240 --> 00:08:45,130 Pärast seda teeb, see saab muuta portfelli. 127 00:08:45,130 --> 00:08:49,310 Esitus on funktsioon, nii et kui me oleme kontroller, 128 00:08:49,310 --> 00:08:56,490 Me helistame krohvi, anname see fail ja seejärel andmed, et me möödaminnes, 129 00:08:56,490 --> 00:09:04,570 nii et see helistab portfolio.php--tüüpi passi, et andmeid nii, et portfelli saab tegeleda sellega. 130 00:09:04,570 --> 00:09:10,540 >> Ja nüüd, siin on meil login.php vormi. 131 00:09:10,540 --> 00:09:17,540  See on kontroller, mis põhiliselt hoolitseb sisselogimist 132 00:09:17,540 --> 00:09:29,090 Siin, siis kontrolli, kas vorm on esitatud käesoleva faili ja tegeleb valideerimiseks esitamise. 133 00:09:29,090 --> 00:09:31,990 Me uurime seda vabandada funktsioon. 134 00:09:31,990 --> 00:09:35,100 Kui me tahame välja printida veateate, 135 00:09:35,100 --> 00:09:39,550 me kasutame vabandada ja mis suunab kasutaja konkreetsele lehele 136 00:09:39,550 --> 00:09:42,530 et välja printida veateate, et me näitama. 137 00:09:42,530 --> 00:09:47,860 Jätkub, siis päringu andmebaasi - we'll sattuda rohkem sellest hiljem. 138 00:09:47,860 --> 00:09:54,180 Siis näed, et siin all, kui vormi ei ole esitatud, siis see muudab vormi. 139 00:09:54,180 --> 00:10:01,360 See tähendab, et see läheb login_form.php, seega vaatame seda. 140 00:10:01,360 --> 00:10:09,400 >> Login.php on tegelikult, kus me näeme HTML tegelevad tegelik visuaalne aspekt. 141 00:10:09,400 --> 00:10:15,130 Siin on meil sisend silt kasutaja nimi, sisend parool 142 00:10:15,130 --> 00:10:16,630 samuti submit nuppu. 143 00:10:16,630 --> 00:10:22,660 See on tegelikult kus visuaalne aspekt ja HTML-vormi saab pidada. 144 00:10:22,660 --> 00:10:27,550 Siin on öeldud, et see saab olema esitatud teatud meetod, mida nimetatakse ametikohale. 145 00:10:27,550 --> 00:10:30,190 Me võtame arvesse meetodite erinevus - 146 00:10:30,190 --> 00:10:33,240 postitada versus saada, seal on ka midagi, mida nimetatakse panna - 147 00:10:33,240 --> 00:10:36,160 me võtame arvesse neid meetodeid hiljem, kuid huvi selle pset, 148 00:10:36,160 --> 00:10:37,810 Ma väga soovitame kasutada postitus. 149 00:10:37,810 --> 00:10:42,210 >> Me teame, et põhimõtteliselt kui see vorm on esitatud - 150 00:10:42,210 --> 00:10:44,650 alates login_form.php-- 151 00:10:44,650 --> 00:10:50,850 siis läheb tegevus - login.php-- 152 00:10:50,850 --> 00:10:56,070 põhimõtteliselt läbida kõik need parameetrid need vormid arvesse login.php. 153 00:10:56,070 --> 00:11:04,900 Tuleneb, et vorm on sellel postitus assotsiatiivne massiiv. 154 00:11:04,900 --> 00:11:11,710 Indeksid erinevate elementide postitus massiivi 155 00:11:11,710 --> 00:11:15,290 on täpselt, mida te määrate siin. 156 00:11:15,290 --> 00:11:19,240 Te ütlete, et nimi see sisend on kasutajanimi. Nimi see on parooliga. 157 00:11:19,240 --> 00:11:26,840 Samuti näed kasutajanimi indeks assotsiatiivne massiiv seal. 158 00:11:26,840 --> 00:11:35,110 Kui läheme sisaldab kausta, meil on see funktsioonide faili mis saab olema väga kasulik. 159 00:11:35,110 --> 00:11:37,570 >> Kõik need funktsioonid on olemas sinu jaoks. 160 00:11:37,570 --> 00:11:41,870 Sa ei pea konkreetselt rakendada mõni neist ise, 161 00:11:41,870 --> 00:11:43,140 kuid nad ei kavatse üsna kasulik. 162 00:11:43,140 --> 00:11:49,450 Oleme vabandada, mis nagu ma enne ütlesin, on põhiliselt välja printida veateate 163 00:11:49,450 --> 00:11:52,920 teile konkreetse leht - apology.php. 164 00:11:52,920 --> 00:11:59,890 Siis on meil prügimäele, nii et kui sa lihtsalt helistada prügila ja seejärel viiakse muutuja, 165 00:11:59,890 --> 00:12:04,930 siis jõuad lehele, mis kuvab selle muutuja teile. 166 00:12:04,930 --> 00:12:09,950 Siis oleme logout, mis põhimõtteliselt lõpetada teatud kasutaja seanss. 167 00:12:09,950 --> 00:12:12,240 Otsing saab olema kasulik. 168 00:12:12,240 --> 00:12:15,870 Kuna me tegeleme hinnapakkumisi ja varud, me ei kavatse olla võimeline - 169 00:12:15,870 --> 00:12:17,650 ja see on sisuliselt reaalajas. 170 00:12:17,650 --> 00:12:21,380 Me peame teadma, millised need laos väärtused, 171 00:12:21,380 --> 00:12:28,210 nii et meil on otsing funktsioon, mis tegeleb Yahoo dokumentatsioon varusid. 172 00:12:28,210 --> 00:12:37,700 Kui sa vaatad üles teataval sümbol laos, siis tagasi teie aktsia sümbol 173 00:12:37,700 --> 00:12:41,480 samuti nimi ja praegune hind kõnealuse kalavaru. 174 00:12:41,480 --> 00:12:44,330 See on lookup funktsiooni. 175 00:12:44,330 --> 00:12:48,350 >> Siis me tegeleme MySQL, 176 00:12:48,350 --> 00:12:53,970 nii me ei kavatse olla tahavad täita teatud päringuid meie SQL andmebaasi. 177 00:12:53,970 --> 00:12:58,890 Meil on päringu tegeleda - et selline abstraktne osa sellest välja. 178 00:12:58,890 --> 00:13:03,200 Me läheme mööda sõitma kogu string meie SQL päring - 179 00:13:03,200 --> 00:13:05,360 ja kõik muutujad, mis lähevad sellesse - 180 00:13:05,360 --> 00:13:09,480 ja mida see teeb, on tegelikult täitma seda meie eest. 181 00:13:09,480 --> 00:13:15,070 Selle asemel, et kirjutada see kõik välja iga kord, kui soovite päringu - 182 00:13:15,070 --> 00:13:21,740 hakates kõik tuleneb, et päring - 183 00:13:21,740 --> 00:13:24,740 siis saate lihtsalt helistada päringu funktsiooni ja see saab su juurde tagasi - 184 00:13:24,740 --> 00:13:28,750 sõltuvalt sellest, mida te kasutate oma päring - 185 00:13:28,750 --> 00:13:33,000 ilmselt reas kõik tulemused, mis vastavad päringu vms. 186 00:13:33,000 --> 00:13:34,690 Rohkem, et hiljem küll. 187 00:13:34,690 --> 00:13:41,200 >> Lõpuks on meil suunata, mis, nagu nimigi ütleb, suunab teid teisele lehele. 188 00:13:41,200 --> 00:13:46,280 Ja siis on meil krohvi, mis me kavatseme olla kutsudes paar korda. 189 00:13:46,280 --> 00:13:51,010 Kui oled lennujuht, siis helista muuda arvesse mudel lehele 190 00:13:51,010 --> 00:13:55,390 ja siis liigu väärtustes et mall siis tegeleda. 191 00:13:55,390 --> 00:13:59,540 Need väärtused on ilmselt saab olema tegemist Väljundi liik, mida soovite 192 00:13:59,540 --> 00:14:01,050 näidata oma malli leheküljele. 193 00:14:01,050 --> 00:14:09,370 Okei. Need on ülesanded, ja seal on palju rohkem seda jaotust kood. 194 00:14:09,370 --> 00:14:12,930 Ma kutsun teid üles minna läbi selle ja uurida seda ise. 195 00:14:12,930 --> 00:14:17,050 Samuti spec tõenäoliselt sõelub mõned muud elemendid jaotus kood. 196 00:14:17,050 --> 00:14:27,360 Siin on kokkuvõte funktsioone leitud functions.php. 197 00:14:27,360 --> 00:14:31,710 >> Okei. Esimene ülesanne on võimaldada kasutajatel registreeruda veebilehel. 198 00:14:31,710 --> 00:14:34,860 Just praegu on sisäänkirjautumislomake veebilehel, 199 00:14:34,860 --> 00:14:40,080 ja teile antakse mõned kasutajad paroole. 200 00:14:40,080 --> 00:14:42,130 Võite kasutada neid kasutajatunnuseid ja sisse logida, 201 00:14:42,130 --> 00:14:45,140 kuid sa tahad, et inimesed saaksid teha oma kasutajanimed 202 00:14:45,140 --> 00:14:47,390 ja lisada ennast veebilehel. 203 00:14:47,390 --> 00:14:53,070 Planeering registreerimiseks on üsna sarnane sisäänkirjautumislomake, 204 00:14:53,070 --> 00:14:56,340 välja arvatud kasutajanimi ei ole olemasoleva, 205 00:14:56,340 --> 00:14:59,430 ja kasutaja peab ka pakkuda uus parool 206 00:14:59,430 --> 00:15:02,440 ja siis tavaliselt on meil salasõna kinnitust. 207 00:15:02,440 --> 00:15:06,580 Kui kasutaja sisendite kõik, et teave, 208 00:15:06,580 --> 00:15:10,620 me tahame, et lisada need meie andmebaasi kasutajatele. 209 00:15:10,620 --> 00:15:12,970 Me läheme on andmebaas - SQL andmebaasi - 210 00:15:12,970 --> 00:15:14,470 et me ei kavatse viidata. 211 00:15:14,470 --> 00:15:18,140 Selles andmebaasis, me peame tabel koos kõigi kasutajate 212 00:15:18,140 --> 00:15:23,850 sisaldavad oma kasutajanimi, parooli ja ka kui palju raha neil on. 213 00:15:23,850 --> 00:15:28,480 >> Registreeri tahame võimaldada neil siseneda sellele teabele. 214 00:15:28,480 --> 00:15:29,740 Tahame näidata, et vorm. 215 00:15:29,740 --> 00:15:32,210 Me tahame veenduda, et nende UUS - 216 00:15:32,210 --> 00:15:37,490 et nad sisenesid üks ja seejärel ka, et paroolid sobitada, kui nad sisenevad see kaks korda. 217 00:15:37,490 --> 00:15:42,240 Pärast kõike seda tehakse - eeldades, et need vead on kontrollitud - 218 00:15:42,240 --> 00:15:45,120 siis me tahame lisada neid kasutajaid meie andmebaasi. 219 00:15:45,120 --> 00:15:49,630 Lõpuks, kui olete registreeritud, see on päris mugav, kui sa ei pea uuesti sisse logima 220 00:15:49,630 --> 00:15:51,000 kui olete registreeritud, 221 00:15:51,000 --> 00:15:54,000 nii me läheme sisse neid veebilehele, kui nad on registreeritud edukalt. 222 00:15:54,000 --> 00:16:00,360 >> Esimene ülesanne on näidata vormis, ja see on tegelikult saab olema - 223 00:16:00,360 --> 00:16:04,920 kogu see registreerimise protsess saab olema eeskujuks päris tihedalt pärast sisselogimist 224 00:16:04,920 --> 00:16:10,510 Kuid selle asemel, login.php teil olla register.php. 225 00:16:10,510 --> 00:16:14,300 Selle asemel, et login_form.php--mis on mall - 226 00:16:14,300 --> 00:16:16,030 sa pead registreerima kujul. 227 00:16:16,030 --> 00:16:19,680 Sa tahad lisada veel ühe valdkonna - UUS kinnituse valdkonnas - 228 00:16:19,680 --> 00:16:23,450 asemel ainult üks kasutajanimi ja üks parool. 229 00:16:23,450 --> 00:16:28,120 Edasi me tahame kontrollida, kas paroolid sobi või on tühjad. 230 00:16:28,120 --> 00:16:38,560 Meil on kontroller - register.php--mis läheb hoolitseda teed neid kontrolle. 231 00:16:38,560 --> 00:16:41,690 Kui vorm on esitatud posti kaudu meetod, 232 00:16:41,690 --> 00:16:47,050 siis kõik need muutujad on esitatud jooksul pärast massiivi. 233 00:16:47,050 --> 00:16:52,280 Sa tahad teha kindel, et postitus massiivi väärtus indeks parool 234 00:16:52,280 --> 00:16:58,080 Sobib kinnitamiseks element. 235 00:16:58,080 --> 00:16:59,410 Sa tahad teha kindel, et nad ei ole tühi, 236 00:16:59,410 --> 00:17:01,650 ja sa tahad teha kindel, et nad on sama. 237 00:17:01,650 --> 00:17:05,960 >> Üks mugav asi PHP on see, et meil ei ole vaja kasutada string võrrelda enam. 238 00:17:05,960 --> 00:17:08,410 Saame kasutada võrdne-võrdne operaator 239 00:17:08,410 --> 00:17:11,470  et kontrollida, kas stringid on võrdsed üksteisega. 240 00:17:11,470 --> 00:17:14,960 Sest veakäsitlust, tahad vabandada. 241 00:17:14,960 --> 00:17:17,150 Vabandust, sa lihtsalt helistada funktsioon 242 00:17:17,150 --> 00:17:21,910  ja seejärel määrata sõnumi tüüp, mida soovite väljund. 243 00:17:21,910 --> 00:17:24,630 Sa siis tahad lisada kasutaja andmebaasi. 244 00:17:24,630 --> 00:17:30,880 Siiani on kõik oleme teinud, on lihtsalt tegemist kohalikul tasandil tulemuste näol. 245 00:17:30,880 --> 00:17:33,940 Nüüd me tegelikult tahame, et lisada need meie andmebaasist. 246 00:17:33,940 --> 00:17:38,890 Selleks peame kõigepealt tahan veenduda, et kasutajanimi ei ole tühi. 247 00:17:38,890 --> 00:17:44,550 Aru, et veebilehel, siis ei saa olla mitu kasutajat sama kasutajanimega, 248 00:17:44,550 --> 00:17:50,010 et sa tahad veenduda, et kui sisestate midagi oma andmebaasi - 249 00:17:50,010 --> 00:17:56,650 lisada uus kasutaja - siis sa ei saa kokkupõrge olemasoleva kasutajanime 250 00:17:56,650 --> 00:17:59,150 ja kasutajanimi, et kasutaja püüab esitada. 251 00:17:59,150 --> 00:18:02,250 Selle, kui sa täita päringule - 252 00:18:02,250 --> 00:18:08,760 lisades teatud kasutaja oma salasõna ja esialgne rahasumma - 253 00:18:08,760 --> 00:18:15,140 kui sa nimetad seda päringut, siis MySQL tegelikult tagasi false kui ta ei suuda. 254 00:18:15,140 --> 00:18:21,050 >> Struktuuri kasutajad on selline, et kasutajanimi on ainulaadne väärtus, 255 00:18:21,050 --> 00:18:22,540 nii et sa ei saa olla rohkem kui üks. 256 00:18:22,540 --> 00:18:30,080 Kui proovite ja lisada uus rida kasutajanime mis on juba olemas, 257 00:18:30,080 --> 00:18:34,470 et läheb tagasi false - nagu Boole'i ​​väärtus vale. 258 00:18:34,470 --> 00:18:45,320 Keeruline asi on selles, et sa tahad, et vaadata, kas tulemus on tingitud teie päringut. 259 00:18:45,320 --> 00:18:52,320 Kui see ei õnnestu, siis tahad, et kontrollida kolmekordne võrdub operaator. 260 00:18:52,320 --> 00:18:55,420 See on tegelikult lähen vaatan, kas on ebaõnnestumine või mitte, 261 00:18:55,420 --> 00:19:02,760 arvestades, lihtsalt võrdne-võrdne, oleks õige, kui rida oli tühi. 262 00:19:02,760 --> 00:19:06,000 Eiramise tõttu, kui on kokkupõrge kasutajanimed 263 00:19:06,000 --> 00:19:10,350 on tegelik vale väärtus. 264 00:19:10,350 --> 00:19:15,230 >> Siin on, kuidas sa tahaks lisada andmebaasi. 265 00:19:15,230 --> 00:19:19,220 Siin on päring, et sa läheks rangelt SQL. 266 00:19:19,220 --> 00:19:25,750 Üks asi on see, et tegelikult võite minna veebilehele, mis haldab teie SQL andmebaasi 267 00:19:25,750 --> 00:19:31,070 ja mängida seal, sisestades käsitsi kas väärtused ridades. 268 00:19:31,070 --> 00:19:34,540 See tulemus on see, mida SQL väljund on. 269 00:19:34,540 --> 00:19:38,870 Võite ka käivitada SQL käske jooksul oma andmebaas 270 00:19:38,870 --> 00:19:42,200  ja siis vaata, mida süntaks võib olla, 271 00:19:42,200 --> 00:19:46,790 ja siis moodustavad sellest päringu funktsiooni, mis meil on pset 7, 272 00:19:46,790 --> 00:19:51,120 mis saab olema väga sarnane päringuid, et te reaalselt sõita. 273 00:19:51,120 --> 00:19:54,570 >> Kui ma tahtsin lisada uus rida minu kasutajate tabelis, 274 00:19:54,570 --> 00:20:01,240 siis ma oleks täpsustada INSERT INTO kasutajad, kes on nimi minu lauale. 275 00:20:01,240 --> 00:20:06,870 Siis ma täpsustada veerunimesid. 276 00:20:06,870 --> 00:20:13,230 Siis ma annaks väärtused koos oma parool. 277 00:20:13,230 --> 00:20:17,080 Paroolid meie kasutajatele tabelis ei ole salvestatud lihtsalt stringi. 278 00:20:17,080 --> 00:20:19,440 Nad on salvestatud krüpteeritud versioon, 279 00:20:19,440 --> 00:20:24,560 et sa tahad joosta funktsioon crypt tegelik parool 280 00:20:24,560 --> 00:20:29,680 ja mis annab teile õige andmekandja tüüpi kasutajatele massiiv. 281 00:20:29,680 --> 00:20:34,960 Jooks see lisab uue rea oma kasutajate tabel. 282 00:20:34,960 --> 00:20:39,020 >> Selleks et tulla toime päringu funktsiooni 283 00:20:39,020 --> 00:20:43,100 enne C kasutasime protsenti tähise kohatäide. 284 00:20:43,100 --> 00:20:47,670 Sarnaselt sama mõiste kohatäide kehtib ka siin. 285 00:20:47,670 --> 00:20:50,720 Mis päringu, saab määrata kogu päringu 286 00:20:50,720 --> 00:20:55,510 välja arvatud siis, kui olete tegelevad muutujaid oma panuse päringu 287 00:20:55,510 --> 00:21:00,490 siis selle asemel, et tegelikult paneb nende sees - nagu siis, kui meil oli printf avaldusi C. 288 00:21:00,490 --> 00:21:03,740 Me paneks string ja siis on kohatäide seal, ja siis pärast iga 289 00:21:03,740 --> 00:21:06,990 koma, täpsustada muutuja meil oli. 290 00:21:06,990 --> 00:21:14,480 Siin me ei kavatse kasutada küsimärk märki meie kohatäide 291 00:21:14,480 --> 00:21:21,670 ja siis liigu iga muutuja võrra, mille eesmärk on kohatäited - 292 00:21:21,670 --> 00:21:24,420 kui need muutujad peaks minema. 293 00:21:24,420 --> 00:21:29,470 Nii et siin, esimene küsimärk oleks asendatud tegeliku kasutajanime 294 00:21:29,470 --> 00:21:33,610 siis teine ​​küsimärk poolt parool. 295 00:21:33,610 --> 00:21:37,000 >> Siis lõpuks, kui olete registreeritud neid ja lisada need andmebaasi, 296 00:21:37,000 --> 00:21:40,510 siis Sa soovid välja logida need veebilehel. 297 00:21:40,510 --> 00:21:45,320 Meil on selline super-globaalse muutuja nimega istungil. 298 00:21:45,320 --> 00:21:48,160 Session võtab teatud id, 299 00:21:48,160 --> 00:21:51,750 ja et id vastab kasutaja, mis on praegu sisse logitud 300 00:21:51,750 --> 00:21:56,380 Mida sa tahad teha, on leida, mida oma kasutajatunnus on 301 00:21:56,380 --> 00:22:03,710 ja siis pane see Session ID kui selle konkreetse kasutaja id. 302 00:22:03,710 --> 00:22:07,560 Funktsioon, et sa tahad kasutada siin on SQL käsk 303 00:22:07,560 --> 00:22:15,150 mis kätte viimase sisestatud ID numbri oma lauale. 304 00:22:15,150 --> 00:22:24,560 Siis read helistada - it'll helistada ID - it'll määrata nime arvu, et ta naaseb. 305 00:22:24,560 --> 00:22:27,900 Seda saad helistada, et number. 306 00:22:27,900 --> 00:22:33,370 Nüüd oleme valmis registreerima, ja me saame liikuda edasi tsiteerida. 307 00:22:33,370 --> 00:22:36,610 >> Tsiteeri võimaldab kasutajal sisestada nimi mõne sellise aktsia, 308 00:22:36,610 --> 00:22:41,940 ja siis naasen omadusi, et laos. 309 00:22:41,940 --> 00:22:48,410 Mida sa tahad teha, on olla kontroller ja mõned mallid. 310 00:22:48,410 --> 00:22:53,380 Sel juhul me lähed on kontroller, mis saab teha kõike mõtlemine meile. 311 00:22:53,380 --> 00:23:01,210 See saab otsida sümbol ja seejärel viiakse väärtused mallid, mis välja printida. 312 00:23:01,210 --> 00:23:03,060 Me läheme on 2 malle siin. 313 00:23:03,060 --> 00:23:07,260 Me läheme on 1 mall, mis pakub vormis, kus kasutajad hakkavad 314 00:23:07,260 --> 00:23:09,920 sisend nime laos - nime osa. 315 00:23:09,920 --> 00:23:16,030 Siis me ka kavatse tahavad teise malli, mis kuvab neid väärtusi. 316 00:23:16,030 --> 00:23:27,450 Võite uurida sisselogimise näide sellest, kuidas teil oleks vorm, mis aktsepteerib sisendi, 317 00:23:27,450 --> 00:23:30,060 välja arvatud siin, me tahame ainult 1 väli. 318 00:23:30,060 --> 00:23:31,630 Me ei taha kasutajanimi ja parool väljale. 319 00:23:31,630 --> 00:23:37,110 Me lihtsalt tahame 1 teksti väli, mis võimaldab kasutajal sisestada nimi mõne sellise aktsia. 320 00:23:37,110 --> 00:23:40,110 Siis, mida soovite saata, et andmed - kui olete tutvunud, et laos - 321 00:23:40,110 --> 00:23:45,550 kuni quote_form.php. 322 00:23:45,550 --> 00:23:50,780 Otsing naaseb sümbol laos, nimi ja hind. 323 00:23:50,780 --> 00:23:53,910 Need on koondatud assotsiatiivne massiiv. 324 00:23:53,910 --> 00:24:01,390 Vaata üles lookup funktsiooni sees functions.php rohkem infot 325 00:24:01,390 --> 00:24:04,010 tagastamise kohta liikide neid. 326 00:24:04,010 --> 00:24:08,520 >> Suurepärane! Siis lõpuks, sa tahad kuvada aktsia kohta. 327 00:24:08,520 --> 00:24:14,110 Sa tahad ilmselt näidata - you'll soovite kasutada neid muutujaid. 328 00:24:14,110 --> 00:24:17,610 Kui olete hind muutuja - 329 00:24:17,610 --> 00:24:20,860 samuti nime ja sümboli - 330 00:24:20,860 --> 00:24:25,550 siis sa tahad kuvada neid oma malli leheküljele. 331 00:24:25,550 --> 00:24:31,540 See mudel lehele võiks nimetada show_quote.php või midagi. 332 00:24:31,540 --> 00:24:39,660 Sinu quote.php leht muudaks kõike koguaeg ja siis viiakse kõik need väärtused. 333 00:24:39,660 --> 00:24:47,170 Siis oma php lehel tegelikult välja printida need väärtused HTML aspekt osas. 334 00:24:47,170 --> 00:24:53,800 Sa lihtsalt kasutada printimise funktsiooni ja liigu hinna sees. 335 00:24:53,800 --> 00:24:57,990 On 2 võimalust - võite concatenate seda dot operaator, 336 00:24:57,990 --> 00:25:02,230 või kasutada kohatäide. 337 00:25:07,580 --> 00:25:12,750 >> Kasutajad lõpuks hakatakse ostmine ja müümine varud. 338 00:25:12,750 --> 00:25:18,450 Me tahame, et võimaldada neil mingi võimalus näidata kogu varud, mis neil praegu on. 339 00:25:18,450 --> 00:25:21,350 Me läheme helistada, et oma portfelli. 340 00:25:21,350 --> 00:25:26,180 Portfolio oleks arvatavasti iga kasutaja, sisaldavad hunnik ridu 341 00:25:26,180 --> 00:25:31,760 loetletakse tüüpi osa, mis neil on ja siis kui palju neid on neil. 342 00:25:31,760 --> 00:25:36,500 Meie olemasolev tabel - praegu on meil kasutajate tabel meie andmebaasis. 343 00:25:36,500 --> 00:25:41,780 See sisaldab kasutaja kasutajanime, samuti oma parooli ja kui palju raha neil on. 344 00:25:41,780 --> 00:25:50,390 Ei ole reaalne viis hoida kõik oma varud selles. 345 00:25:50,390 --> 00:25:58,010 See ei ole nagu me saame lisada uusi veerge iga aktsia. 346 00:25:58,010 --> 00:26:03,650 See oleks väga pikk rida sest meil on lõpmatu kogus 347 00:26:03,650 --> 00:26:06,200 liikide varusid, et nad võiksid olla. 348 00:26:06,200 --> 00:26:09,150 Niisiis, selle asemel, mida me teeme on sama andmebaasi, 349 00:26:09,150 --> 00:26:15,000 me peame kasutajate tabelis, kuid siis me ka portfelli tabelis. 350 00:26:15,000 --> 00:26:18,430 Portfelli tabel on kindlasti seotud kasutajate tabelis, 351 00:26:18,430 --> 00:26:24,600 kuid selle asemel portfelli tabeli struktuur on käivatest andmetest, 352 00:26:24,600 --> 00:26:27,780 kui palju aktsiaid, et aktsiate kasutaja, 353 00:26:27,780 --> 00:26:31,620 samuti kasutaja eriti ID-number. 354 00:26:31,620 --> 00:26:34,620 Sul on kasutajate tabel, mis on ID samuti kasutajanime ja hash - 355 00:26:34,620 --> 00:26:40,130 mis on parool, krüpteeritud parooli - 356 00:26:40,130 --> 00:26:42,130 ja siis, kui rahasumma nad on. 357 00:26:42,130 --> 00:26:47,900 ID number seotakse ID number portfelli. 358 00:26:47,900 --> 00:26:52,490 Portfell oleks lihtsalt sümbol laos samuti aktsiad - 359 00:26:52,490 --> 00:26:55,410 aktsiate arvu, et laos, et kasutaja on. 360 00:26:55,410 --> 00:26:58,520 Sel portfelli tabel teil oleks põhimõtteliselt 361 00:26:58,520 --> 00:27:03,760 kõik aktsiad valduses kõik kasutajad saidile. 362 00:27:03,760 --> 00:27:10,550 Hiljem täpsustada ainult teatud kasutaja aktsiad - ainult oma portfelli - 363 00:27:10,550 --> 00:27:15,360 siis oleks hankida väärtused oma portfelli tabel selline, et 364 00:27:15,360 --> 00:27:19,930 ID number on seotud just selle kasutaja. 365 00:27:26,520 --> 00:27:34,890 >> Kui kuvad portfelli, tahad teatada iga varude kasutaja portfellis. 366 00:27:34,890 --> 00:27:41,670 Sa tahad teatada aktsiate arvu ja praeguse osade väärtuse. 367 00:27:41,670 --> 00:27:45,950 See praegune väärtus nende aktsiate ei ole salvestatud portfelli tabel 368 00:27:45,950 --> 00:27:51,640 sest et täna tuleb ajakohastada - minimaalsete - iga päev Yahoo. 369 00:27:51,640 --> 00:27:58,550 Et saada seda teavet, siis ei saa viidata, et teie SQL päring. 370 00:27:58,550 --> 00:28:02,400 Mis funktsioon on sätestatud, et meile? Mis funktsiooni saab hind? 371 00:28:02,400 --> 00:28:09,110 See on lookup, et kasutades lookup konkreetse sümboli annab teile palju informatsiooni. 372 00:28:09,110 --> 00:28:13,710 See annab sulle 3 tükki teave - laeva nimi, sümbol, samuti hind. 373 00:28:13,710 --> 00:28:17,490 Kui teil lookup teatud sümbol, siis saad hinna, 374 00:28:17,490 --> 00:28:20,460 ja siis saate hinna kuvada oma portfelli. 375 00:28:20,460 --> 00:28:26,190 >> Portfell peaks ka näitama kasutaja praeguse kassajääk. 376 00:28:26,190 --> 00:28:30,310 See väli on salvestatud oma kasutajate tabel. 377 00:28:30,310 --> 00:28:33,400 Nii siis mäleta, kuidas me põhiliselt võttes - 378 00:28:33,400 --> 00:28:36,850 meil oli eri tüüpi PHP faile. 379 00:28:36,850 --> 00:28:40,160 Me läheme on kontroller, mis põhimõtteliselt teeb kogu mõtlemine sinu jaoks. 380 00:28:40,160 --> 00:28:45,940 Ja siis on meil mall, kus malli tegeleb kirjutamine andmed. 381 00:28:45,940 --> 00:28:50,790 Sa pead mõtlema, mida muutujad kontroller tuleb võtta sisse 382 00:28:50,790 --> 00:29:01,630 Kui me tegeleme portfelli, mis väljastab iga nime, sümbolit, ja osa number, 383 00:29:01,630 --> 00:29:03,730 samuti praeguse hinna varu, 384 00:29:03,730 --> 00:29:06,950 siis tahad leida mingi võimalus põhiliselt sõidavad - 385 00:29:06,950 --> 00:29:12,070 saab edastada massiivi väärtusi, mis sobivad. 386 00:29:15,250 --> 00:29:24,360 >> Läheme näide sellest, kuidas te võite laadida alla kõik varud 387 00:29:24,360 --> 00:29:26,210 kuulub konkreetse kasutaja. 388 00:29:26,210 --> 00:29:31,400 See ei tegele - veel - hinnaga laos. 389 00:29:31,400 --> 00:29:33,520 Mis see teha on käivitada päringu. 390 00:29:33,520 --> 00:29:37,070 See annaks sümbol, samuti aktsiate - 391 00:29:37,070 --> 00:29:42,770 Ma helistan tabelis, kuid sel juhul siis mis see oleks? 392 00:29:42,770 --> 00:29:49,400 Mis on tabeli nimi, et me tegeleme, millel on sümbol ja aktsiate 393 00:29:49,400 --> 00:29:52,280 konkreetse kasutaja? 394 00:29:52,280 --> 00:29:56,410 See on kas kasutaja või portfelli. 395 00:29:56,410 --> 00:29:57,820 Portfolio. 396 00:29:57,820 --> 00:30:03,220 Mis see teha on päringu portfelli sümbolid ja osad 397 00:30:03,220 --> 00:30:04,920 konkreetse kasutaja. 398 00:30:04,920 --> 00:30:09,260 Siin ma öelda, (SELECT sümbol, aktsiate tbl - 399 00:30:09,260 --> 00:30:12,280 kuid selle asemel laua, sa lähed, et asendada see portfell. 400 00:30:12,280 --> 00:30:15,220 "Kus on põhimõtteliselt minu tingimus. 401 00:30:15,220 --> 00:30:21,050 Ma ütlen Ma tahan ainult, et saada nende assotsiatiivse massiivi, mis vastavad 402 00:30:21,050 --> 00:30:23,850  sellele järgmine tingimus - ID võrdsetena. 403 00:30:23,850 --> 00:30:27,600  Siis ma panen kohatäide seal ja siis sessiooni id. 404 00:30:27,600 --> 00:30:36,720 Mis see teha on öelda iga rea ​​rida. 405 00:30:36,720 --> 00:30:40,940 See on puhas tee asemel oleks tegelikult luua loop 406 00:30:40,940 --> 00:30:47,450 et kordab üle kõik indeksid, siis PHP võite lasta jaoks-iga silmus. 407 00:30:47,450 --> 00:30:53,520 >> Kui teil on antud massiiv, siis võib öelda, et ma lähen helistada iga järgmise elemendi - 408 00:30:53,520 --> 00:30:57,930 Ma lähen kutsun iga element selle nime. 409 00:30:57,930 --> 00:31:02,780 Niisiis, iga üks neist elementidest, ma lähen helistada neile seda, 410 00:31:02,780 --> 00:31:04,500 siis ma suudan seda. 411 00:31:04,500 --> 00:31:10,370 Selles iga, siis on rida kui teie tegelik array, ja iga rida sa lähed helistada rida. 412 00:31:10,370 --> 00:31:12,420 Iga kord, kui ta täidab keha, 413 00:31:12,420 --> 00:31:16,960 see läheb üles ja see uuendab rea järgmise elemendi ridades. 414 00:31:18,900 --> 00:31:25,260 >> Nüüd, seoses ostes aktsiad, 415 00:31:25,260 --> 00:31:29,500 mida me tahame teha, on saada varu, et kasutaja tahab osta 416 00:31:29,500 --> 00:31:35,300 ja aktsiate arv, mida kasutaja tahab osta ning seejärel - kui nad tahavad - 417 00:31:35,300 --> 00:31:38,120 lisada, et laos on oma portfelli. 418 00:31:38,120 --> 00:31:40,310 Loomulikult, kui nad ostavad midagi, siis see saab vähendada 419 00:31:40,310 --> 00:31:43,520 raha nad on, nii et läheb vähendada nende raha. 420 00:31:43,520 --> 00:31:48,380 Me läheme tegelema ajakohastamine portfelli samuti kasutajate tabelis, 421 00:31:48,380 --> 00:31:50,300 mis sisaldab raha. 422 00:31:50,300 --> 00:31:54,920 Aga kõigepealt pead saada tegelik laos ja aktsiate arv, mida kasutaja soovib. 423 00:31:54,920 --> 00:32:00,010 Selleks peate HTML-vormi, mis küsib sümbol laos 424 00:32:00,010 --> 00:32:03,360 , mida soovite osta, samuti aktsiate arvu. 425 00:32:03,360 --> 00:32:08,300 Siis sa tahad lisada. 426 00:32:08,300 --> 00:32:13,750 Sa tahad, et valida teatud väärtusi. 427 00:32:13,750 --> 00:32:19,670 Me oleme läbi käinud see natuke juba, kuid kui te üritate saada teatud ridu - 428 00:32:19,670 --> 00:32:22,020 laadida teatud read SQL tabel, 429 00:32:22,020 --> 00:32:24,290 see on järgmine süntaks. 430 00:32:24,290 --> 00:32:28,400 Sa valida, ja siis kui sa täpsustada täht, 431 00:32:28,400 --> 00:32:31,830 et ma põhimõtteliselt tagastama kogu, terve rida teie jaoks. 432 00:32:31,830 --> 00:32:36,890 Aga samas, teil on seisund, kus, ja siis täpsustada - 433 00:32:36,890 --> 00:32:39,990 Ma tahan ainult kasutajanimi võrdne post-in, 434 00:32:39,990 --> 00:32:46,660 nii et see alla laadida ainult rida kasutajad, mis vastab mail-in. 435 00:32:46,660 --> 00:32:52,860 >> Kui kasutaja soovib lisada aktsia portfelli 436 00:32:52,860 --> 00:32:54,400 sa pead kontrollima mõned vead. 437 00:32:54,400 --> 00:32:57,680 Sa tahad teha kindel, et kasutaja saab tegelikult endale varu, 438 00:32:57,680 --> 00:33:00,810 et sa tahad, et kontrollida oma raha. 439 00:33:00,810 --> 00:33:05,810 Enne kasutasime täht laadida kogu rida SQL tabeli. 440 00:33:05,810 --> 00:33:08,930 Aga siin, me saame tegelikult lihtsalt täpsustada, et ma tahan ainult 1 väärtus - 441 00:33:08,930 --> 00:33:10,080 Ma tahan ainult raha. 442 00:33:10,080 --> 00:33:17,970 Nii et siin oleks tagasi raha kasutaja ID number 1. 443 00:33:17,970 --> 00:33:25,940 Kui kasutaja on juba ostnud mõne sellise aktsia, kuid siis ostab rohkem, et laos, 444 00:33:25,940 --> 00:33:30,440 siis oma portfelli - sa ei taha eraldi real 445 00:33:30,440 --> 00:33:34,770 teine ​​rida, mis sisaldab selle uue tehingu. 446 00:33:34,770 --> 00:33:37,950 Sa tegelikult soovid uuendada summa. 447 00:33:37,950 --> 00:33:42,530 Kõik, mis on muutumas tõesti on summa aktsiate et kasutaja omab. 448 00:33:42,530 --> 00:33:47,730 Kui te kasutate INSERT INTO päring - nii see lihtsalt lisada oma portfelli kõik need väärtused - 449 00:33:47,730 --> 00:33:51,710 kasutaja id number samuti sümbol laos, et nad ostavad 450 00:33:51,710 --> 00:33:57,750 ja aktsiad, siis võite ka soovi täpsustada, noh, kui ma joosta korduv võti - 451 00:33:57,750 --> 00:34:00,750 sel juhul, korduv võti ei ole ainult kasutaja ID, kuid ka aktsia sümbol - 452 00:34:00,750 --> 00:34:08,340 sest teil võib olla ainult - meie eeldus on, et teil võib olla ainult 1 rida 453 00:34:08,340 --> 00:34:10,699  mis vastab 1 iseloomulik sümbol. 454 00:34:10,699 --> 00:34:13,659 Niisiis, korduv võti - kui teil tekib kokkupõrke seal - 455 00:34:13,659 --> 00:34:18,520 sa lihtsalt läheb uuendada aktsiaid ka uue väärtuse. 456 00:34:18,520 --> 00:34:23,290 Aktsiad võrdub iganes meil oli enne pluss aktsiate arv, mida kasutaja ostab. 457 00:34:27,790 --> 00:34:31,090 >> Nüüd, kui oleme värskendatud portfelli tabel, 458 00:34:31,090 --> 00:34:34,730 me tahame uuendada kasutaja raha. 459 00:34:34,730 --> 00:34:40,300 See on kasutajate tabel, nii et me ei kavatse lahutada teatud summa raha. 460 00:34:40,300 --> 00:34:46,270 Arvatavasti see saab olema raha võrdub raha miinus - ja siis teatud summa. 461 00:34:46,270 --> 00:34:50,560 Uuendamiseks raha, siis oleks - 462 00:34:50,560 --> 00:34:55,699 kui ma tahtsin ära võtta raha posti-in, siis ma läheks selle päringu - 463 00:34:55,699 --> 00:35:00,220 "Uuendus kasutajate ja siis pane raha veeru raha - 464 00:35:00,220 --> 00:35:07,300 >> Tahaksin eemaldada 9999 dollarit ainult siis, kui kasutajanimi on võrdne post-in. 465 00:35:07,300 --> 00:35:12,020 Aga sel juhul me ei taha lahutada 9999 konkreetselt. 466 00:35:12,020 --> 00:35:17,610 Soovime täpsustada, noh, me tahame lahutada praeguse hinna laos 467 00:35:17,610 --> 00:35:22,400 korrutatud aktsiate arv, mida nad ostavad. 468 00:35:25,260 --> 00:35:29,910 >> Nüüd oleme võimaldanud neil näha kõiki varusid, et nad on 469 00:35:29,910 --> 00:35:33,080 samuti osta rohkem varusid. 470 00:35:33,080 --> 00:35:37,430 Me oleme ka varem võimaldas neil otsida praeguse hinna varu. 471 00:35:37,430 --> 00:35:40,030 Siin me tahame, et nad saaksid müüa. 472 00:35:40,030 --> 00:35:42,160 Esiteks tahame näidata põhimõtteliselt - 473 00:35:42,160 --> 00:35:45,270 me tahame, et nad saaksid näha kõiki varusid, et nad on 474 00:35:45,270 --> 00:35:53,170 nii siin me tahame näidata kõik read portfelli. 475 00:35:53,170 --> 00:35:56,650 Kui nad otsustavad müüa teatud varu, 476 00:35:56,650 --> 00:35:59,140 siis me lähme eeldada, et nad soovivad müüa kõik. 477 00:35:59,140 --> 00:36:04,350 Nad ei ole lihtsalt kavatse müüa 50% oma aktsiatest, nad ei kavatse müüa 100% see. 478 00:36:04,350 --> 00:36:08,630 Me ei saa lihtsalt kustutada kogu rida portfelli. 479 00:36:08,630 --> 00:36:17,520 Me ei saa kustutada antud kasutaja aktsiaid teatud sümbol. 480 00:36:17,520 --> 00:36:21,410 Seal on süntaksi eest. 481 00:36:21,410 --> 00:36:22,710 >> Siis soovite värskendada raha. 482 00:36:22,710 --> 00:36:30,930 Me ei kavatse lisades raha võrdse summa aktsiate nad müüvad 483 00:36:30,930 --> 00:36:34,640 korrutatakse praeguse hinna varu - 484 00:36:34,640 --> 00:36:38,610 ei hinda, millega nad ostnud, vaid hind, millega nad on - 485 00:36:38,610 --> 00:36:40,500 Praeguse hinna, kui nad müüvad seda. 486 00:36:40,500 --> 00:36:43,660 Viitamiseks praeguse hinna varu, 487 00:36:43,660 --> 00:36:49,120 Te soovite kasutada lookup, mis annab teile hind laos 488 00:36:50,030 --> 00:36:52,650 praegusel ajal. 489 00:36:52,650 --> 00:36:55,930 >> Nüüd on jäänud ajalugu, 490 00:36:55,930 --> 00:37:00,170 mis sa tahad, et võimaldada kasutajal jälgida kõiki oma tehinguid - 491 00:37:00,170 --> 00:37:03,040 tahab näha, kui nad müüsid midagi, kui nad ostsid varu. 492 00:37:03,040 --> 00:37:08,870 Me tahame määrata aja, mis nad tegid, et samuti kui palju nad ostsid 493 00:37:08,870 --> 00:37:11,650 ja mida laos ei olnud. 494 00:37:11,650 --> 00:37:17,800 Kas meil praegu kehtivaid struktuur, mis määrab seda? 495 00:37:17,800 --> 00:37:25,230 Noh, meil on portfell, mis näitab arvu varud, mis kasutajal on 496 00:37:25,230 --> 00:37:26,470 teatava osa. 497 00:37:26,470 --> 00:37:34,060 Aga me struktureerida portfell nii, et see värskendab, kui me ostame mitmekordne 498 00:37:34,060 --> 00:37:40,190 arvestades, et ajalugu peaks - kui ostad Apple, 10 aktsiat, ja siis hiljem müüa 5, 499 00:37:40,190 --> 00:37:44,040 siis tahaks näha neid eraldi eraldi meetmetena, eraldi ridadel. 500 00:37:44,040 --> 00:37:48,520 Arvestades, et hagi visualiseerida, et meie portfelli tabel 501 00:37:48,520 --> 00:37:52,540 oleks lihtsalt uuendada selle konkreetse rea, 502 00:37:52,540 --> 00:37:55,740  nii et me oleme ilmselt läheb taha teises tabelis. 503 00:37:55,740 --> 00:38:00,460 Meie andmebaasis on meil kasutajate tabel, meil on meie portfelli tabel, 504 00:38:00,460 --> 00:38:04,090 ja nüüd me ilmselt tahavad ajalugu tabel. 505 00:38:04,090 --> 00:38:08,070 See ajalugu tabelit saab jälgida praegust kuupäeva, 506 00:38:08,070 --> 00:38:12,800 samuti eelkõige aktsia sümbol, samuti kui palju aktsiaid, 507 00:38:12,800 --> 00:38:15,410 ja siis milliseid meetmeid ta on - 508 00:38:15,410 --> 00:38:18,800 kas sa ostsid need aktsiad või kas sa müüsid neid. 509 00:38:20,660 --> 00:38:25,720 >> Selleks et tulla toime päevast on paar võimalust, et võite seda teha. 510 00:38:25,720 --> 00:38:28,820 PHP on viis jälgida, kuupäev, mida saab otsida ise. 511 00:38:28,820 --> 00:38:33,990 SQL võid kasutada ka praegu ega praegune timestamp. See on sinust. 512 00:38:33,990 --> 00:38:40,720 Lihtsalt veenduge, et iga kord, kui kasutaja ostab või müüb, siis saad neid uuendada raha 513 00:38:40,720 --> 00:38:46,750 Kasutajad tabel, saate ajakohastamine rida portfellide tabel, 514 00:38:46,750 --> 00:38:50,900 siis saate ka ajakohastamine ajalugu, 515 00:38:50,900 --> 00:38:56,260 nii et saab olema 3 eraldi SQL päringuid, et teid kutsutakse seal. 516 00:38:58,640 --> 00:39:01,530 Meil on hunnik funktsionaalsus nüüd. 517 00:39:01,530 --> 00:39:10,600 >> Lihtsalt paar meeldetuletust, et oma indeksi faili, tahad linkida vähemalt oma - 518 00:39:10,600 --> 00:39:15,550 kuid sa tahad, et võimaldada kasutajal linkida buy.php lehel. 519 00:39:15,550 --> 00:39:23,560 See saab lubada kasutajal - buy.php on kontroller, nii et läheb kas 520 00:39:23,560 --> 00:39:29,170 Kirjuta teil - et läheb teile saata vormi, mis võimaldab teil vaadata asju üles. 521 00:39:29,170 --> 00:39:34,420 Meil on ajalugu. Oleme logib välja, saad koguaeg ja siis müüa. 522 00:39:34,420 --> 00:39:37,350 Need on minimaalse mida soovite näidata. 523 00:39:37,350 --> 00:39:43,640 Seoses portfelli portfell on tegelikult näidatud esilehele. 524 00:39:43,640 --> 00:39:52,050 Kui läheme indeks, siin me näeme, et see muudab portfolio.php 525 00:39:52,050 --> 00:40:00,050 ja möödub assotsiatiivne massiiv - põhiliselt pealkiri võrdub portfelli. 526 00:40:00,050 --> 00:40:02,610 Niisiis, see on kontroller. 527 00:40:02,610 --> 00:40:08,000 Kui läheme malli portfolio.php, 528 00:40:08,000 --> 00:40:18,060 siis kõik see on on - kuvab põhimõtteliselt pilt, mis ütleb, oh, see sait on valmimisjärgus. 529 00:40:18,060 --> 00:40:23,810 Hiljem, kui olete läbima - you'll olla läbivad põhiliselt täpsemat teavet. 530 00:40:23,810 --> 00:40:27,400 Selle asemel, et lihtsalt pealkiri, saate arvatavasti läbivad rohkem asju. 531 00:40:27,400 --> 00:40:32,010 Kui teil on need väärtused, siis portfolio.php saab käsitleda neid väärtusi 532 00:40:32,010 --> 00:40:34,490 ja nende trükkimise läbi mingit järjekorras. 533 00:40:34,490 --> 00:40:41,660 >> Kui olete täitnud kõik need, siis tuleb ka rakendada veel 1 funktsioon. 534 00:40:41,660 --> 00:40:44,890 See võib olla kas lubab kasutajal muuta oma salasõna, 535 00:40:44,890 --> 00:40:50,110 lähtestada oma parool, kui nad on unustanud - nii et paroolilähtestusketas, siis 536 00:40:50,110 --> 00:40:54,560 sa ilmselt ka soovite muuta registreeru nii, et see võimaldab neil määrata talle, 537 00:40:54,560 --> 00:40:57,910 nii et kui nad unustavad oma parooli, siis nad saavad selle. 538 00:40:57,910 --> 00:41:02,870 Nad saavad ilmselt kandma oma kasutajanimi ja seejärel talle saadetakse neile 539 00:41:02,870 --> 00:41:06,180 koos lingiga saaks lähtestada oma parool. 540 00:41:06,180 --> 00:41:10,980 Sul võib olla midagi, mis võimaldab kasutajatel saada tulu 541 00:41:10,980 --> 00:41:12,380 iga kord, kui nad midagi müüa või osta, 542 00:41:12,380 --> 00:41:19,910 ja siis lõpuks, et nad saaksid lisada raha oma kodulehel. 543 00:41:19,910 --> 00:41:24,970 Lihtsalt minna tagasi mõiste kontrollerid ja malle natuke. 544 00:41:24,970 --> 00:41:31,170 Sa pead midagi - nii et sa pead kontroller siin. 545 00:41:31,170 --> 00:41:35,080 Just nüüd, me vaatame login.php näiteks. 546 00:41:35,080 --> 00:41:38,220 Kui meil on kontroller, põhiliselt see vőtab 2 juhul. 547 00:41:38,220 --> 00:41:42,090 Kui meil on kontrollerid, me oleme selles tükis, et me oleme ka omamoodi tegelevad 548 00:41:42,090 --> 00:41:43,880 kui meil on vormid ka. 549 00:41:43,880 --> 00:41:47,500 Regulaator põhimõtteliselt on eraldi meetmed - 550 00:41:47,500 --> 00:41:53,880 üks, kui vorm on juba esitatud, ja siis kaks, kui kasutaja on tulemas sellele lehele 551 00:41:53,880 --> 00:41:56,870 esimest korda ja ikka on vaja sisestada sellisel kujul. 552 00:41:56,870 --> 00:42:02,820 >> Ma lähen, et minna juhul, enne läheb kuni esimese puhul, millel kujul sisse 553 00:42:02,820 --> 00:42:12,640 Siin me ütleme, kui vorm on esitatud meetodil postitus - 554 00:42:12,640 --> 00:42:13,580 ärge muretsege, et natuke. 555 00:42:13,580 --> 00:42:19,780 Ärge muretsege, et liiga palju, kuid aru, et põhimõtteliselt see funktsioon tegeleb 556 00:42:19,780 --> 00:42:22,430 kas vorm on esitatud või mitte. 557 00:42:22,430 --> 00:42:25,640 See tingimus on tõene, kui kasutaja on esitanud vormi. 558 00:42:25,640 --> 00:42:45,940 Kui ei, siis me ei kavatse soovite helistada krohvi login_form.php, ja siis liigu pealkirjas. 559 00:42:45,940 --> 00:42:48,010 See pealkiri on lihtsalt põhimõtteliselt läheb ilmuvad päises. 560 00:42:48,010 --> 00:42:54,990 Mis see on põhimõtteliselt ütleb, okei - hästi, kui kasutaja läheb login.php 561 00:42:54,990 --> 00:43:00,310 ja ei ole tegelikult sisse loginud, siis ma tahan saata neid lehele, mis on sellisel kujul 562 00:43:00,310 --> 00:43:03,160 mis võimaldab neil sisend kasutajanimi ja parool. 563 00:43:03,160 --> 00:43:07,590 Siis ma lähen LOGIN_FORM ja siis see on praegusel kujul. 564 00:43:07,590 --> 00:43:13,750 Siis, kui kasutaja väidab, et vorm, nad ei kavatse esitada see login.php 565 00:43:13,750 --> 00:43:15,840 meetodil postitus. 566 00:43:15,840 --> 00:43:21,560 Siis ma olen tegelikult läheb siseneda käesolevas paragrahvis minu kui-teine ​​silmus. 567 00:43:21,560 --> 00:43:29,560 Siis on siin, et tegeleme väärtused vormi sisestatud. 568 00:43:29,560 --> 00:43:32,800 See on siin, et tegeleme nendega. 569 00:43:32,800 --> 00:43:40,860 >> Siis kui sa tegelema need väärtused - kui olete tegelevad - 570 00:43:40,860 --> 00:43:46,640 öelda me tegeleme quote.php lehele, kus keegi saab sisestada varu, mis 571 00:43:46,640 --> 00:43:49,950 nad tahavad vaadata, ja siis vaata, et ekraan - 572 00:43:49,950 --> 00:43:52,850 selline on sarnane siin. 573 00:43:52,850 --> 00:43:56,070 Siin on meil sisäänkirjautumislomake - you'd ilmselt päring - 574 00:43:56,070 --> 00:44:00,290 aga siis, kui kasutaja on tegelikult esitatud teabe kohta, 575 00:44:00,290 --> 00:44:04,810 siis tahad kontroller läbima teise malli 576 00:44:04,810 --> 00:44:07,430 , mis näitab neile, et tegelikud andmed. 577 00:44:07,430 --> 00:44:11,250 Nii siis õige siin, siis saad ilmselt - 578 00:44:11,250 --> 00:44:18,830 ümber lõpuks oma seisundi siin - kui meetod võrdub postitus - 579 00:44:18,830 --> 00:44:22,520 siis sa ilmselt tahad muuta teisele lehele - Näita tsiteerin - 580 00:44:22,520 --> 00:44:28,040 mis saadab teid sellele lehele - show_quote.php-- 581 00:44:28,040 --> 00:44:34,120 ja siis selle faili viide neid väärtusi. 582 00:44:34,120 --> 00:44:36,480 Kas see on loogiline? 583 00:44:36,480 --> 00:44:40,390 >> Meil on kontroller, mis põhiliselt tegeleb 2 juhul - 584 00:44:40,390 --> 00:44:42,710 kas oled sisestanud kujul või mitte. 585 00:44:42,710 --> 00:44:43,950 Kui te pole sisestanud kujul, 586 00:44:43,950 --> 00:44:47,300 siis suunab teid sellisel kujul, mis seejärel panna teid tagasi sellele lehele. 587 00:44:47,300 --> 00:44:54,020 Siis, kui teil on informatsiooni töötleja, et keha hakkab tegelema, et 588 00:44:54,020 --> 00:44:59,750 teabe vastavalt vajadusele - kas soojaks väärtused laos, 589 00:44:59,750 --> 00:45:04,150 ja siis kui see on tutvunud nende väärtuste ja on neid kenasti vormindatud massiiv, 590 00:45:04,150 --> 00:45:08,180 siis ei liigu et massiivi arvesse mudel lehele 591 00:45:08,180 --> 00:45:10,330  mis tegeleb kirjutamine seda informatsiooni. 592 00:45:10,330 --> 00:45:14,680 >> Jällegi, kuna see veebi, see saab lõbus olema. 593 00:45:14,680 --> 00:45:20,310 Oleme väljaspool C nii et me oleme mitte ainult ASCII ja et terminaliväljundi, 594 00:45:20,310 --> 00:45:21,800 nii on lõbus sellega. 595 00:45:21,800 --> 00:45:24,920 Võite teha nii visuaalse kui soovite. 596 00:45:24,920 --> 00:45:31,860 Võite lubada kasutajatel sisestada miljoneid dollareid ajal, 597 00:45:31,860 --> 00:45:34,730 või piirata neid ja olema tegelikult tähendab ja annab neile ainult sisestada 1 penn korraga 598 00:45:34,730 --> 00:45:36,330 või midagi sellist. 599 00:45:36,330 --> 00:45:38,550 Kindlasti tuleb kindlasti nautige seda. 600 00:45:38,550 --> 00:45:47,030 >> PHP kood on natuke lihtsam, et see on natuke lihtsam kaardistada oma pseudokoodi 601 00:45:47,030 --> 00:45:50,070 arvesse tegelikku rakendamist. 602 00:45:50,070 --> 00:45:56,320 Nii, kindlasti on lõbus, sest see on tegelikult meie viimane tükk CS50. 603 00:45:56,320 --> 00:46:01,150 Mis, et see oli kiirtutvustus 7. 604 00:46:01,150 --> 00:46:04,640 Kui olete lõpetanud vaadates läbikäiguks ja lõpetas oma pset, 605 00:46:04,640 --> 00:46:09,590 siis need olid ka psets, ja nüüd oleme valmistootega - 606 00:46:09,590 --> 00:46:12,330 pärast saame läbi viktoriini 1. 607 00:46:12,330 --> 00:46:16,200 Siis loodetavasti saate kasutada tööriistu, mida olen õppinud psets - 608 00:46:16,200 --> 00:46:21,980 mitte ainult süntaks, kuid rohkem abstraktne mõiste, kuidas teha teatud - 609 00:46:21,980 --> 00:46:24,950 meeldib, ma tahan seda teha ja siis tegelikult rakendatakse seda. 610 00:46:24,950 --> 00:46:28,740 Õppimine, kuidas võitlevad kaudu süntaks ja levitamine kood. 611 00:46:28,740 --> 00:46:33,020 Lugemine teiste inimeste koodi, ja siis tõlgendamisel et kasutades olemasolevaid funktsioone. 612 00:46:33,020 --> 00:46:37,360 >> Niisiis, edu sulle viimase pset. 613 00:46:37,360 --> 00:46:39,930 See on olnud rõõm juhtida trajektooridega. 614 00:46:39,930 --> 00:46:40,940 Loodan, et nad olen olnud kasulik teile. 615 00:46:40,940 --> 00:46:46,560 Need olid Walkthroughs, ja tänan väga. 616 00:46:52,580 --> 00:46:56,200 [CS50.TV]