1 00:00:00,000 --> 00:00:08,802 2 00:00:08,802 --> 00:00:11,140 >> JASON HIRSCHHORN: Welcome alle til uge otte. 3 00:00:11,140 --> 00:00:13,420 Vi har en spændende uge foran os. 4 00:00:13,420 --> 00:00:21,390 I gutter har due i denne sidste par forelæsninger til PHP, SQL, HTML, CSS, så 5 00:00:21,390 --> 00:00:27,270 fire helt nye sprog, der går at tage resten dette kursus. 6 00:00:27,270 --> 00:00:30,750 Vi vil også lære et par andre sprog, før kursets slutning. 7 00:00:30,750 --> 00:00:35,200 Men alligevel, det er overflødigt at sige, det er en meget spændende tid i CS50, du nu 8 00:00:35,200 --> 00:00:41,200 har mestret C, angiveligt, og er går videre til programmering til hjemmesider. 9 00:00:41,200 --> 00:00:45,320 >> Så i denne uge, vi kommer til at gå på en hvirvelvind tur gennem fire 10 00:00:45,320 --> 00:00:50,200 sprog, jeg lige har nævnt, HTML, CSS, PHP og SQL. 11 00:00:50,200 --> 00:00:53,340 Og forhåbentlig vil vi forlade masser af tid i slutningen af ​​afsnittet for at tale 12 00:00:53,340 --> 00:00:58,800 om denne uges P-sæt og svar eventuelle spørgsmål, du har alle. 13 00:00:58,800 --> 00:01:03,500 >> Hver uge, den samme liste over ressourcer for dig, for at hjælpe dig med ugens 14 00:01:03,500 --> 00:01:05,780 problem sæt og gå over materialet - 15 00:01:05,780 --> 00:01:09,440 men i denne uge i særdeleshed, for disse webbaserede problemet sæt, der er en 16 00:01:09,440 --> 00:01:12,350 væld af andre ressourcer ud der, at du vil sandsynligvis 17 00:01:12,350 --> 00:01:13,500 finde utroligt hjælpsomme. 18 00:01:13,500 --> 00:01:14,670 Jeg har dem op her. 19 00:01:14,670 --> 00:01:17,570 Jeg e-mailer dig dette efter afsnit, og dette også være online. 20 00:01:17,570 --> 00:01:21,700 >> Men i særdeleshed, er der masser af store ressourcer derude. 21 00:01:21,700 --> 00:01:24,380 Der er også nogle ikke så stor dem, så vær på vagt over for dem. 22 00:01:24,380 --> 00:01:28,210 Men på dette dias, jeg har fire gode ressourcer, en for hver af de 23 00:01:28,210 --> 00:01:30,600 sprog, du skal arbejde med i denne uge - 24 00:01:30,600 --> 00:01:35,090 en henvisning ark til HTML, en reference ark til CSS. 25 00:01:35,090 --> 00:01:38,320 Denne ret her er PHP manual. 26 00:01:38,320 --> 00:01:42,110 >> Så i stedet for at skrive mand og derefter en PHP kommando, det er her du ville 27 00:01:42,110 --> 00:01:46,980 gå at kigge op funktionsprototypen og eksempler og også nogle tips og 28 00:01:46,980 --> 00:01:48,770 tricks til at bruge PHP funktioner. 29 00:01:48,770 --> 00:01:51,590 Du skal bruge dette site ofte, så jeg vil opfordre dig til at blive 30 00:01:51,590 --> 00:01:52,280 fortrolig med det. 31 00:01:52,280 --> 00:01:55,860 Det kan være lidt teknisk, men det giver også et væld af ressourcer og 32 00:01:55,860 --> 00:02:00,440 eksempler på alle de funktioner og endog andre, som hvordan man bruger arrays eller 33 00:02:00,440 --> 00:02:01,500 forskellige typer af variabler. 34 00:02:01,500 --> 00:02:03,480 Dette site er meget nyttigt for PHP. 35 00:02:03,480 --> 00:02:07,160 >> Og så, til SQL, hvis du dykkede ind i denne uges problem sæt, vil du vide 36 00:02:07,160 --> 00:02:09,160 at vi bruger en database. 37 00:02:09,160 --> 00:02:13,340 Og vi få adgang til denne database via en relativt nice brugergrænseflade. 38 00:02:13,340 --> 00:02:15,760 Eller det er en måde at få adgang databasen. 39 00:02:15,760 --> 00:02:19,670 Brugergrænsefladen er kaldet phpMyAdmin. 40 00:02:19,670 --> 00:02:23,400 Der er en fane SQL, som vi vil se på senere i dag. 41 00:02:23,400 --> 00:02:28,230 >> Og du kan skrive ind i deres prøve SQL forespørgsler, at gøre tingene på din database 42 00:02:28,230 --> 00:02:29,780 og derefter køre disse forespørgsler. 43 00:02:29,780 --> 00:02:31,850 Og hvis de er korrekte, vil det sige, denne ene er korrekt. 44 00:02:31,850 --> 00:02:33,480 Hvis de er forkerte, det vil sige, det er forkert. 45 00:02:33,480 --> 00:02:37,260 Det er et godt sted at øve dit SQL-forespørgsler, før du skriver dem ind 46 00:02:37,260 --> 00:02:39,990 din kode, for at sikre, at du har formatet korrekt. 47 00:02:39,990 --> 00:02:42,080 >> Endelig er en anden hjemmeside på her. 48 00:02:42,080 --> 00:02:45,390 Det er den hjemmeside, hvor du kan gå ud og tjekke for at sikre din 49 00:02:45,390 --> 00:02:47,520 HTML-kode er gyldig. 50 00:02:47,520 --> 00:02:51,250 Så før du tænder dine problemer sæt denne uge, sørge for alle 51 00:02:51,250 --> 00:02:52,690 din HTML er gyldig. 52 00:02:52,690 --> 00:02:55,840 >> I sidste uge, havde du løber valgrind, at sørg for at du ikke havde nogen memory leaks. 53 00:02:55,840 --> 00:02:59,050 I denne uge, skal du sørge for alle af din kode er gyldig HTML5. 54 00:02:59,050 --> 00:03:02,140 Hvis det ikke er gyldigt HTML5, er du kommer til at få punkter off. 55 00:03:02,140 --> 00:03:03,110 >> Så sørg for - 56 00:03:03,110 --> 00:03:05,700 bare fordi det virker ikke mener det er fuldt gyldig. 57 00:03:05,700 --> 00:03:09,770 Kør din kode via denne hjemmeside før du tænder det i. 58 00:03:09,770 --> 00:03:10,810 Igen, her er hjemmesiden. 59 00:03:10,810 --> 00:03:15,150 >> Hvis du har feedback til mig, vi har et par af flere sektioner tilbage, 60 00:03:15,150 --> 00:03:18,100 og jeg vil altid gøre, hvad jeg kan for at give jer alle med den bedste sektion 61 00:03:18,100 --> 00:03:19,460 opleve muligt. 62 00:03:19,460 --> 00:03:22,115 Så lad mig vide, hvis der er noget jeg kan gøre for at forbedre eller hvis der er 63 00:03:22,115 --> 00:03:24,730 ting, du ser, at jeg kunne gøre det bedre. 64 00:03:24,730 --> 00:03:25,710 Tak, Avi. 65 00:03:25,710 --> 00:03:27,610 Sæt det på hjemmesiden. 66 00:03:27,610 --> 00:03:31,870 >> Dette var cykel, jeg havde, da jeg var, lad os sige, fire derhjemme. 67 00:03:31,870 --> 00:03:34,500 Det er en Teenage Mutant Ninja Turtle cykling, i tilfælde af at du ikke fortælle, 68 00:03:34,500 --> 00:03:35,345 fordi det er lidt sløret. 69 00:03:35,345 --> 00:03:38,900 Du kan få det nu på ToysRUs for, tror jeg, omkring 100 dollars. 70 00:03:38,900 --> 00:03:42,690 >> Men funktionen af ​​denne cykel, som jeg ønsker du skal være opmærksom på er disse 71 00:03:42,690 --> 00:03:43,480 lige her. 72 00:03:43,480 --> 00:03:44,980 Det er de støttehjul. 73 00:03:44,980 --> 00:03:50,230 Indtil nu har du været håndholdte gennem C. Og vi har taget en lang 74 00:03:50,230 --> 00:03:53,610 gang to måneder og, at gå gennem C. 75 00:03:53,610 --> 00:03:55,440 >> For disse næste par sprog, Vi kommer ikke til at 76 00:03:55,440 --> 00:03:56,600 bruge så meget tid. 77 00:03:56,600 --> 00:03:58,350 De støttehjul kommer fra. 78 00:03:58,350 --> 00:04:01,360 Og vi kommer til at dykke ned i disse sprog hurtigt og bevæge sig gennem 79 00:04:01,360 --> 00:04:04,720 dem hurtigt, hvilket ikke er at sige, at vi bare at forlade dig svømning 80 00:04:04,720 --> 00:04:07,590 derude med ingen måde at støtte dig selv eller finde ud af, hvordan disse 81 00:04:07,590 --> 00:04:08,270 sprog virker. 82 00:04:08,270 --> 00:04:10,750 Jeg bare viste dig en liste over ressourcer til at hjælpe dig. 83 00:04:10,750 --> 00:04:14,560 >> Men husk på, at PHP er utroligt ligner C. Vi vil gå over 84 00:04:14,560 --> 00:04:15,970 det i dag, og nogle af forskellene. 85 00:04:15,970 --> 00:04:17,990 Men for det meste, Der er efter sløjfer. 86 00:04:17,990 --> 00:04:18,750 Der er, hvis betingelserne. 87 00:04:18,750 --> 00:04:20,680 >> Når du ønsker at løse et problem, du kommer til at bruge en 88 00:04:20,680 --> 00:04:22,029 kombination af disse. 89 00:04:22,029 --> 00:04:22,920 Det er meget ens. 90 00:04:22,920 --> 00:04:26,040 Logikken bør være meget lig hvad du har gjort i fortiden. 91 00:04:26,040 --> 00:04:29,810 Hvad er virkelig nyt i denne uge er det syntaks og hvordan du udtrykker dig. 92 00:04:29,810 --> 00:04:32,850 Og du ønsker at skrive en for-løkke, men det ser måske en lille smule anderledes. 93 00:04:32,850 --> 00:04:35,910 Eller du ønsker at oprette et array, men det ser måske en lille smule anderledes. 94 00:04:35,910 --> 00:04:39,920 >> Så husk, at bevæge sig fremad, logikken er meget lig det 95 00:04:39,920 --> 00:04:41,020 du har gjort i fortiden. 96 00:04:41,020 --> 00:04:44,030 Men du skal nu støde en masse nye syntaks. 97 00:04:44,030 --> 00:04:47,600 Og vi kommer ikke til at gå dig gennem alle elementer i syntaksen. 98 00:04:47,600 --> 00:04:53,020 Så det er virkelig op til dig at finde ud af, online eller via nå ud på 99 00:04:53,020 --> 00:04:58,770 Diskuter eller e-maile mig eller tale med hinanden, hvordan man skriver tingene i 100 00:04:58,770 --> 00:05:02,580 PHP og hvordan man skriver SQL-forespørgsler og hvordan man bruger HTML og CSS. 101 00:05:02,580 --> 00:05:06,160 >> Men bare så du ved, det er ikke det vi forsøger at smide dig derude 102 00:05:06,160 --> 00:05:07,630 igen for at svømme hajerne. 103 00:05:07,630 --> 00:05:10,600 Dette er, hvad vil du sandsynligvis gøre med din endelige projekt, hvis du vælger en 104 00:05:10,600 --> 00:05:15,150 andet sprog, som IOS og Objective C, eller hvis du beslutter at starte 105 00:05:15,150 --> 00:05:17,580 programmering i fremtiden, og dykke ned i andre sprog, 106 00:05:17,580 --> 00:05:19,210 ligesom Python eller Ruby. 107 00:05:19,210 --> 00:05:23,380 >> Ofte, logikken er meget ens på tværs af alle disse sprog, og det 108 00:05:23,380 --> 00:05:24,560 syntaks er, hvad der er anderledes. 109 00:05:24,560 --> 00:05:27,560 Og det vil være op til dig, som programmør, til at gå bruge web 110 00:05:27,560 --> 00:05:30,790 ressourcer til rådighed for dig og tal ud af, hvordan at udtrykke, hvad du ved, hvordan 111 00:05:30,790 --> 00:05:33,200 at udtrykke i C, i et andet sprog. 112 00:05:33,200 --> 00:05:36,410 Så det er god praksis, både for din afsluttende projekt, og igen, for 113 00:05:36,410 --> 00:05:40,150 hvad vil du sandsynligvis gøre når du forlader CS50. 114 00:05:40,150 --> 00:05:42,550 >> Før vi går videre, gør nogen har spørgsmål om, hvad 115 00:05:42,550 --> 00:05:43,800 Jeg har gjort hidtil? 116 00:05:43,800 --> 00:05:52,450 117 00:05:52,450 --> 00:05:53,120 Store. 118 00:05:53,120 --> 00:05:53,910 Lad os komme videre. 119 00:05:53,910 --> 00:05:59,090 >> Først, vi vil kort tale om kommandoen chmod. 120 00:05:59,090 --> 00:06:02,420 Det, vi vil gøre i starten af dine problemer indstillet. 121 00:06:02,420 --> 00:06:05,050 En af de allerførste vejledning for dig, når du henter den 122 00:06:05,050 --> 00:06:09,280 fordeling kode, er at ændre den tilladelser for de filer og 123 00:06:09,280 --> 00:06:11,350 mapper, du modtager. 124 00:06:11,350 --> 00:06:16,430 >> Kan nogen vove et gæt eller kender hvorfor det er vigtigt at ændre 125 00:06:16,430 --> 00:06:20,012 tilladelser for visse filer og mapper på din computer? 126 00:06:20,012 --> 00:06:20,956 Avi - 127 00:06:20,956 --> 00:06:24,796 >> PUBLIKUM: Så ingen undtagen for du kan se, hvad du laver? 128 00:06:24,796 --> 00:06:25,470 >> JASON HIRSCHHORN: OK. 129 00:06:25,470 --> 00:06:28,330 Så hvis vi ønsker at sætte noget på nettet og du har tilladelser indstillet, at 130 00:06:28,330 --> 00:06:30,960 kun du kan se noget, så ingen andre kan 131 00:06:30,960 --> 00:06:32,530 se, hvad du har oprettet. 132 00:06:32,530 --> 00:06:33,380 Hvad ellers? 133 00:06:33,380 --> 00:06:34,320 Ja. 134 00:06:34,320 --> 00:06:37,360 >> PUBLIKUM: Undgå alle andre, at du ønsker ikke at se noget, fra 135 00:06:37,360 --> 00:06:37,870 se noget. 136 00:06:37,870 --> 00:06:38,820 >> JASON HIRSCHHORN: Det er sandt også. 137 00:06:38,820 --> 00:06:40,730 Der er sikkert noget kode, du skriver, at du ikke 138 00:06:40,730 --> 00:06:42,690 vil have folk til at se. 139 00:06:42,690 --> 00:06:46,190 Du er sikkert OK med mennesker at se din HTML og dit JavaScript. 140 00:06:46,190 --> 00:06:50,360 Men din PHP, en back-end kode, en masse logikken til din kode, måske 141 00:06:50,360 --> 00:06:53,200 ting, der gemmer nogle af dine adgangskoder til din database, behøver du ikke 142 00:06:53,200 --> 00:06:55,880 vil have folk til at se, at type oplysninger. 143 00:06:55,880 --> 00:06:59,420 >> Så det er vigtigt, at hver enkelt fil og mappe vi opretter, har tilladelser 144 00:06:59,420 --> 00:07:03,660 gælder for, hvorvidt vi ønsker folk til at se disse typer af filer og 145 00:07:03,660 --> 00:07:08,030 mapper og være i stand til at få adgang til dem og potentielt endda ændre dem. 146 00:07:08,030 --> 00:07:09,920 >> Så der er tre typer af tilladelser. 147 00:07:09,920 --> 00:07:14,980 Der er en læse-tilladelse, hvilket betyder, du kan læse en fil eller en liste af 148 00:07:14,980 --> 00:07:16,490 Indholdet af fortegnelsen. 149 00:07:16,490 --> 00:07:20,820 Der er skriverettigheder, som betyder, at du kan ændre en fil eller ændre 150 00:07:20,820 --> 00:07:24,910 en mappe og derefter udføre tilladelse, hvilket betyder, at du kan 151 00:07:24,910 --> 00:07:31,060 eksekvere en fil eller rettere, du kan flytte ind i en mappe. 152 00:07:31,060 --> 00:07:34,470 Så CD noget, hvis du har den tilladelse til at udføre det, kan du flytte 153 00:07:34,470 --> 00:07:37,300 ind i denne mappe. 154 00:07:37,300 --> 00:07:38,510 >> Dette er et kort eksempel. 155 00:07:38,510 --> 00:07:40,700 Igen, du har gået over dette i problemet indstillet. 156 00:07:40,700 --> 00:07:44,630 Men jeg oprette en mappe med kommandoen mkdir. 157 00:07:44,630 --> 00:07:46,320 Jeg ændre tilladelserne. 158 00:07:46,320 --> 00:07:48,505 Disse to linjer rent faktisk gør præcis de samme ting. 159 00:07:48,505 --> 00:07:52,580 Det er at illustrere, at syntaksen for skiftende tilladelser, uanset om du gør 160 00:07:52,580 --> 00:07:55,600 a + x eller 711, der er de samme. 161 00:07:55,600 --> 00:07:57,550 >> Vi ser ned på denne nice tabel. 162 00:07:57,550 --> 00:07:59,960 Vi ser, at der er bruger tilladelserne først. 163 00:07:59,960 --> 00:08:03,280 Det er dig, den enkelte, og din server, potentielt. 164 00:08:03,280 --> 00:08:05,070 Og så er der gruppen og andre. 165 00:08:05,070 --> 00:08:09,350 Forskellene mellem dem to relativt ubetydelige. 166 00:08:09,350 --> 00:08:11,170 Så generelt vil vi klumpe dem sammen. 167 00:08:11,170 --> 00:08:14,380 >> Men det væsentlige, hvis vi har en fil kaldet omfatter, at vi ønsker at være 168 00:08:14,380 --> 00:08:18,760 stand til at redigere os selv og at vi ønsker andre til at være i stand til at udføre, 169 00:08:18,760 --> 00:08:20,560 det er den tilladelse 711. 170 00:08:20,560 --> 00:08:22,390 Og vi ser, at ned her i denne tabel. 171 00:08:22,390 --> 00:08:24,730 Vi har en læse-, skrive og udføre. 172 00:08:24,730 --> 00:08:26,790 For hver af os, vi ønsker at være i stand til at gøre dem. 173 00:08:26,790 --> 00:08:30,160 Group og andre, vi kun ønsker dem at være i stand til at udføre. 174 00:08:30,160 --> 00:08:33,860 >> Den måde, vi oversætte det i en række 175 00:08:33,860 --> 00:08:36,870 tilladelse er gennem binær. 176 00:08:36,870 --> 00:08:41,780 Så hvis vi har tre dem, det er en 1 i dem kolonnen, en 1 i parvis 177 00:08:41,780 --> 00:08:43,049 søjle, en 1 fours kolonne. 178 00:08:43,049 --> 00:08:45,180 Det er 7 lige der. 179 00:08:45,180 --> 00:08:47,450 Og denne tilladelse er 1.. 180 00:08:47,450 --> 00:08:48,390 Denne tilladelse er 1.. 181 00:08:48,390 --> 00:08:54,200 Så 711, når er det samme som at give selv læse, skrive og udføre, 182 00:08:54,200 --> 00:08:56,660 og alle andre udføre privilegier. 183 00:08:56,660 --> 00:08:59,180 >> Denne linje lige her, vi generelt vil have læse og skrive, når vi 184 00:08:59,180 --> 00:09:00,250 oprette en mappe. 185 00:09:00,250 --> 00:09:04,650 Så denne linje her blot tilføjer eksekvere privilegier til alle. 186 00:09:04,650 --> 00:09:07,450 Så det ville være beslægtet med, i Udover hvad vi har, 187 00:09:07,450 --> 00:09:09,930 tilsætte 1, 1, 1 til alle. 188 00:09:09,930 --> 00:09:13,880 >> Dette, er det unødvendigt at tilføje læse og skrive. 189 00:09:13,880 --> 00:09:16,130 Men hvis du kommer til at bruge tallene, du kan ikke bare tilføje noget. 190 00:09:16,130 --> 00:09:19,070 Du overskrive uanset tilladelse var der og gennemføre dem med det nye 191 00:09:19,070 --> 00:09:20,920 nummer, du giver. 192 00:09:20,920 --> 00:09:21,930 Det var temmelig hurtig. 193 00:09:21,930 --> 00:09:24,115 Er der nogen har nogen spørgsmål om at ændre tilladelser? 194 00:09:24,115 --> 00:09:28,460 195 00:09:28,460 --> 00:09:28,950 >> OK. 196 00:09:28,950 --> 00:09:32,480 Hvis jeg har en PHP-fil, hvilke tilladelser ønsker jeg det at have? 197 00:09:32,480 --> 00:09:36,638 198 00:09:36,638 --> 00:09:38,780 Dette er i det problem indstillede spec. 199 00:09:38,780 --> 00:09:41,590 Så du kan se på spec og derefter læse mig svaret. 200 00:09:41,590 --> 00:09:45,820 201 00:09:45,820 --> 00:09:48,605 >> PUBLIKUM: Du ønsker, at brugeren har læse-skrive-tilladelser. 202 00:09:48,605 --> 00:09:51,080 Og du vil have alle andet at have ingenting. 203 00:09:51,080 --> 00:09:53,060 >> JASON HIRSCHHORN: Og hvad tal er det? 204 00:09:53,060 --> 00:09:53,480 >> PUBLIKUM: 600. 205 00:09:53,480 --> 00:09:54,840 >> JASON HIRSCHHORN: 600. 206 00:09:54,840 --> 00:09:59,550 Så chmod 600 - når du udskriver en PHP-fil, chmod til 600. 207 00:09:59,550 --> 00:10:00,370 OK. 208 00:10:00,370 --> 00:10:01,890 Jeg har en mappe. 209 00:10:01,890 --> 00:10:04,870 Nogen udover Jeff, Jeg har en fil mappe. 210 00:10:04,870 --> 00:10:08,060 Hvilke tilladelser ønsker jeg at give til denne mappe - 211 00:10:08,060 --> 00:10:11,620 også i det problem indstillet spec, lige under dette svar eller 212 00:10:11,620 --> 00:10:14,840 det tidligere svar? 213 00:10:14,840 --> 00:10:16,160 Også potentielt på slide - 214 00:10:16,160 --> 00:10:16,450 Marcus. 215 00:10:16,450 --> 00:10:17,230 >> PUBLIKUM: Til 216 00:10:17,230 --> 00:10:18,180 mappe, det er 711. 217 00:10:18,180 --> 00:10:19,590 JASON HIRSCHHORN: 711 - 218 00:10:19,590 --> 00:10:21,230 så en mappe, du ønsker at give 711. 219 00:10:21,230 --> 00:10:25,280 Du vil være i stand til at læse denne mappe, ændre mapper, flytte ind 220 00:10:25,280 --> 00:10:25,785 mappen. 221 00:10:25,785 --> 00:10:28,865 Og du vil have alle andre til at være i stand at navigere i denne mappe, men 222 00:10:28,865 --> 00:10:30,790 ikke nødvendigvis ændre indholdet. 223 00:10:30,790 --> 00:10:33,720 Hvad med en ikke-PHP-fil, sige, en JavaScript-fil? 224 00:10:33,720 --> 00:10:36,090 Hvilke tilladelser ønsker vi at give denne type fil? 225 00:10:36,090 --> 00:10:37,020 >> PUBLIKUM: 644. 226 00:10:37,020 --> 00:10:38,030 >> JASON HIRSCHHORN: 644 - 227 00:10:38,030 --> 00:10:40,010 hvorfor vi ønsker at give det 644? 228 00:10:40,010 --> 00:10:42,880 >> PUBLIKUM: at lade andre mennesker at læse den. 229 00:10:42,880 --> 00:10:44,840 Og du læse eller skrive det. 230 00:10:44,840 --> 00:10:48,540 >> JASON HIRSCHHORN: Så lige, alle ellers kan læse, at JavaScript-fil. 231 00:10:48,540 --> 00:10:51,420 Og du kan ændre det, udover at være i stand til at læse den. 232 00:10:51,420 --> 00:10:54,970 Så en af ​​de mest almindelige bugs folk har dette problem sæt og deres 233 00:10:54,970 --> 00:10:58,880 afsluttende projekt, hvis det er en web-baseret endelig projekt, vil de ikke har sat 234 00:10:58,880 --> 00:11:00,170 de korrekte tilladelser. 235 00:11:00,170 --> 00:11:03,180 Og de vil ikke være i stand at se deres hjemmeside. 236 00:11:03,180 --> 00:11:04,840 Eller en bestemt del af deres hjemmeside. 237 00:11:04,840 --> 00:11:06,930 >> Så sørg for at du har indstillet tilladelser korrekt. 238 00:11:06,930 --> 00:11:10,730 Må ikke bare antage, at det vil gøre det automatisk for dig. 239 00:11:10,730 --> 00:11:11,500 >> OK. 240 00:11:11,500 --> 00:11:15,100 Det var en lille ting, som vi har brugt en god mængde tid på, så 241 00:11:15,100 --> 00:11:16,190 kunne vi søm det. 242 00:11:16,190 --> 00:11:18,000 Lad os gå videre til HTML. 243 00:11:18,000 --> 00:11:20,430 >> Og igen, for de næste fire emner, vi kommer til at gå igennem dem 244 00:11:20,430 --> 00:11:21,600 relativt hurtigt. 245 00:11:21,600 --> 00:11:24,980 Så er du velkommen til at stoppe mig på ethvert gang, hvis du har spørgsmål, 246 00:11:24,980 --> 00:11:27,900 uanset om de er relateret til, hvad jeg dækker eller noget fra forelæsning eller 247 00:11:27,900 --> 00:11:29,440 selv fra problemet indstillet. 248 00:11:29,440 --> 00:11:31,690 Stop mig, når du har brug for. 249 00:11:31,690 --> 00:11:34,370 Når vi kommer til slutningen, vi vil bare begynder at gå over problemet sæt. 250 00:11:34,370 --> 00:11:38,100 >> Så HTML står for HyperText Markup Language. 251 00:11:38,100 --> 00:11:41,360 Det er ikke et programmeringssprog. 252 00:11:41,360 --> 00:11:45,800 Alt det gør, er at strukturere dit indhold og også give nogle metadata. 253 00:11:45,800 --> 00:11:52,340 Så for eksempel formodentlig mange af du har brugt Facebook før. 254 00:11:52,340 --> 00:11:56,810 Og du kan indeholde links i, eller du kan sætte et link, som din status. 255 00:11:56,810 --> 00:11:59,070 >> Og så vil du bemærke, at link altid har et flot billede 256 00:11:59,070 --> 00:12:00,450 til det og noget tekst. 257 00:12:00,450 --> 00:12:03,040 Generelt, der er nogle metadata for en webside. 258 00:12:03,040 --> 00:12:05,250 Og det er Facebook-specifikke metadata. 259 00:12:05,250 --> 00:12:07,780 Og så, når Facebook læser at side og indsætte dette link, det 260 00:12:07,780 --> 00:12:10,780 ser til metadata, så det ved, hvad billedet for at vise, hvad 261 00:12:10,780 --> 00:12:13,820 titel til at vise, og hvad abstrakt tekst at vise. 262 00:12:13,820 --> 00:12:17,760 >> Så vi kan omfatte metadata med vores webside ved hjælp af HTML. 263 00:12:17,760 --> 00:12:21,190 Og det hjælper os også struktur indholdet generelt, at 264 00:12:21,190 --> 00:12:25,400 vi ønsker at gå hvor. 265 00:12:25,400 --> 00:12:28,240 >> Alt i HTML er et element. 266 00:12:28,240 --> 00:12:30,690 Og elementer lige her - 267 00:12:30,690 --> 00:12:33,410 denne CS50, tekst er elementet. 268 00:12:33,410 --> 00:12:35,140 Og det har nogle tags. 269 00:12:35,140 --> 00:12:36,690 Det har det et tag. 270 00:12:36,690 --> 00:12:41,730 Og vi bemærker, at der er en a på begynder og derefter en skråstreg a, så 271 00:12:41,730 --> 00:12:43,960 lukning af et tag i slutningen. 272 00:12:43,960 --> 00:12:46,800 Nogle gange er der ikke en åben tag og et tæt tag. 273 00:12:46,800 --> 00:12:49,040 Der er bare én ting. 274 00:12:49,040 --> 00:12:50,640 >> Vi vil se et eksempel på, at på det næste dias. 275 00:12:50,640 --> 00:12:52,640 Så du behøver ikke en åben og et tæt tag. 276 00:12:52,640 --> 00:12:59,570 Men for at dette, er vi omslutter dette CS50 element i et anker tag. 277 00:12:59,570 --> 00:13:03,270 Og i det væsentlige, disse tags fortælle browseren, hvad de skal gøre med 278 00:13:03,270 --> 00:13:04,700 det særlige element. 279 00:13:04,700 --> 00:13:07,380 >> Så igen, CS50 er den tekst, vi kommer til at se. 280 00:13:07,380 --> 00:13:10,060 Og det kommer til at være en type af anker. 281 00:13:10,060 --> 00:13:13,920 Anchor anvendes hovedsageligt for links til noget. 282 00:13:13,920 --> 00:13:16,000 Især som du kan allerede fortælle, dette er en 283 00:13:16,000 --> 00:13:18,950 linke til CS50 hjemmeside. 284 00:13:18,950 --> 00:13:23,160 >> Den næste del af tag - eller generelt, en del af tags 285 00:13:23,160 --> 00:13:24,290 attributter. 286 00:13:24,290 --> 00:13:27,080 Og vi ser her, at a tag har en 287 00:13:27,080 --> 00:13:29,680 tilskriver denne href attribut. 288 00:13:29,680 --> 00:13:32,000 Og de ændre et bestemt mærke. 289 00:13:32,000 --> 00:13:36,100 I virkeligheden, hvis du går til en af ​​de hjemmesider eller henvisninger jeg gav dig 290 00:13:36,100 --> 00:13:39,480 før eller kigge op på et tag online, du vil bemærke, at der er et væld af 291 00:13:39,480 --> 00:13:41,010 potentielle egenskaber. 292 00:13:41,010 --> 00:13:42,310 >> Dette er sandsynligvis en af de mest almindelige. 293 00:13:42,310 --> 00:13:46,090 Det fortæller mig at skabe en linke til den specifikke hjemmeside. 294 00:13:46,090 --> 00:13:50,260 Og attributter generelt er givet, om ikke udelukkende givet, 295 00:13:50,260 --> 00:13:52,350 i nøgleværdipar. 296 00:13:52,350 --> 00:13:55,380 >> Så her er nøglen, href. 297 00:13:55,380 --> 00:13:57,320 Og værdien er dette lige her. 298 00:13:57,320 --> 00:14:01,960 Og der vil komme i handy senere, når vi begynder at bruge nogle biblioteker til 299 00:14:01,960 --> 00:14:07,280 hjælpe os med kode i JavaScript eller skrive HTML-indhold. 300 00:14:07,280 --> 00:14:11,120 Vi bliver ofte kommer til at være - ligesom vi ville gøre matrix beslag 0, og at 301 00:14:11,120 --> 00:14:12,340 ville give os en vis værdi. 302 00:14:12,340 --> 00:14:17,190 >> I fremtiden vil vi gøre en masse ting som noget beslag href. 303 00:14:17,190 --> 00:14:21,180 Og det vil give os værdien af href, eller hvis vi ønsker at opdatere href 304 00:14:21,180 --> 00:14:23,980 tasten og derefter give det en bestemt værdi. 305 00:14:23,980 --> 00:14:28,915 Så ligesom med arrays, hvor vi havde tast 0 eller tast 1 eller tast 2 eller endda med en 306 00:14:28,915 --> 00:14:33,480 hash tabel, ja, med dine hash-tabeller så godt, har du sandsynligvis - det 307 00:14:33,480 --> 00:14:35,790 var en matrix, så tast 0, tast 1, tast 2. 308 00:14:35,790 --> 00:14:38,480 >> Det indeks der, vi kan tænke på det som en nøgle. 309 00:14:38,480 --> 00:14:40,180 Og værdien er, hvad blev opbevaret der. 310 00:14:40,180 --> 00:14:42,760 Alle disse egenskaber er nøgleværdipar. 311 00:14:42,760 --> 00:14:47,370 Og det vil være vigtigt for at ændre dem eller opdatere dem eller 312 00:14:47,370 --> 00:14:51,020 indsætte dem senere. 313 00:14:51,020 --> 00:14:53,990 >> Endelig har du set denne struktur før, men det er den mest grundlæggende 314 00:14:53,990 --> 00:14:55,350 strukturen af ​​HTML-side. 315 00:14:55,350 --> 00:14:58,700 På toppen, vi fortælle dig, at dette er faktisk HTML. 316 00:14:58,700 --> 00:15:01,910 Og så har vi en åben HTML tag og en nær HTML-tag. 317 00:15:01,910 --> 00:15:04,940 Så alt inde i dette er HTML. 318 00:15:04,940 --> 00:15:08,960 >> Vi ser hovedet og kroppen. 319 00:15:08,960 --> 00:15:12,350 Lederen af ​​dit dokument omfatter normalt hvad? 320 00:15:12,350 --> 00:15:16,980 321 00:15:16,980 --> 00:15:20,995 Enhver gæt for hvad du sætte i hovedet? 322 00:15:20,995 --> 00:15:23,060 >> PUBLIKUM: Du sætter titel og stil. 323 00:15:23,060 --> 00:15:23,790 >> JASON HIRSCHHORN: Den titel. 324 00:15:23,790 --> 00:15:26,110 Det var en stor gæt. 325 00:15:26,110 --> 00:15:27,200 Jeg kan have tippet dig til. 326 00:15:27,200 --> 00:15:28,150 Hvad er nogle andre ting? 327 00:15:28,150 --> 00:15:30,351 Vi nævnte en af ​​dem, kan gå i hovedet. 328 00:15:30,351 --> 00:15:33,057 329 00:15:33,057 --> 00:15:35,225 >> PUBLIKUM: Han sagde, stilarter. 330 00:15:35,225 --> 00:15:36,240 >> JASON HIRSCHHORN: Styles - 331 00:15:36,240 --> 00:15:41,050 så hvis du ønsker at linke i en JavaScript eller endda en CSS, som du taler 332 00:15:41,050 --> 00:15:42,610 om, når du taler om stilarter. 333 00:15:42,610 --> 00:15:45,670 En anden fil, du vil linke i en udenfor fil, vil der formentlig gå 334 00:15:45,670 --> 00:15:46,920 i hovedet. 335 00:15:46,920 --> 00:15:48,660 336 00:15:48,660 --> 00:15:51,070 >> Hvad ellers? 337 00:15:51,070 --> 00:15:52,960 Vi nævnte et par af dias siden en af ​​de ting, 338 00:15:52,960 --> 00:15:54,510 HTML kan gøre for dig. 339 00:15:54,510 --> 00:15:58,180 340 00:15:58,180 --> 00:16:01,240 Det kan give - 341 00:16:01,240 --> 00:16:02,874 starter med en M - 342 00:16:02,874 --> 00:16:03,820 >> PUBLIKUM: Metadata. 343 00:16:03,820 --> 00:16:06,170 >> JASON HIRSCHHORN: Metadata - så en masse af metadata vil gå i hovedet, 344 00:16:06,170 --> 00:16:08,990 fordi det vil ikke nødvendigvis at være en del af kroppen af ​​din kode. 345 00:16:08,990 --> 00:16:11,820 Det er generelt - kroppen er det indhold, hvad nogen ser. 346 00:16:11,820 --> 00:16:14,210 Og så gav jeg bare væk svaret til mit næste spørgsmål. 347 00:16:14,210 --> 00:16:17,770 Men i kroppen er generelt indhold der kommer til at blive vist 348 00:16:17,770 --> 00:16:19,750 på websiden. 349 00:16:19,750 --> 00:16:26,120 >> Som vi vil se, komplicerede hjemmesider en tendens til at blande sig eller ændre op, hvad 350 00:16:26,120 --> 00:16:27,170 de sætter i hovedet og kroppen. 351 00:16:27,170 --> 00:16:30,360 Men generelt, lederen indeholder ting at brugeren ikke kommer til at 352 00:16:30,360 --> 00:16:31,290 ser på skærmen. 353 00:16:31,290 --> 00:16:34,150 Det forbinder i andre filer og giver metadata. 354 00:16:34,150 --> 00:16:37,690 Henviser til, at kroppen indeholder alt brugeren kommer til at se. 355 00:16:37,690 --> 00:16:39,270 Enhver idé om, hvad denne p tag betyder? 356 00:16:39,270 --> 00:16:41,660 >> PUBLIKUM: Afsnit? 357 00:16:41,660 --> 00:16:42,780 >> PUBLIKUM: Udskriv. 358 00:16:42,780 --> 00:16:44,120 >> PUBLIKUM: Betyder ikke print. 359 00:16:44,120 --> 00:16:45,380 >> PUBLIKUM: Betyder det punkt? 360 00:16:45,380 --> 00:16:47,620 >> JASON HIRSCHHORN: Afsnit - så dette er et afsnit. 361 00:16:47,620 --> 00:16:50,920 Og denne p tag, jeg kunne bare have skrevet dette på skærmen, og 362 00:16:50,920 --> 00:16:52,630 omfattede et linjeskift ved udgangen af ​​det. 363 00:16:52,630 --> 00:16:54,380 Enhver ved, hvordan man kan inddrage et linjeskift? 364 00:16:54,380 --> 00:16:55,240 >> PUBLIKUM: PR - 365 00:16:55,240 --> 00:16:55,700 >> JASON HIRSCHHORN: PR - 366 00:16:55,700 --> 00:16:57,080 >> PUBLIKUM: Slash PR? 367 00:16:57,080 --> 00:17:00,120 >> JASON HIRSCHHORN: PR-skråstreg står for linjeskift. 368 00:17:00,120 --> 00:17:03,270 Men afsnit har specifik formatering. 369 00:17:03,270 --> 00:17:06,060 Og vi vil komme til at formatere i en sekund, når vi taler om CSS. 370 00:17:06,060 --> 00:17:09,900 Men alt inde i disse p-tags vil have en vis standard formatering 371 00:17:09,900 --> 00:17:13,210 forbundet med det, sandsynligvis nogle afstanden mellem forskellige 372 00:17:13,210 --> 00:17:15,069 stykker. 373 00:17:15,069 --> 00:17:19,410 Og det vil være en måde at differentiere blokke af kode. 374 00:17:19,410 --> 00:17:20,980 >> Alle andre tags - 375 00:17:20,980 --> 00:17:24,584 hvad er andre tags, du har set? 376 00:17:24,584 --> 00:17:26,609 >> JASON HIRSCHHORN: H1 gennem h6. 377 00:17:26,609 --> 00:17:28,460 h1 gennem h6, og hvad er det? 378 00:17:28,460 --> 00:17:31,560 >> PUBLIKUM: Det vil betegne hvor stor og fed bogstaverne er. 379 00:17:31,560 --> 00:17:32,650 >> JASON HIRSCHHORN: Right, det står for header. 380 00:17:32,650 --> 00:17:34,960 Og så header1 er en stor overskrift. 381 00:17:34,960 --> 00:17:40,840 Det vil sandsynligvis som standard være fed, en stor skriftstørrelse, sandsynligvis centreret om 382 00:17:40,840 --> 00:17:44,030 skærmen, hele vejen ned til h6, som er en mindre skriftstørrelse, mindre 383 00:17:44,030 --> 00:17:44,780 understreget. 384 00:17:44,780 --> 00:17:50,290 Selvfølgelig kan du, i du er CSS-fil eller andet sted i din kode - hvilket, 385 00:17:50,290 --> 00:17:53,830 igen, vil vi komme til at i et sekund - ændre, hvad den standard opførsel 386 00:17:53,830 --> 00:17:55,780 en h1 tag er. 387 00:17:55,780 --> 00:18:01,040 >> Men husk på, at Chrome, Safari, Firefox, Internet Explorer har alle 388 00:18:01,040 --> 00:18:04,030 standard ser for en masse disse standard tags. 389 00:18:04,030 --> 00:18:07,110 Du kan, igen, altid ændre hvordan de ser ud. 390 00:18:07,110 --> 00:18:09,955 Alle andre mærker, der alle har set? 391 00:18:09,955 --> 00:18:10,350 Ja - 392 00:18:10,350 --> 00:18:11,530 >> PUBLIKUM: En div site. 393 00:18:11,530 --> 00:18:15,830 >> JASON HIRSCHHORN: En div tag - div tag ikke har nogen indbyggede format pr 394 00:18:15,830 --> 00:18:21,850 se, som bruges til at blokere forskellige typer af kode. 395 00:18:21,850 --> 00:18:22,980 Alle andre tags? 396 00:18:22,980 --> 00:18:23,390 Ja. 397 00:18:23,390 --> 00:18:24,333 >> PUBLIKUM: li - 398 00:18:24,333 --> 00:18:24,850 >> JASON HIRSCHHORN: li - 399 00:18:24,850 --> 00:18:25,580 hvad er li for? 400 00:18:25,580 --> 00:18:26,210 >> PUBLIKUM: List. 401 00:18:26,210 --> 00:18:26,930 >> PUBLIKUM: List 402 00:18:26,930 --> 00:18:29,510 >> JASON HIRSCHHORN: li er for listeelementer. 403 00:18:29,510 --> 00:18:30,720 Der er to typer af lister. 404 00:18:30,720 --> 00:18:31,970 Hvad er de to typer? 405 00:18:31,970 --> 00:18:34,165 406 00:18:34,165 --> 00:18:35,806 >> PUBLIKUM: Bestilt og uordnet. 407 00:18:35,806 --> 00:18:37,780 >> JASON HIRSCHHORN: Bestilt og uordnede - så ul stande 408 00:18:37,780 --> 00:18:38,560 for uordnet liste. 409 00:18:38,560 --> 00:18:41,120 Det er hvis du vil have en kugle pege en liste af kugler. 410 00:18:41,120 --> 00:18:43,180 En ordnet liste er en nummereret liste. 411 00:18:43,180 --> 00:18:47,930 Og så vil du gøre et åbent ul-tag og derefter tonsvis af listeelementer og derefter 412 00:18:47,930 --> 00:18:50,450 lukke ul tag. og der vil oprette en uordnet liste. 413 00:18:50,450 --> 00:18:52,380 >> Vi kommer til at se nogle eksempler html i en bit. 414 00:18:52,380 --> 00:18:55,800 Men inden da, jeg ønsker at komme til CSS. 415 00:18:55,800 --> 00:18:58,530 Og CSS står for Cascading Style Sheets. 416 00:18:58,530 --> 00:19:03,010 Og det er meget nært beslægtet til HTML, men lidt anderledes. 417 00:19:03,010 --> 00:19:06,920 Dette hjælper dig med at formatere alt indhold at HTML strukturer. 418 00:19:06,920 --> 00:19:14,940 >> Så i CSS, vi generelt ikke ønsker at style hver enkelt sidehoved eller hver 419 00:19:14,940 --> 00:19:17,250 enkelt billede eller hver enkelt afsnit. 420 00:19:17,250 --> 00:19:21,210 Vi ønsker at style nogle elementer eller måske et specifikt element. 421 00:19:21,210 --> 00:19:25,250 Og den måde, vi stil en specifik element er at give det et ID. 422 00:19:25,250 --> 00:19:26,070 >> Så dette er en attribut. 423 00:19:26,070 --> 00:19:27,960 Det har en nøgle og en værdi. 424 00:19:27,960 --> 00:19:29,130 ID er nøglen. 425 00:19:29,130 --> 00:19:30,220 Logo er værdien. 426 00:19:30,220 --> 00:19:32,410 Jeg plukket logo tilfældigt. 427 00:19:32,410 --> 00:19:36,780 Og hvis du giver noget et ID, generelt, at der kun bør gives 428 00:19:36,780 --> 00:19:38,800 til ét element. 429 00:19:38,800 --> 00:19:42,340 >> Og så, i dit typografiark, kan du stil netop dette element, men 430 00:19:42,340 --> 00:19:44,090 du vil have det til at se ud. 431 00:19:44,090 --> 00:19:49,560 Hvis du ønsker at style en række elementer, måske er det en bestemt klasse 432 00:19:49,560 --> 00:19:51,310 af overskrifter, kun nogle af dine overskrifter. 433 00:19:51,310 --> 00:19:56,780 Måske er det en overskrift og et billede og en afsnit, du ønsker alle at være centreret. 434 00:19:56,780 --> 00:20:00,700 Derefter kan du give disse grupper elementer alle en klasse. 435 00:20:00,700 --> 00:20:04,300 Og du kan give klassen specifikke stilarter. 436 00:20:04,300 --> 00:20:08,860 Så et ID og en klasse er to måder at bryde op din kode, så du kan hjælpe være 437 00:20:08,860 --> 00:20:11,990 mere specifik i hvad du stil. 438 00:20:11,990 --> 00:20:13,830 >> Der er tre måder at style. 439 00:20:13,830 --> 00:20:17,530 Den første er med denne stil attribut. 440 00:20:17,530 --> 00:20:21,200 Så du ser, den stil nøglen er stil. 441 00:20:21,200 --> 00:20:24,370 Stilen værdi er faktisk en anden vigtig værdi liste. 442 00:20:24,370 --> 00:20:26,570 >> I dette tilfælde, jeg plukkede en nøgle, tekst-align. 443 00:20:26,570 --> 00:20:27,730 Og jeg sagde, center. 444 00:20:27,730 --> 00:20:30,280 Du kan spørge dig selv på dette punkt, hvordan vidste jeg om 445 00:20:30,280 --> 00:20:31,230 text-align. 446 00:20:31,230 --> 00:20:32,280 Hvad betyder, at selv gøre? 447 00:20:32,280 --> 00:20:35,350 Det er et stort spørgsmål at stille, og vi vil komme der i et sekund. 448 00:20:35,350 --> 00:20:39,740 Så det er en måde at style noget, bare give det den stil attribut. 449 00:20:39,740 --> 00:20:43,490 >> En anden måde at style noget er - dette er Akshar nævnt tidligere. 450 00:20:43,490 --> 00:20:49,660 Du kan bruge typografi-tags og sætte det i hovedet af din HTML-dokument. 451 00:20:49,660 --> 00:20:52,220 Så du dybest set siger, indholdet i den her 452 00:20:52,220 --> 00:20:53,870 er noget indhold stil. 453 00:20:53,870 --> 00:20:59,520 Og formatet for det er den ting, du ønsker at style og derefter indersiden af 454 00:20:59,520 --> 00:21:03,460 krøllede parenteser, nøglen værdi par attributter, som du vil give til 455 00:21:03,460 --> 00:21:05,920 denne særlige type af element. 456 00:21:05,920 --> 00:21:07,370 >> Endelig, og dette er mest almindelige måde. 457 00:21:07,370 --> 00:21:10,320 Og det er den måde, vi gøre det i p sæt 7. 458 00:21:10,320 --> 00:21:12,370 Det er et eksternt typografiark. 459 00:21:12,370 --> 00:21:14,370 Så du har en. Css-fil. 460 00:21:14,370 --> 00:21:18,050 Og inde i det, kan du se en masse af ting, der ser sådan ud, navnet 461 00:21:18,050 --> 00:21:22,730 af en form for element eller et ID eller en klasse og derefter indersiden af ​​krøllet 462 00:21:22,730 --> 00:21:28,040 seler, en liste over de vigtigste værdi par. 463 00:21:28,040 --> 00:21:30,065 >> Selvfølgelig, hvis du opretter en ekstern fil, du kommer til at 464 00:21:30,065 --> 00:21:31,310 behov for at medtage det - 465 00:21:31,310 --> 00:21:34,860 skarp omfatter, ville være C analogt - 466 00:21:34,860 --> 00:21:36,250 i din HTML-fil. 467 00:21:36,250 --> 00:21:39,820 Så du er nødt til at medtage denne kode i dit HTML-fil. 468 00:21:39,820 --> 00:21:46,080 Dette er navnet på filen, og forudsat det er i den samme mappe. 469 00:21:46,080 --> 00:21:47,100 >> OK. 470 00:21:47,100 --> 00:21:48,200 Det var en masse. 471 00:21:48,200 --> 00:21:52,440 Og vi nu kommer til at trække vejret og se på nogle reelle, live hjemmeside og 472 00:21:52,440 --> 00:21:53,720 udforske dette mere. 473 00:21:53,720 --> 00:21:55,470 Men før vi gør det, gør nogen har nogen spørgsmål? 474 00:21:55,470 --> 00:22:00,830 475 00:22:00,830 --> 00:22:04,970 >> Så hvis du ønsker at gøre dette sammen med mig, kan vi gå til apparatet. 476 00:22:04,970 --> 00:22:08,950 Og jeg valgte CS50 startside. 477 00:22:08,950 --> 00:22:10,020 Du kan gøre dette med enhver hjemmeside. 478 00:22:10,020 --> 00:22:13,070 Men hvorfor gør vi ikke starte med det CS50 hjemmeside? 479 00:22:13,070 --> 00:22:14,650 >> Lad os genopfriske. 480 00:22:14,650 --> 00:22:18,030 Jeg faktisk varmt anbefale dig at gøre dette sammen med mig, fordi det, vi 481 00:22:18,030 --> 00:22:22,720 kommer til at gøre nu, vil være utroligt praktisk for dig, ikke kun i 482 00:22:22,720 --> 00:22:24,450 P-Set 7, men i P-sæt 8 så godt. 483 00:22:24,450 --> 00:22:24,810 Ja. 484 00:22:24,810 --> 00:22:29,560 >> PUBLIKUM: Er der en måde at gøre kommentarer i HTML, uden at bruge PHP? 485 00:22:29,560 --> 00:22:31,130 >> JASON HIRSCHHORN: Ja, du kan fremsætte bemærkninger i HTML. 486 00:22:31,130 --> 00:22:32,690 >> PUBLIKUM: Hvad er syntaksen? 487 00:22:32,690 --> 00:22:34,340 >> PUBLIKUM: Udråbstegn dash bindestreg. 488 00:22:34,340 --> 00:22:36,125 >> PUBLIKUM: OK. 489 00:22:36,125 --> 00:22:37,100 >> JASON HIRSCHHORN: Ja. 490 00:22:37,100 --> 00:22:38,350 Det er syntaks. 491 00:22:38,350 --> 00:22:40,630 492 00:22:40,630 --> 00:22:41,900 Du kan lave kommentarer i HTML. 493 00:22:41,900 --> 00:22:43,310 Du kan lave kommentarer i PHP. 494 00:22:43,310 --> 00:22:46,590 >> Som du kan se, kommentere i HTML vil stadig dukke op, når vi ser på det 495 00:22:46,590 --> 00:22:49,960 HTML-kildekoden på et bestemt websted. 496 00:22:49,960 --> 00:22:51,610 Så denne cs50.net. 497 00:22:51,610 --> 00:22:57,360 Hvis du højreklikker i de fleste moderne browsere på de fleste helst side, du får vist 498 00:22:57,360 --> 00:22:58,820 sidens kilde. 499 00:22:58,820 --> 00:23:01,480 Så lad os gøre det på CS50. 500 00:23:01,480 --> 00:23:05,060 >> Og vupti, vi se en kæmpe ting. 501 00:23:05,060 --> 00:23:07,420 CS50 faktisk ser ret nice. 502 00:23:07,420 --> 00:23:08,920 En masse hjemmesider vil ikke se denne nice. 503 00:23:08,920 --> 00:23:10,540 Hvis du går til Google startside og åbne det op. 504 00:23:10,540 --> 00:23:11,960 Det vil ikke se denne nice. 505 00:23:11,960 --> 00:23:13,830 >> Men du bemærker, at på toppen - 506 00:23:13,830 --> 00:23:16,650 det er lidt lille. 507 00:23:16,650 --> 00:23:17,900 Lad os gøre dette større. 508 00:23:17,900 --> 00:23:22,660 509 00:23:22,660 --> 00:23:23,570 OK. 510 00:23:23,570 --> 00:23:26,660 Øverst DOCTYPE HTML, det er velkendt. 511 00:23:26,660 --> 00:23:30,650 Så ser vi den åbne HTML-tag og hovedet, lige her, alle 512 00:23:30,650 --> 00:23:34,350 af disse meta tags. 513 00:23:34,350 --> 00:23:38,000 Og du kan se denne and, ikke kommer til at gå ind i det nu. 514 00:23:38,000 --> 00:23:42,110 Men jeg er næsten positivt på det de ville være Facebook. 515 00:23:42,110 --> 00:23:42,900 >> Det er faktisk det Facebook. 516 00:23:42,900 --> 00:23:44,870 Jeg tror, ​​der står for åben graf. 517 00:23:44,870 --> 00:23:48,930 Så husk, jeg nævne at der er Faceboook-specifikke metadata kan du 518 00:23:48,930 --> 00:23:49,800 give en side. 519 00:23:49,800 --> 00:23:51,150 Det er, hvad der er rigtigt her. 520 00:23:51,150 --> 00:23:54,580 >> Så når du linker denne side på Facebook, billedet det kommer til at vise 521 00:23:54,580 --> 00:23:56,630 er billedet lige her. 522 00:23:56,630 --> 00:23:58,310 Og du faktisk se, at det er Facebook, fordi det er 523 00:23:58,310 --> 00:23:59,470 Facebook billedet. 524 00:23:59,470 --> 00:24:00,880 >> Men alligevel, vi får til side. 525 00:24:00,880 --> 00:24:03,220 Så vi har nogle metadatatags her. 526 00:24:03,220 --> 00:24:05,570 Vi ser CS50 titel. 527 00:24:05,570 --> 00:24:09,830 Og igen, titlen er, hvad der foregår heroppe på fanen browser. 528 00:24:09,830 --> 00:24:14,770 Vi ser dette linker i, lige her, en ekstern JavaScript fil. 529 00:24:14,770 --> 00:24:17,640 >> Vi har ikke talt om JavaScript meget, men i næste uge - og i hvert fald hvis 530 00:24:17,640 --> 00:24:20,350 du laver en web-baseret problem sæt, du vil bruge JavaScript. 531 00:24:20,350 --> 00:24:23,540 Dette er, hvordan du linker i ekstern JavaScript filer. 532 00:24:23,540 --> 00:24:31,970 Vi ser lige her endelig, CSS style sheet, der dokumenterer disse 533 00:24:31,970 --> 00:24:32,830 stilarter af denne kode. 534 00:24:32,830 --> 00:24:37,190 >> Lad os faktisk åbne det op og tage et kig virkelig hurtigt. 535 00:24:37,190 --> 00:24:38,440 Det ser vanvittigt. 536 00:24:38,440 --> 00:24:40,840 537 00:24:40,840 --> 00:24:42,790 Der er ingen måde jeg ville være stand til at læse igennem. 538 00:24:42,790 --> 00:24:46,930 Så du kan faktisk selv, hvis du tager et udseende, kan du slags se, at 539 00:24:46,930 --> 00:24:48,650 der er - 540 00:24:48,650 --> 00:24:49,790 der vi går. 541 00:24:49,790 --> 00:24:53,440 >> Det ligner noget, vi har set før, baggrundsfarve, sætte det 542 00:24:53,440 --> 00:24:55,550 svarende til ca rød-grøn-blå værdi. 543 00:24:55,550 --> 00:24:59,070 Denne ting slags bør ikke ud til, at fremmed, selvom, når de præsenteres 544 00:24:59,070 --> 00:25:00,850 som dette, kan det være en smule overvældende. 545 00:25:00,850 --> 00:25:03,340 Vi kommer ikke til at se på denne CSS fil eller tilbringe meget tid på det, fordi 546 00:25:03,340 --> 00:25:06,030 Det er igen temmelig svært at læse. 547 00:25:06,030 --> 00:25:09,090 >> Lad os gå tilbage til dette HTML-side til CS50. 548 00:25:09,090 --> 00:25:10,930 Og lad os rulle ned til kroppen. 549 00:25:10,930 --> 00:25:14,730 Og indeni ser vi denne div tag. 550 00:25:14,730 --> 00:25:18,370 Vi ser en header lige her. 551 00:25:18,370 --> 00:25:21,060 Vi ser anker tag. 552 00:25:21,060 --> 00:25:26,050 >> Og denne liste element er fået en bestemt klasse. 553 00:25:26,050 --> 00:25:28,370 Og vi ser, at klasse gentaget igen og igen. 554 00:25:28,370 --> 00:25:29,730 Der er du Curtis. 555 00:25:29,730 --> 00:25:32,730 Der er kommentaren i HTML5. 556 00:25:32,730 --> 00:25:36,280 >> Og som du bemærker, kan vi stadig se det, men det er ikke at dukke op. 557 00:25:36,280 --> 00:25:37,960 Det er faktisk rigtig interessant. 558 00:25:37,960 --> 00:25:40,760 Det ser ud som denne scoringer liste element kommenteret ud. 559 00:25:40,760 --> 00:25:45,110 Hvis vi går til denne side, igen, er det stadig forekommer der, så interessant. 560 00:25:45,110 --> 00:25:47,830 >> Åh, det er derfor, fordi denne næste linje. 561 00:25:47,830 --> 00:25:50,680 562 00:25:50,680 --> 00:25:52,735 Hvad ser vi af interesse? 563 00:25:52,735 --> 00:25:56,640 564 00:25:56,640 --> 00:26:00,180 Resten af ​​denne er mere forvirrende i beskæftiger sig med denne højre halvdel af 565 00:26:00,180 --> 00:26:03,280 hjemmeside, hvilket er en smule smule mere kompliceret. 566 00:26:03,280 --> 00:26:08,890 >> Så dette er hvad nogle HTML kommer til at se ud. 567 00:26:08,890 --> 00:26:10,990 For mig selv, det er lidt overvældende, og det ikke 568 00:26:10,990 --> 00:26:12,350 hjælpe mig så meget. 569 00:26:12,350 --> 00:26:16,560 Men der er noget, betyder i virkeligheden hjælpe mig meget. 570 00:26:16,560 --> 00:26:20,490 >> Og det er hvad jeg bruger, når jeg er forsøger at finde ud af, hvordan noget 571 00:26:20,490 --> 00:26:24,270 ser ud som det gør, eller hvordan kan Jeg foretage ændringer til min hjemmeside. 572 00:26:24,270 --> 00:26:29,280 Og det er en udvikler værktøj der er indbygget i Chrome. 573 00:26:29,280 --> 00:26:33,960 Så hvis du går til dette tre søjler til højre her og gå ned til værktøjer klikker på 574 00:26:33,960 --> 00:26:40,120 Developer Tools, et lille vindue vil poppe op nederst på siden. 575 00:26:40,120 --> 00:26:46,910 Og i særdeleshed, Chrome, da det er vidunderlige, vil formatere dette vindue, og 576 00:26:46,910 --> 00:26:49,580 tage HTML og gøre det ser meget pænere til dig. 577 00:26:49,580 --> 00:26:54,860 Så nu er det faktisk nogle sammenklappelig HTML, som du kan udforske for at inspicere 578 00:26:54,860 --> 00:26:56,620 de elementer på siden. 579 00:26:56,620 --> 00:26:59,400 >> Hvis vi ønsker at se på kroppen, det faktisk fremhæver. 580 00:26:59,400 --> 00:27:03,240 Når du ruller over en del af HTML, ned i dette vindue, vil det 581 00:27:03,240 --> 00:27:06,530 fremhæve den rolle, det taler om i det store vindue. 582 00:27:06,530 --> 00:27:10,800 Så lad mig igen forsøge blæse det lidt op. 583 00:27:10,800 --> 00:27:12,170 OK. 584 00:27:12,170 --> 00:27:13,550 >> Så lad os åbne kroppen. 585 00:27:13,550 --> 00:27:17,280 Og jeg at rulle over denne venstre div. 586 00:27:17,280 --> 00:27:21,420 Og du bemærker, at det er at fremhæve denne venstre halvdel af skærmen. 587 00:27:21,420 --> 00:27:25,710 Så lad os klikker på det og udvide det. 588 00:27:25,710 --> 00:27:27,280 >> Inde i det, det ligner der er to divs. 589 00:27:27,280 --> 00:27:29,790 Der er denne første div. 590 00:27:29,790 --> 00:27:30,760 Jeg kan ikke se, fremhævet. 591 00:27:30,760 --> 00:27:35,900 Jeg ved det ikke, men det ser sådan ud anden, venstre indre, er indholdet 592 00:27:35,900 --> 00:27:37,700 på venstre side af skærmen. 593 00:27:37,700 --> 00:27:39,360 >> Så er der denne ting kaldet header. 594 00:27:39,360 --> 00:27:41,890 Det ligner der er at fremhæve det CS50 del. 595 00:27:41,890 --> 00:27:46,600 Hvis vi åbner det op, ser vi, at det er intet mere end header 1. 596 00:27:46,600 --> 00:27:51,140 Det har givet et ID, og ​​det er givet teksten CS50. 597 00:27:51,140 --> 00:27:57,240 >> Så igen, ser det gennem dette konsol eller ved hjælp af udviklingsværktøjer 598 00:27:57,240 --> 00:28:00,710 rude nederst på skærmen gør udforske denne hjemmeside, forhåbentlig, en 599 00:28:00,710 --> 00:28:02,990 meget mindre skræmmende og en meget mere tilgængelig. 600 00:28:02,990 --> 00:28:06,360 Det giver os også til at forstå, at denne hjemmeside, selvom det ser meget 601 00:28:06,360 --> 00:28:09,210 smuk og dejlig, er ikke så meget mere end hvad du kommer til at være 602 00:28:09,210 --> 00:28:10,430 gør på Problem Set 7.. 603 00:28:10,430 --> 00:28:13,080 Og dette er helt indenfor din evne til at skabe. 604 00:28:13,080 --> 00:28:14,110 >> Hvis vi ønsker at - 605 00:28:14,110 --> 00:28:18,270 den anden cool ting om at bruge disse værktøjer er, hvis du højreklikker på 606 00:28:18,270 --> 00:28:22,270 titel, kan du redigere HTML. 607 00:28:22,270 --> 00:28:25,660 Så lad os kalde det Jason. 608 00:28:25,660 --> 00:28:28,990 Og nu vil du bemærke, jeg har ændret HTML på denne side. 609 00:28:28,990 --> 00:28:31,020 >> Selvfølgelig har jeg ikke ændret det permanent. 610 00:28:31,020 --> 00:28:34,570 Hvis jeg opdatere min browser, så ville det gå tilbage til den oprindelige HTML. 611 00:28:34,570 --> 00:28:38,860 Men nogle gange vil jeg debug min kode, og jeg ønsker ikke at se lige have min 612 00:28:38,860 --> 00:28:41,370 gedit vinduet og prøve at forstå hvad der foregår. 613 00:28:41,370 --> 00:28:42,705 >> Jeg ønsker at se, hvad der vil ske Live. 614 00:28:42,705 --> 00:28:45,880 Så jeg vil redigere kode som denne og få det som jeg vil have det til at se ud. 615 00:28:45,880 --> 00:28:47,960 Og så vil jeg gøre ændringer i min kode. 616 00:28:47,960 --> 00:28:50,010 >> Og jeg synes, at det er meget nemmere når du kan gøre de ting, 617 00:28:50,010 --> 00:28:52,400 øjeblikkeligt, sådan. 618 00:28:52,400 --> 00:28:58,410 Sig, igen, vi ønsker at gøre en anden chance, fordi vi udforsker med 619 00:28:58,410 --> 00:29:00,340 HTML og CSS lige nu. 620 00:29:00,340 --> 00:29:02,600 Jeg kan redigere HTML lige nu. 621 00:29:02,600 --> 00:29:06,680 Og jeg har tænkt mig at inkludere et link. 622 00:29:06,680 --> 00:29:10,650 >> Så jeg har tænkt mig at ændre CS50 hjem side, så det vil linke til - 623 00:29:10,650 --> 00:29:12,060 lad os sige - min startside. 624 00:29:12,060 --> 00:29:16,700 Hvad er navnet, hvis nogen minder eller hvad er den egenskab, jeg ønsker at give 625 00:29:16,700 --> 00:29:18,850 til et anker fane, når jeg vil det at forbinde et andet sted? 626 00:29:18,850 --> 00:29:19,562 >> PUBLIKUM: href? 627 00:29:19,562 --> 00:29:20,812 >> JASON HIRSCHHORN: href - 628 00:29:20,812 --> 00:29:32,520 629 00:29:32,520 --> 00:29:35,750 Så nu vil du se, at der er en understregning under Jason. 630 00:29:35,750 --> 00:29:40,170 Det er fordi Chrome som standard giver ankre en understregning. 631 00:29:40,170 --> 00:29:41,990 Du har sikkert set det før når du har gået til en webside. 632 00:29:41,990 --> 00:29:44,200 Ting, der er links er understreget og i blåt. 633 00:29:44,200 --> 00:29:47,300 Som standard stil for et link er generelt understrege 634 00:29:47,300 --> 00:29:48,830 og sætte det i blåt. 635 00:29:48,830 --> 00:29:50,050 >> Hvis jeg ikke kan lide det, Jeg kan ændre det. 636 00:29:50,050 --> 00:29:51,220 Og vi vil ændre det i et sekund. 637 00:29:51,220 --> 00:29:54,660 Men nu også mærke, at hvis jeg hover i denne, i nederste venstre hjørne af 638 00:29:54,660 --> 00:29:58,580 skærm, lige over ordbestanddelene er det link, jeg gav det. 639 00:29:58,580 --> 00:30:03,080 >> Så hvis jeg gjorde klikke på dette - og vi kan højreklikke på dette ved at åbne en ny fane. 640 00:30:03,080 --> 00:30:04,520 Det er faktisk ikke min hjemmeside. 641 00:30:04,520 --> 00:30:06,700 Det er bare mit navn. 642 00:30:06,700 --> 00:30:07,210 Værsgo. 643 00:30:07,210 --> 00:30:10,440 Vi har nu gøre det til et link. 644 00:30:10,440 --> 00:30:13,220 >> Lad os udforske nogle CSS så godt. 645 00:30:13,220 --> 00:30:15,680 Den smukke ting - og jeg har tænkt mig at gøre dette til en lille smule mindre - om 646 00:30:15,680 --> 00:30:19,480 denne konsol er, at skøre CSS ark vi så før, der var virkelig 647 00:30:19,480 --> 00:30:24,130 vanskeligt at analysere, er nu smukt lagt ud for os på den venstre side 648 00:30:24,130 --> 00:30:25,270 af denne rude. 649 00:30:25,270 --> 00:30:27,230 Så vi kan se. 650 00:30:27,230 --> 00:30:33,690 Og hvis vi udvider denne fane stilarter, vi kan se alle de forskellige stilarter 651 00:30:33,690 --> 00:30:37,940 der er forbundet med i dette tilfælde, dette særlige element, dette 652 00:30:37,940 --> 00:30:39,700 bøjleelement. 653 00:30:39,700 --> 00:30:44,240 >> Hvis vi gør fanen sammensatte stilarter, at bare viser os, ikke hvor alt 654 00:30:44,240 --> 00:30:47,450 kommer fra, men i det væsentlige alle disse stilarter, der opererer på 655 00:30:47,450 --> 00:30:51,220 denne særlige element lige nu. 656 00:30:51,220 --> 00:30:55,050 Og lad os sige, vi ønsker at ændre det en smule. 657 00:30:55,050 --> 00:30:58,870 658 00:30:58,870 --> 00:31:02,740 Så dette er alle de stilarter, der er opererer på dette særlige element. 659 00:31:02,740 --> 00:31:04,800 Sig vi ønsker at ændre det, fordi vi ønsker at se, hvordan noget ser ud. 660 00:31:04,800 --> 00:31:06,050 Og vi er bare at spille rundt lige nu. 661 00:31:06,050 --> 00:31:08,720 Eller vi ønsker at teste noget ud, før skrive det i kode og skubbe 662 00:31:08,720 --> 00:31:10,150 det og gøre det live. 663 00:31:10,150 --> 00:31:11,780 >> Vi kan gå til fanen stilarter. 664 00:31:11,780 --> 00:31:14,270 Og i den første boks det siger, element.style. 665 00:31:14,270 --> 00:31:17,020 Og her kan du indsætte, du kan tilføje noget. 666 00:31:17,020 --> 00:31:18,550 >> Så jeg vil gerne - 667 00:31:18,550 --> 00:31:22,360 lad os gå til mit link, og indstille baggrundsfarven. 668 00:31:22,360 --> 00:31:25,830 Og det faktisk fylder automatisk det for dig, alle de mulige egenskaber. 669 00:31:25,830 --> 00:31:29,360 Baggrundsfarve, og jeg vil at gøre denne blå. 670 00:31:29,360 --> 00:31:31,520 Blus er ikke et ord. 671 00:31:31,520 --> 00:31:32,400 Blue er et ord. 672 00:31:32,400 --> 00:31:34,490 >> Har jeg se det komme op? 673 00:31:34,490 --> 00:31:35,800 Åh, er det fordi det er i href? 674 00:31:35,800 --> 00:31:36,550 OK. 675 00:31:36,550 --> 00:31:40,220 Så jeg kan ikke se nogen ændring her. 676 00:31:40,220 --> 00:31:45,100 Og det er fordi, hvis vi fremhæve link, vil du bemærke, at linket 677 00:31:45,100 --> 00:31:48,430 faktisk ikke styre egenskaber af dette særlige element. 678 00:31:48,430 --> 00:31:52,430 Det er faktisk, hvis vi åbner linket, denne overskrift lige her, der er 679 00:31:52,430 --> 00:31:53,590 kontrollerende hvad det ligner. 680 00:31:53,590 --> 00:31:56,380 >> Så hvis jeg ønsker at gøre baggrunden blå, jeg faktisk nødt til at ændre 681 00:31:56,380 --> 00:31:59,640 baggrundsfarve på header element. 682 00:31:59,640 --> 00:32:02,700 Og nu ser vi, at Baggrunden er blå. 683 00:32:02,700 --> 00:32:06,770 >> Så igen, denne hurtigt kan gå gennem dette materiale temmelig hurtigt. 684 00:32:06,770 --> 00:32:08,580 Men det er væsentligt, hvad du kommer til at gøre. 685 00:32:08,580 --> 00:32:10,860 Det er ikke på Problem Set 7. men helt sikkert, når du er 686 00:32:10,860 --> 00:32:12,080 kodning på nettet. 687 00:32:12,080 --> 00:32:12,360 >> OK. 688 00:32:12,360 --> 00:32:13,780 Jeg ønsker at gøre baggrunden blå. 689 00:32:13,780 --> 00:32:16,180 Selvom, i dette tilfælde, blå ser temmelig grimt. 690 00:32:16,180 --> 00:32:17,740 Jeg kan gå ind her, lege. 691 00:32:17,740 --> 00:32:20,515 Jeg kan se, at ændre det til blå virker ikke på en. 692 00:32:20,515 --> 00:32:26,710 Jeg har rent faktisk at ændre overskriften element omfatter blå 693 00:32:26,710 --> 00:32:28,200 baggrund. 694 00:32:28,200 --> 00:32:34,450 >> Og så, hvis så går jeg tilbage til min CSS fil, hvordan kan jeg faktisk sætte dette 695 00:32:34,450 --> 00:32:37,520 baggrund at være blå og foretage denne ændring pind? 696 00:32:37,520 --> 00:32:44,840 Fordi hvis vi bemærker, hvis jeg genopfriske side, bliver alle de ændringer, jeg har lavet væk. 697 00:32:44,840 --> 00:32:47,220 Så indså jeg, OK, min Baggrunden er blå. 698 00:32:47,220 --> 00:32:51,260 >> Jeg nødt til at gå ind i denne header1 element og ændre baggrundsfarven til blå. 699 00:32:51,260 --> 00:32:52,710 Hvordan kan jeg faktisk gøre denne ændring? 700 00:32:52,710 --> 00:32:57,040 Nå, minde om, at hvis vi går indenfor herfra, denne overskrift, den 701 00:32:57,040 --> 00:32:59,280 titel har et ID. 702 00:32:59,280 --> 00:33:00,890 Og det er titel. 703 00:33:00,890 --> 00:33:09,010 >> Og så i vores CSS-fil, kan vi sige, OK, tage noget med ID af titel og 704 00:33:09,010 --> 00:33:11,330 give det denne ekstra egenskab. 705 00:33:11,330 --> 00:33:18,010 Hvordan kan vi referere til noget med den ID titel, nogen ideer, eller nogen 706 00:33:18,010 --> 00:33:24,406 vide hvordan vi referere Id'er i vores CSS-fil? 707 00:33:24,406 --> 00:33:26,290 >> En hash, det er helt rigtigt. 708 00:33:26,290 --> 00:33:28,710 Og du fik en antydning af denne ret her. 709 00:33:28,710 --> 00:33:32,810 Så sted i denne CSS-fil, der er denne linje kode - 710 00:33:32,810 --> 00:33:34,150 # Venstre # venstre indre # header # titel. 711 00:33:34,150 --> 00:33:36,810 712 00:33:36,810 --> 00:33:40,590 Og det er at give den margin bund, definere margin bunden af ​​denne 713 00:33:40,590 --> 00:33:42,220 bestemt element. 714 00:33:42,220 --> 00:33:46,580 >> Tja, hvis jeg ønskede at ændre det, Jeg vil gå ind i denne CSS fil. 715 00:33:46,580 --> 00:33:49,510 Og jeg kunne enten finde dette del af CSS-fil. 716 00:33:49,510 --> 00:33:50,300 Eller jeg kunne skrive mit eget. 717 00:33:50,300 --> 00:33:54,670 >> Jeg kunne gøre hash titel klammeparentes og derefter baggrundsfarve kolon blå 718 00:33:54,670 --> 00:33:57,250 semikolon og tæt, at klammeparentes. 719 00:33:57,250 --> 00:34:02,790 Og det ville ændre baggrunden farve af dette element til blå. 720 00:34:02,790 --> 00:34:06,690 Grunden til at de giver dig så mange her er , at det er nødvendigt i denne sag, 721 00:34:06,690 --> 00:34:08,690 fordi titlen er et unikt id. 722 00:34:08,690 --> 00:34:11,190 >> Men hvad du kan gøre, er reden ting. 723 00:34:11,190 --> 00:34:14,760 Så dette er at sige, OK, gå til venstre. 724 00:34:14,760 --> 00:34:15,350 Det er meget lille. 725 00:34:15,350 --> 00:34:16,150 Jeg undskylder for det. 726 00:34:16,150 --> 00:34:17,750 >> Men gå til ting med ID venstre. 727 00:34:17,750 --> 00:34:20,420 Inde i det, kigge efter ting med ID forlod indre. 728 00:34:20,420 --> 00:34:22,630 Inde i det blik, kigge efter ting med ID header. 729 00:34:22,630 --> 00:34:27,560 Inde i det, kigge efter ting ID titel og ændre ID titel. 730 00:34:27,560 --> 00:34:29,120 Så dette er blot en måde rugende ting. 731 00:34:29,120 --> 00:34:32,719 Nogle mennesker kan lide reden det, fordi det gør det lidt klarere. 732 00:34:32,719 --> 00:34:37,980 >> Du vil se hernede også, højre her er der ingen hash. 733 00:34:37,980 --> 00:34:39,449 Det er bare H1. 734 00:34:39,449 --> 00:34:44,060 Det er fordi h1 er givet navnet på en generisk tag. 735 00:34:44,060 --> 00:34:48,080 Og der er nogle CSS egenskaber forbundet med hver enkelt h1. 736 00:34:48,080 --> 00:34:51,889 Så hvis jeg fandt en anden h1 på denne side, Jeg vil også se, at denne stil var 737 00:34:51,889 --> 00:34:54,280 anvendt på det så godt. 738 00:34:54,280 --> 00:34:59,290 >> Hvis jeg ønskede at anvende en typografi til en klasse, hvordan kan jeg referere til en klasse eller 739 00:34:59,290 --> 00:35:02,469 tale om en klasse i en CSS-fil? 740 00:35:02,469 --> 00:35:03,315 >> PUBLIKUM: Dot. 741 00:35:03,315 --> 00:35:05,340 >> JASON HIRSCHHORN: Det er med en prik. 742 00:35:05,340 --> 00:35:08,630 Så lad os gå tilbage til denne side før. 743 00:35:08,630 --> 00:35:11,160 Hvis jeg gør hash id. 744 00:35:11,160 --> 00:35:14,760 Det er at ændre stil af ting med ID. 745 00:35:14,760 --> 00:35:21,390 Eller ked af det, hvis jeg gør hash-logoet, der er finde ting med id af logo 746 00:35:21,390 --> 00:35:24,010 og give det en bestemt CSS stil. 747 00:35:24,010 --> 00:35:28,280 >> Hvis jeg gør noget. Top, der er at finde alt med den klasse af top-og 748 00:35:28,280 --> 00:35:30,190 ændre dens stilarter. 749 00:35:30,190 --> 00:35:35,950 Hvis jeg simpelthen H1, der finder hver enkelt H1 og giver det uanset 750 00:35:35,950 --> 00:35:37,940 stil, jeg ønsker at give det. 751 00:35:37,940 --> 00:35:43,260 Hvis jeg gør h1 plads og derefter. Top. 752 00:35:43,260 --> 00:35:47,670 Det vil gå finde alle de H1S og derefter alle dem med den klasse af top-og 753 00:35:47,670 --> 00:35:51,690 da kun ændre disse formater til hvad jeg ønsker at give det. 754 00:35:51,690 --> 00:35:54,600 >> Og igen, vi kunne have skrevet noget af dette på vores egen. 755 00:35:54,600 --> 00:35:55,790 Men vi ville ikke have, at langt fået. 756 00:35:55,790 --> 00:35:59,180 Meget bedre ser det ud til rent faktisk at gå på en rigtig levende hjemmeside og se, hvordan 757 00:35:59,180 --> 00:36:02,800 de gør det og se på alle de fantastiske ting, du får at gøre. 758 00:36:02,800 --> 00:36:06,570 >> Lad os se på en mere website før vi går videre. 759 00:36:06,570 --> 00:36:10,150 Og det er en, som du vil sandsynligvis blive fortrolig med. 760 00:36:10,150 --> 00:36:12,310 Dette er CS50 Finance. 761 00:36:12,310 --> 00:36:16,120 Så igen, kan du faktisk gå ind og observere denne CSS fil på din 762 00:36:16,120 --> 00:36:19,390 computer, fordi du har downloadet dette CSS-fil, hvis du har hentet 763 00:36:19,390 --> 00:36:20,270 problem indstillet. 764 00:36:20,270 --> 00:36:26,850 >> Vi kan gå til Funktioner og Developer Tools. 765 00:36:26,850 --> 00:36:30,280 Og vi ser en meget enklere HTML layout. 766 00:36:30,280 --> 00:36:32,020 Vi har toppen, midten og bunden. 767 00:36:32,020 --> 00:36:34,490 Og igen, noget, du bør være bekendt med, fordi du har set 768 00:36:34,490 --> 00:36:37,680 gennem uddeling kode for denne uges problem indstillet. 769 00:36:37,680 --> 00:36:43,360 >> Øverst er pr koden, et enkelt billede kaldes. 770 00:36:43,360 --> 00:36:47,170 Og det er kilden af ​​billedet. 771 00:36:47,170 --> 00:36:52,170 Sige, at jeg er færdig med alt hvad Jeg ønskede at for Problem Set 7. 772 00:36:52,170 --> 00:36:55,500 Og det fungerer korrekt, men Jeg ønsker at ændre, hvordan det ser ud. 773 00:36:55,500 --> 00:36:58,900 Og jeg ønsker at ændre baggrunden af toppen af ​​den side, 774 00:36:58,900 --> 00:37:01,000 for eksempel blå. 775 00:37:01,000 --> 00:37:04,860 Hvis det var mig, ville jeg komme i her og finde ud af, OK hvad 776 00:37:04,860 --> 00:37:05,890 ønsker jeg at ændre. 777 00:37:05,890 --> 00:37:08,700 >> Lad os se, div id top, at udseende ligesom toppen af ​​siden. 778 00:37:08,700 --> 00:37:09,910 Så lad os gå der. 779 00:37:09,910 --> 00:37:13,940 Lad os prøve at ændre baggrundsfarve. 780 00:37:13,940 --> 00:37:16,360 Lad os gå gøre Alice blå, fordi det er en pænere én. 781 00:37:16,360 --> 00:37:18,010 >> Og du vil opdage, at - 782 00:37:18,010 --> 00:37:19,190 du sandsynligvis ikke kan se det. 783 00:37:19,190 --> 00:37:23,430 Men der er en lyseblå, sammen med CS50 logo. 784 00:37:23,430 --> 00:37:25,810 Lad os ændre det i stedet for rød. 785 00:37:25,810 --> 00:37:28,790 Og du vil opdage nu jeg lige ændret baggrundsfarven til rød. 786 00:37:28,790 --> 00:37:37,050 >> Så nu vil jeg gå ind i min CSS-fil og Type # top krøllede paren lige her. 787 00:37:37,050 --> 00:37:42,170 Du kan se koden til højre her, klammeparentes. 788 00:37:42,170 --> 00:37:44,530 Og så vil jeg tilføje baggrund farve, rød. 789 00:37:44,530 --> 00:37:47,500 Og så ville der være en klammeparentes. 790 00:37:47,500 --> 00:37:52,230 Så det er, hvordan jeg ville udforske og eksperimentere med formateringen på CS50 791 00:37:52,230 --> 00:37:53,070 Finance site. 792 00:37:53,070 --> 00:37:55,060 >> Jeg kunne gøre det her, og test det ud på min browser. 793 00:37:55,060 --> 00:37:58,130 Og så kunne jeg gå ind i mit egentlige kode og foretage de ændringer, der vil 794 00:37:58,130 --> 00:38:01,940 faktisk gå live, og at folk faktisk se, hvis de skulle komme til 795 00:38:01,940 --> 00:38:04,280 mit bestemt websted. 796 00:38:04,280 --> 00:38:05,390 >> OK. 797 00:38:05,390 --> 00:38:06,850 Det var en masse. 798 00:38:06,850 --> 00:38:09,380 Jeg undskylder for at gå gennem det så hurtigt. 799 00:38:09,380 --> 00:38:12,560 Er der nogen har nogen spørgsmål ved alt om HTML eller CSS? 800 00:38:12,560 --> 00:38:15,830 801 00:38:15,830 --> 00:38:24,728 >> PUBLIKUM: Kan du bare gå over, hvordan du forbundet, hvad der blev Jason, igen? 802 00:38:24,728 --> 00:38:26,180 >> JASON HIRSCHHORN: Hvad mener du tilknyttet? 803 00:38:26,180 --> 00:38:29,765 >> PUBLIKUM: Du angav et link til en anden hjemmeside, ved hjælp af anker. 804 00:38:29,765 --> 00:38:32,980 >> JASON HIRSCHHORN: Så spørger du, bare generisk, hvordan du laver et link? 805 00:38:32,980 --> 00:38:33,560 >> PUBLIKUM: Ja. 806 00:38:33,560 --> 00:38:34,150 >> JASON HIRSCHHORN: OK. 807 00:38:34,150 --> 00:38:35,575 Koden for at gøre et link - 808 00:38:35,575 --> 00:38:38,180 809 00:38:38,180 --> 00:38:40,590 >> PUBLIKUM: Nej, ligesom i HTML. 810 00:38:40,590 --> 00:38:43,140 >> JASON HIRSCHHORN: Hernede, mener du? 811 00:38:43,140 --> 00:38:46,960 Så hvis jeg ønsker at inkludere et link sted, sige, det er HTML på min 812 00:38:46,960 --> 00:38:50,210 side lige her. 813 00:38:50,210 --> 00:38:51,010 Dette er HTML. 814 00:38:51,010 --> 00:38:53,720 Måske er det åbent i en fil, index.html. 815 00:38:53,720 --> 00:38:56,100 Jeg går i. 816 00:38:56,100 --> 00:38:58,990 >> Lad os få denne copyright John Harvard link til noget. 817 00:38:58,990 --> 00:39:02,230 Så vi vil redigere alt dette som HTML. 818 00:39:02,230 --> 00:39:08,480 Alt du skal gøre er inkludere en, så beslag tæt beslag på 819 00:39:08,480 --> 00:39:12,700 begynder, og derefter beslaget skråstreg et tæt beslag i slutningen. 820 00:39:12,700 --> 00:39:13,930 >> Så nu har jeg medtaget et anker tag. 821 00:39:13,930 --> 00:39:15,475 Og faktisk, hvis du klikker ud af denne, vil den nu 822 00:39:15,475 --> 00:39:22,110 formatere det redigere som HTML. 823 00:39:22,110 --> 00:39:24,020 Og sige, at vi ønsker at forbinde det. 824 00:39:24,020 --> 00:39:25,760 Vi ville du href attribut. 825 00:39:25,760 --> 00:39:27,010 Og vi siger - 826 00:39:27,010 --> 00:39:42,600 827 00:39:42,600 --> 00:39:47,600 >> Og nu, som du bemærker, copyright John Harvard er blå. 828 00:39:47,600 --> 00:39:50,870 Og når jeg ruller i det, er det nu et link. 829 00:39:50,870 --> 00:39:53,140 Så du kan skrive denne kode. 830 00:39:53,140 --> 00:39:57,030 Du kan omgive temmelig meget noget du ønsker i et anker-tag og slå det 831 00:39:57,030 --> 00:39:57,700 til et link. 832 00:39:57,700 --> 00:39:58,246 >> PUBLIKUM: OK. 833 00:39:58,246 --> 00:39:58,520 Fik det. 834 00:39:58,520 --> 00:40:01,300 >> JASON HIRSCHHORN: Og hvis jeg ikke ønskede det - selvfølgelig, nogle gange folk har tendens 835 00:40:01,300 --> 00:40:04,090 at tænke disse ting, der bare ser blå generisk og understreget er 836 00:40:04,090 --> 00:40:05,860 ikke den smukkeste måde at gøre et link. 837 00:40:05,860 --> 00:40:11,380 Så hvis jeg kom herover, kan du se det, sted i en CSS-fil, der er 838 00:40:11,380 --> 00:40:14,500 skrevet denne a og derefter to krøllede parenteser. 839 00:40:14,500 --> 00:40:20,700 Så lad os sige, at for links, det gør jeg ikke vil have dem til at blive blå, snarere jeg 840 00:40:20,700 --> 00:40:23,645 ønsker farven på et link til være denne nice magenta. 841 00:40:23,645 --> 00:40:28,320 842 00:40:28,320 --> 00:40:30,640 >> Lad os give det farve. 843 00:40:30,640 --> 00:40:34,060 844 00:40:34,060 --> 00:40:35,110 Lad os plukke magenta. 845 00:40:35,110 --> 00:40:38,440 Nu er alle de links på min side har bliver denne nice farve magenta. 846 00:40:38,440 --> 00:40:40,170 Nogle mennesker kan ikke lide farver på alle. 847 00:40:40,170 --> 00:40:41,340 Nogle mennesker kan ikke lide understregninger. 848 00:40:41,340 --> 00:40:42,510 Du kommer til at plukke. 849 00:40:42,510 --> 00:40:44,990 >> Med links, kan du style, hvordan de se ud, når du har besøgt dem. 850 00:40:44,990 --> 00:40:47,820 Som du vil bemærke på en masse sider, links tænder lilla på du besøger dem. 851 00:40:47,820 --> 00:40:49,190 Du kan ændre den farve som godt. 852 00:40:49,190 --> 00:40:49,450 Ja. 853 00:40:49,450 --> 00:40:51,790 >> PUBLIKUM: Så du ændre det for hver enkelt forbindelse. 854 00:40:51,790 --> 00:40:56,310 Men hvis du bare ønskede at gøre det link selv, ville du bare gøre i ID 855 00:40:56,310 --> 00:40:58,720 bunden eller noget? 856 00:40:58,720 --> 00:41:01,070 >> JASON HIRSCHHORN: Så stor spørgsmål. 857 00:41:01,070 --> 00:41:05,090 Som du har bemærket her, jeg har ændret nogle del af CSS, der gælder for 858 00:41:05,090 --> 00:41:11,530 alt, hvad der er en A. Hvis jeg ønskede at bare gøre at linket nederst, jeg 859 00:41:11,530 --> 00:41:14,500 ville gå til min CSS-fil og sandsynligvis gøre lige som du sagde, hash 860 00:41:14,500 --> 00:41:16,040 nederste rum et. 861 00:41:16,040 --> 00:41:18,400 Og det ville give mig alle Som i bunden. 862 00:41:18,400 --> 00:41:30,720 >> Eller jeg kunne alternativt giver det en unikt id og så bare gøre hash link. 863 00:41:30,720 --> 00:41:32,050 Og der ville tillade mig til at ændre dette. 864 00:41:32,050 --> 00:41:36,170 Men bare uddele id'er forgodtbefindende er generelt en dårlig 865 00:41:36,170 --> 00:41:37,730 praksis, fordi de skal være unikt. 866 00:41:37,730 --> 00:41:40,940 Og jo mere du har dem, det kan få en lidt forvirrende. 867 00:41:40,940 --> 00:41:41,270 Ja. 868 00:41:41,270 --> 00:41:43,725 >> PUBLIKUM: Kan du give den samme ID til flere ejere? 869 00:41:43,725 --> 00:41:45,820 >> JASON HIRSCHHORN: Teknisk, ja. 870 00:41:45,820 --> 00:41:50,700 Intet kommer til at stoppe dig, men du Skulle du ikke bør give det en klasse. 871 00:41:50,700 --> 00:41:55,330 872 00:41:55,330 --> 00:41:57,655 OK, andre spørgsmål om HTML eller CSS? 873 00:41:57,655 --> 00:42:05,660 874 00:42:05,660 --> 00:42:06,310 >> OK. 875 00:42:06,310 --> 00:42:09,950 Lad os gå videre til PHP. 876 00:42:09,950 --> 00:42:10,575 Åh, ja. 877 00:42:10,575 --> 00:42:13,800 >> PUBLIKUM: Hvad er det ved disse hjemmesider, der betyder, at vi kan redigere 878 00:42:13,800 --> 00:42:15,440 dem, før vi genopfriske. 879 00:42:15,440 --> 00:42:18,270 Men når vi opdatere den vender tilbage til den oprindelige HTML? 880 00:42:18,270 --> 00:42:19,900 >> JASON HIRSCHHORN: Great spørgsmål - 881 00:42:19,900 --> 00:42:24,810 så når vi har indlæst denne webside, det er HTML. 882 00:42:24,810 --> 00:42:25,900 Og det er JavaScript. 883 00:42:25,900 --> 00:42:29,060 Dens PHP udføres for at give os, hvad type hjemmeside vi ser. 884 00:42:29,060 --> 00:42:33,130 Og det er skabt nogle HTML, nogle JavaScript, og nogle CSS. 885 00:42:33,130 --> 00:42:35,990 Og det er nu tilgængelig af vores computer. 886 00:42:35,990 --> 00:42:40,700 >> Og en kopi af disse filer gemmes lokalt på vores computer, 887 00:42:40,700 --> 00:42:41,910 for tiden. 888 00:42:41,910 --> 00:42:44,030 Så vi kan redigere den lokale kopi. 889 00:42:44,030 --> 00:42:46,530 Men selvfølgelig er vi ikke redigerer serveren kopi. 890 00:42:46,530 --> 00:42:49,420 >> Og når vi opdatere siden, vi får en anden server kopi. 891 00:42:49,420 --> 00:42:51,250 Og så ser vi tingene tilbage, som de var. 892 00:42:51,250 --> 00:42:55,200 Hvis vi var i stand, herfra, at redigere officielle hjemmeside, ville vi have en masse 893 00:42:55,200 --> 00:42:55,800 problemer. 894 00:42:55,800 --> 00:42:58,670 >> PUBLIKUM: Yeah, så vi kan læse og skrive kopien. 895 00:42:58,670 --> 00:43:00,140 >> JASON HIRSCHHORN: Right. 896 00:43:00,140 --> 00:43:04,380 Vi laver kun lokale ændringer her, men igen, meget nyttigt for at udforske, 897 00:43:04,380 --> 00:43:05,690 oftentimes. 898 00:43:05,690 --> 00:43:08,900 Når jeg skriver mit afsluttende projekt, eksempel, jeg ønsker at se, hvordan nogle 899 00:43:08,900 --> 00:43:11,270 hjemmeside lavet noget udseende den måde, de gjorde. 900 00:43:11,270 --> 00:43:17,350 Jeg vil gå ind og bruge denne rude ned her, at se på, hvad CSS de gav 901 00:43:17,350 --> 00:43:20,890 det, eller hvad farve de plukkes eller hvordan de fik det så, når du svævede 902 00:43:20,890 --> 00:43:24,180 over noget, listen kom ned i et dejligt cascading mode. 903 00:43:24,180 --> 00:43:27,220 Det er en fantastisk måde at inspicere, hvad andre websites gøre og låne hos dem. 904 00:43:27,220 --> 00:43:30,590 905 00:43:30,590 --> 00:43:33,690 >> Lad os gå videre til PHP. 906 00:43:33,690 --> 00:43:38,560 PHP står for, i en rekursiv forstand, PHP Hypertext Processor. 907 00:43:38,560 --> 00:43:42,060 Og PHP, hvad det kommer til at gøre er eksekvere kode server side. 908 00:43:42,060 --> 00:43:44,490 Så vi aldrig kommer til at se PHP kode. 909 00:43:44,490 --> 00:43:47,210 >> Men det lege pænt med HTML og ofte genererer 910 00:43:47,210 --> 00:43:48,210 en masse af HTML-kode. 911 00:43:48,210 --> 00:43:52,570 Men som du vil være bekendt med Problem Set 7, vil din PHP kode udføre, 912 00:43:52,570 --> 00:43:56,200 generere nogle HTML, og det er hvad brugeren vil ende med at se. 913 00:43:56,200 --> 00:44:00,510 >> PHP er utrolig ligner C. Der er dog et par 914 00:44:00,510 --> 00:44:04,400 forskelle og disse forskelle er vigtigt at bemærke. 915 00:44:04,400 --> 00:44:09,420 En forskel er, at variable i PHP er løst skrevet. 916 00:44:09,420 --> 00:44:11,275 Er der nogen, der har en følelse af, hvad det betyder? 917 00:44:11,275 --> 00:44:14,245 >> PUBLIKUM: Ingen grund til at kaste det selv. 918 00:44:14,245 --> 00:44:16,400 Ligesom ingen grund til at skrive i teksten. 919 00:44:16,400 --> 00:44:19,070 >> JASON HIRSCHHORN: Jeg ville ikke bruge Ordet cast, men ja, ingen grund til at erklære 920 00:44:19,070 --> 00:44:20,930 en type til en bestemt variabel. 921 00:44:20,930 --> 00:44:22,300 Hvordan stedet får vi erklære en variabel? 922 00:44:22,300 --> 00:44:23,860 >> PUBLIKUM: Brug et dollartegn. 923 00:44:23,860 --> 00:44:25,270 >> JASON HIRSCHHORN: Brug et dollartegn. 924 00:44:25,270 --> 00:44:27,540 Så $ x er en variabel. 925 00:44:27,540 --> 00:44:29,580 1 $ er en variabel. 926 00:44:29,580 --> 00:44:31,910 $ String er en variabel. 927 00:44:31,910 --> 00:44:36,280 >> De variabler, $ x kunne være et heltal. 928 00:44:36,280 --> 00:44:38,010 Derefter kunne det være en streng. 929 00:44:38,010 --> 00:44:39,420 Derefter kunne det være et tegn. 930 00:44:39,420 --> 00:44:40,790 Det betyder ikke rigtig noget. 931 00:44:40,790 --> 00:44:46,360 >> Også den fede ved PHP er, sige, $ x er strengen én. 932 00:44:46,360 --> 00:44:48,920 Og $ y er tegnet en. 933 00:44:48,920 --> 00:44:54,370 Du kan tilføje $ x og $ y, og det vil give dig 2, hvad du ville forvente. 934 00:44:54,370 --> 00:44:56,160 Så der er operationer i PHP. 935 00:44:56,160 --> 00:45:00,810 Fordi det løst er indtastet variabler, nogle implicitte støbning er gjort for dig 936 00:45:00,810 --> 00:45:02,330 og nogle operationer. 937 00:45:02,330 --> 00:45:04,240 >> Du kan gøre operationer på tingene forskellige typer. 938 00:45:04,240 --> 00:45:08,740 Hvor der før, du ofte får en fejl i C siger, det er ikke den type 939 00:45:08,740 --> 00:45:09,610 der er meningen at gå her. 940 00:45:09,610 --> 00:45:11,510 Kun ting af denne type kan gå her. 941 00:45:11,510 --> 00:45:14,900 Du kommer ikke til at få denne type af fejl generelt i PHP. 942 00:45:14,900 --> 00:45:17,420 Så det er en stor forskel - hvordan vi behandler variabler. 943 00:45:17,420 --> 00:45:20,850 >> Den anden store forskel er, at PHP kode fortolkes. 944 00:45:20,850 --> 00:45:23,110 Wheres er C-kode kompileret. 945 00:45:23,110 --> 00:45:23,910 Hvad betyder det? 946 00:45:23,910 --> 00:45:26,700 >> Tja, for C-kode du kørte det gennem en compiler. 947 00:45:26,700 --> 00:45:29,010 Du genererede en binær fil. 948 00:45:29,010 --> 00:45:30,770 Og du kørte det binære fil. 949 00:45:30,770 --> 00:45:35,500 Du tog sig af alle fejl, før du genererede den binære fil. 950 00:45:35,500 --> 00:45:37,810 >> Selvfølgelig kunne der have været segmentering fejl, da du kørte 951 00:45:37,810 --> 00:45:39,020 binær fil. 952 00:45:39,020 --> 00:45:45,780 Men det er ikke som du har glemt at inkludere definitionen af ​​printf eller 953 00:45:45,780 --> 00:45:48,735 du ikke bruge en variabel og bare skabt en ødsel variabel. 954 00:45:48,735 --> 00:45:51,830 Eller du ikke definere en funktion prototype. 955 00:45:51,830 --> 00:45:53,590 >> Alle, der er sket før du har kompileret. 956 00:45:53,590 --> 00:45:56,830 Det gav dig alle de fejl eller dårlig ting, at det mente kunne ske. 957 00:45:56,830 --> 00:45:59,900 Og så, du havde din 0 og 1 fil, du kørte. 958 00:45:59,900 --> 00:46:01,690 PHP kode virker ikke sådan. 959 00:46:01,690 --> 00:46:03,750 >> Du kommer til at skrive din PHP kode. 960 00:46:03,750 --> 00:46:05,820 Så er du nødt til gemme det, formentlig. 961 00:46:05,820 --> 00:46:09,160 Og i hvert fald i P-Set 7, er du nødt at genopfriske din webbrowser, og 962 00:46:09,160 --> 00:46:11,110 du kommer til at se, hvad der skete. 963 00:46:11,110 --> 00:46:14,110 Du kommer se output af, at PHP kode. 964 00:46:14,110 --> 00:46:17,450 >> Du kan også se, øverst af din side, en fejl. 965 00:46:17,450 --> 00:46:19,960 Fordi du havde nogle fejl i din PHP. 966 00:46:19,960 --> 00:46:22,390 Du kan stadig se resten af websiden ser fint. 967 00:46:22,390 --> 00:46:25,130 Men en del er forkert, og der er en fejl på dette sted. 968 00:46:25,130 --> 00:46:28,320 Og det er fordi, at en del af din PHP kode virker ikke. 969 00:46:28,320 --> 00:46:31,680 >> Faktisk, når du udfører, når du gå til noget som by.php. 970 00:46:31,680 --> 00:46:34,950 Det kommer til at gå gennem din PHP fil linje for linje og udføre det 971 00:46:34,950 --> 00:46:36,210 da og kun da. 972 00:46:36,210 --> 00:46:39,890 Det kommer ikke til at kompilere det forud for tid eller kompilere en kopi og derefter give 973 00:46:39,890 --> 00:46:41,570 der kompileret kopi til alle. 974 00:46:41,570 --> 00:46:43,830 Hver gang, det kommer til at gå igennem linje for linje og udføre den. 975 00:46:43,830 --> 00:46:46,620 >> Så nogle linjer kan arbejde og output noget korrekt. 976 00:46:46,620 --> 00:46:49,500 Og andre strækninger kan være brudt og output en fejl i stedet. 977 00:46:49,500 --> 00:46:52,650 Så når debugging med PHP, har vi givet dig et par nyttige ting 978 00:46:52,650 --> 00:46:54,580 til at hjælpe dig debug, ligesom dump funktion. 979 00:46:54,580 --> 00:46:56,900 >> Men generelt, er du nødt at se disse fejl. 980 00:46:56,900 --> 00:46:58,340 Og det er, hvordan du kommer til at kender du gjorde noget forkert. 981 00:46:58,340 --> 00:47:00,740 Men du kun kommer til at se fejlen når du rent faktisk køre koden. 982 00:47:00,740 --> 00:47:03,420 983 00:47:03,420 --> 00:47:08,880 >> Et andet vigtigt aspekt af PHP og webudvikling er ideen om get 984 00:47:08,880 --> 00:47:09,920 versus indlæg. 985 00:47:09,920 --> 00:47:13,250 Kan nogen forklare, hvad forskellen mellem får og post er? 986 00:47:13,250 --> 00:47:17,530 987 00:47:17,530 --> 00:47:18,780 Nobody - 988 00:47:18,780 --> 00:47:21,710 989 00:47:21,710 --> 00:47:21,970 Ja. 990 00:47:21,970 --> 00:47:24,495 >> PUBLIKUM: Er ikke en af ​​dem lader brugeren se data, 991 00:47:24,495 --> 00:47:26,080 og en af ​​dem ikke? 992 00:47:26,080 --> 00:47:27,310 >> JASON HIRSCHHORN: Great. 993 00:47:27,310 --> 00:47:28,400 Ja, har du noget at tilføje? 994 00:47:28,400 --> 00:47:32,622 >> PUBLIKUM: Jeg tynd indlæg er et super-global variabel. 995 00:47:32,622 --> 00:47:34,740 >> JASON HIRSCHHORN: Så begge disse variabler er givet til dig. 996 00:47:34,740 --> 00:47:35,630 Disse er blot variabler. 997 00:47:35,630 --> 00:47:37,740 Og du ved, at de er variable, fordi lige her jeg 998 00:47:37,740 --> 00:47:38,780 bruge dollartegn. 999 00:47:38,780 --> 00:47:41,950 >> Det er variabler givet til dig af PHP. 1000 00:47:41,950 --> 00:47:45,990 Og når du flytter mellem websider, du vil gemme nogle oplysninger. 1001 00:47:45,990 --> 00:47:47,960 Du vil sandsynligvis at spare, hvis brugeren er logget ind 1002 00:47:47,960 --> 00:47:49,270 Det er ikke gemt i GET og POST. 1003 00:47:49,270 --> 00:47:51,390 Der er gemt i noget andet, en anden variabel. 1004 00:47:51,390 --> 00:47:55,170 >> Nogen vide, hvad variabel, der er gemt i, eller hvad variabel, du bruger i 1005 00:47:55,170 --> 00:47:57,728 P-Set 7, for at sikre, at brugeren er logget ind? 1006 00:47:57,728 --> 00:48:00,360 1007 00:48:00,360 --> 00:48:03,690 $ _SESSION, Det er helt rigtigt, formentlig vigtigt at være bekendt med 1008 00:48:03,690 --> 00:48:06,060 navnene på disse ting du bruger ofte. 1009 00:48:06,060 --> 00:48:10,070 >> Så du bruger session-variablen for at spare oplysninger fra side til side. 1010 00:48:10,070 --> 00:48:11,075 Det er en super variabel. 1011 00:48:11,075 --> 00:48:15,250 Den findes på hver side, måske som en global variabel, hvis du ønsker at tænke 1012 00:48:15,250 --> 00:48:16,900 om det på den måde. 1013 00:48:16,900 --> 00:48:19,260 >> Der er et par andre variabler der giver dig mulighed for at overføre oplysninger 1014 00:48:19,260 --> 00:48:20,710 fra side til side. 1015 00:48:20,710 --> 00:48:24,260 Især dem, vil vi fokusere på er GET og POST variabler. 1016 00:48:24,260 --> 00:48:29,330 I PHP de ligner $ _GET Og $ _POST. 1017 00:48:29,330 --> 00:48:33,610 Og forskellen, pegede da Marcus ud mellem to af dem er, at 1018 00:48:33,610 --> 00:48:37,670 oplysninger i $ _GET er vises i webadressen. 1019 00:48:37,670 --> 00:48:41,380 >> Så hvis vi ser hernede, vi ser en YouTube-link. 1020 00:48:41,380 --> 00:48:43,760 Vi ser dette spørgsmålstegn. 1021 00:48:43,760 --> 00:48:47,730 Vi ser v = og derefter nogle værdi. 1022 00:48:47,730 --> 00:48:53,460 Tilbage til denne idé om nøgleværdi par, v er nøglen. 1023 00:48:53,460 --> 00:48:56,970 Og herovre er værdien. 1024 00:48:56,970 --> 00:49:01,030 >> Så hvis vi skulle gå til denne side, eller kodning på denne side, ville vi have en 1025 00:49:01,030 --> 00:49:04,000 variabel kaldet $ _GET. 1026 00:49:04,000 --> 00:49:11,030 Hvis vi gik til $ _GET åbneparentes "v" tæt beslag, meget lig matrix 1027 00:49:11,030 --> 00:49:15,000 notation, dette er et associeret matrix fordi vi ikke bruger indeks. 1028 00:49:15,000 --> 00:49:16,710 Brugte strenge som nøgler. 1029 00:49:16,710 --> 00:49:17,940 Men meget lignende ide. 1030 00:49:17,940 --> 00:49:20,520 Hvis vi gik vi ville få denne værdi. 1031 00:49:20,520 --> 00:49:23,276 >> På denne side vil vi være i stand at bruge denne værdi. 1032 00:49:23,276 --> 00:49:32,200 Hvis vi rent faktisk ser, lad os gå til en YouTube-side. 1033 00:49:32,200 --> 00:49:35,140 Hvilken video skal vi se? 1034 00:49:35,140 --> 00:49:37,350 Denne ene, er folk Hobbit fans? 1035 00:49:37,350 --> 00:49:40,731 >> PUBLIKUM: Ja. 1036 00:49:40,731 --> 00:49:44,750 >> JASON HIRSCHHORN: Så jeg kopierer deres andel URL og 1037 00:49:44,750 --> 00:49:46,000 indsætte det i et nyt vindue. 1038 00:49:46,000 --> 00:49:48,550 1039 00:49:48,550 --> 00:50:00,470 Og nu, hvis man ser op her, vil du bemærke, at igen - 1040 00:50:00,470 --> 00:50:03,170 Jeg har tænkt mig at kopiere og indsætte denne i gedit, så vi kan se det større. 1041 00:50:03,170 --> 00:50:16,530 1042 00:50:16,530 --> 00:50:19,720 Du vil bemærke, at det har dette spørgsmålstegn. 1043 00:50:19,720 --> 00:50:22,150 Spørgsmålstegnet betegner, at alt efter dette vil være 1044 00:50:22,150 --> 00:50:23,530 gemt i get variabel. 1045 00:50:23,530 --> 00:50:29,130 >> Derefter har den v, det er det første nøgle og denne første værdi. 1046 00:50:29,130 --> 00:50:30,710 Ampersand er speciel. 1047 00:50:30,710 --> 00:50:34,340 Ampersand siger, OK, vi færdig med den første værdi. 1048 00:50:34,340 --> 00:50:37,170 Vi er nu bevæger sig videre til en anden nøgleværdi par. 1049 00:50:37,170 --> 00:50:41,135 Her er nøglen kaldes funktionen og værdien er youtu.be. 1050 00:50:41,135 --> 00:50:44,010 1051 00:50:44,010 --> 00:50:50,710 >> Så hvis jeg var en kodning denne side og nogen gik til denne webadresse, og jeg havde 1052 00:50:50,710 --> 00:50:53,190 måske watch.php. 1053 00:50:53,190 --> 00:50:54,150 Og jeg var kodning dette. 1054 00:50:54,150 --> 00:50:57,060 Og jeg kunne bruge $ _GET variabel. 1055 00:50:57,060 --> 00:51:02,740 Og jeg ville have en v, og Jeg ville have en funktion. 1056 00:51:02,740 --> 00:51:07,080 >> Og hvis jeg bruger v-tasten, jeg ville få denne værdi. 1057 00:51:07,080 --> 00:51:14,145 Og hvis jeg gjorde $ _GET beslag "feature" tæt beslag, ville jeg få denne værdi. 1058 00:51:14,145 --> 00:51:17,530 Igen, det gør ikke nødvendigvis gælder - 1059 00:51:17,530 --> 00:51:21,460 Det er klart, at YouTube-nøgler og værdier og få oplysninger gælder ikke for 1060 00:51:21,460 --> 00:51:22,700 Vores problem Set 7. 1061 00:51:22,700 --> 00:51:28,450 Men der er visse ting, som vi passere via GET i vores Problem Set 7. 1062 00:51:28,450 --> 00:51:33,120 Og helt sikkert, når du går til en webside eller kodning din egen side, 1063 00:51:33,120 --> 00:51:36,440 $ _GET Vil komme i handy når din kodning. 1064 00:51:36,440 --> 00:51:41,030 >> Hvad er en grund til at bruge $ _GET da, hvis det giver intet privatliv? 1065 00:51:41,030 --> 00:51:43,170 Du kan se alle disse oplysninger der bliver overført. 1066 00:51:43,170 --> 00:51:44,170 Det hele vises for brugeren. 1067 00:51:44,170 --> 00:51:49,060 Men hvad er en grund til, at du måske ønsker at spare noget i $ _GET, som 1068 00:51:49,060 --> 00:51:50,310 i modsætning til $ _POST? 1069 00:51:50,310 --> 00:51:52,650 1070 00:51:52,650 --> 00:51:53,900 Hvorfor du måske ønsker at gøre det? 1071 00:51:53,900 --> 00:51:58,065 1072 00:51:58,065 --> 00:51:58,540 >> Ok. 1073 00:51:58,540 --> 00:52:00,310 Jeg spurgte dig i Quiz 1. 1074 00:52:00,310 --> 00:52:02,210 Hvad er pro på $ _GET? 1075 00:52:02,210 --> 00:52:04,250 Hvad er en pro? 1076 00:52:04,250 --> 00:52:04,700 Ja - 1077 00:52:04,700 --> 00:52:06,180 >> PUBLIKUM: Det er nemmere at dele oplysninger. 1078 00:52:06,180 --> 00:52:07,040 >> JASON HIRSCHHORN: Jeg tror det er fantastisk. 1079 00:52:07,040 --> 00:52:07,870 Det er nemmere at dele information. 1080 00:52:07,870 --> 00:52:09,360 Det er nemmere at bogmærke. 1081 00:52:09,360 --> 00:52:15,260 >> Du kan oprette bogmærker nu YouTube.com / watch? V = noget og gå 1082 00:52:15,260 --> 00:52:16,900 til den specifikke video. 1083 00:52:16,900 --> 00:52:22,020 Hvis YouTube altid gjorde POST-anmodninger til forskellige sider, hver YouTube URL 1084 00:52:22,020 --> 00:52:22,985 ville være YouTube.com. 1085 00:52:22,985 --> 00:52:25,750 Du kunne ikke bogmærke en enkelt video. 1086 00:52:25,750 --> 00:52:28,160 Fordi hvis du siger delte dette link med en anden, ikke gør de 1087 00:52:28,160 --> 00:52:30,160 automatisk få dit indlæg variabel. 1088 00:52:30,160 --> 00:52:33,570 De er lige ved at komme på dette link, og link er den samme for alle. 1089 00:52:33,570 --> 00:52:35,180 >> Så det er en pro. 1090 00:52:35,180 --> 00:52:38,850 Det giver dig mulighed for at bogmærke denne oplysninger eller dele disse oplysninger 1091 00:52:38,850 --> 00:52:40,840 eller gøre det en lille smule mere brugervenlig. 1092 00:52:40,840 --> 00:52:43,890 Selvfølgelig er der ingen privatliv, så vi har dette indlæg variabel. 1093 00:52:43,890 --> 00:52:47,570 Og skrive information ikke er vises i webadressen. 1094 00:52:47,570 --> 00:52:49,200 >> Det er ikke helt privat. 1095 00:52:49,200 --> 00:52:51,710 Men det er marginalt mere privat. 1096 00:52:51,710 --> 00:52:55,030 Og så vil du se denne URL hernede, cs50.net. 1097 00:52:55,030 --> 00:52:59,200 Uanset om du er logget ind hjemmeside, går det til at have den samme 1098 00:52:59,200 --> 00:53:02,600 URL, cs50.net. 1099 00:53:02,600 --> 00:53:05,940 >> Det er klart, er noget anderledes, hvis du er logget ind på hjemmesiden. 1100 00:53:05,940 --> 00:53:08,690 Du har én, sandsynligvis indtaste din PIN-kode. 1101 00:53:08,690 --> 00:53:10,600 Og det er bekræftet, at med serveren. 1102 00:53:10,600 --> 00:53:12,650 Og det er nok at spare nogle andre oplysninger. 1103 00:53:12,650 --> 00:53:14,810 Men URL'en ændrer ikke på alle. 1104 00:53:14,810 --> 00:53:17,080 >> Og så er tilfældet, når noget er sendt med posten. 1105 00:53:17,080 --> 00:53:18,800 Webadressen ændres ikke. 1106 00:53:18,800 --> 00:53:21,100 Denne information POST ikke er vises i webadressen. 1107 00:53:21,100 --> 00:53:26,150 Men nogle stat har ændret sig, og måske Der er nogle oplysninger gemt i 1108 00:53:26,150 --> 00:53:27,400 POST variabel. 1109 00:53:27,400 --> 00:53:30,460 1110 00:53:30,460 --> 00:53:36,880 >> Undskyld. før jeg går ind i SQL, enhver spørgsmål om PHP, i særdeleshed, 1111 00:53:36,880 --> 00:53:41,850 spørgsmål om ting, vi ikke gå over at du har fundet eller nogen syntaks eller 1112 00:53:41,850 --> 00:53:43,855 logiske spørgsmål om PHP? 1113 00:53:43,855 --> 00:53:49,300 1114 00:53:49,300 --> 00:53:50,050 OK. 1115 00:53:50,050 --> 00:53:54,400 >> Den endelige sprog, du vil være interagere med denne uge er 1116 00:53:54,400 --> 00:53:58,920 Structured Query Language, SQL, udtalt efterfølger ofte. 1117 00:53:58,920 --> 00:54:01,740 Det giver dig mulighed for at interagere med database på en formaliseret måde. 1118 00:54:01,740 --> 00:54:04,390 Og det spiller meget pænt med PHP. 1119 00:54:04,390 --> 00:54:09,950 >> Som du kan se i Problem Set 7, vi har givet dig en funktion kaldet forespørgsel. 1120 00:54:09,950 --> 00:54:14,990 Og det tager en SQL-streng og udfører at forespørgslen på databasen. 1121 00:54:14,990 --> 00:54:17,470 I de forløbne år, du var ikke givet denne funktion. 1122 00:54:17,470 --> 00:54:22,250 Du var nødt til at bruge PHP funktioner til at gøre forespørgslen på databasen, og kontrollen 1123 00:54:22,250 --> 00:54:24,230 for fejl og derefter få resultaterne. 1124 00:54:24,230 --> 00:54:26,120 >> Og det er faktisk ikke så svært, fordi igen, det spiller 1125 00:54:26,120 --> 00:54:27,080 meget pænt med PHP. 1126 00:54:27,080 --> 00:54:31,240 Og PHP giver dig en masse funktioner til at interagere med en SQL-database. 1127 00:54:31,240 --> 00:54:34,810 Så ofte, de to af disse går sammen. 1128 00:54:34,810 --> 00:54:37,090 Selvfølgelig kunne du interagerer med SQL database med alle 1129 00:54:37,090 --> 00:54:38,400 række andre sprog. 1130 00:54:38,400 --> 00:54:41,420 Men PHP er en stor en til at vælge. 1131 00:54:41,420 --> 00:54:42,290 >> En database - 1132 00:54:42,290 --> 00:54:46,030 vi vil gå over dette hurtigt, fordi dette er et modeord, vi kommer til at 1133 00:54:46,030 --> 00:54:48,030 begynde at bruge ofte - 1134 00:54:48,030 --> 00:54:50,140 er en samling af tabeller. 1135 00:54:50,140 --> 00:54:53,960 Så vi kan tænke på det som en Excel-fil. 1136 00:54:53,960 --> 00:54:57,260 En Excel-fil har flere faneblade i bunden af ​​skærmen. 1137 00:54:57,260 --> 00:55:03,090 Hver fane vi nu kalder en tabel, hvor en tabel er en samling af rækker. 1138 00:55:03,090 --> 00:55:04,060 >> Og hvad er en række? 1139 00:55:04,060 --> 00:55:06,890 Tja, en række er den samme ting i Excel-fil. 1140 00:55:06,890 --> 00:55:10,380 At netop har visse værdier for hver givet felt eller hver given kolonne. 1141 00:55:10,380 --> 00:55:12,010 Det er ligesom en post i tabellen. 1142 00:55:12,010 --> 00:55:16,570 Det er en studerende, der har et id, et specifik id og et bestemt navn og en 1143 00:55:16,570 --> 00:55:17,910 specifik hus. 1144 00:55:17,910 --> 00:55:19,790 >> Så en database er en samling af tabeller. 1145 00:55:19,790 --> 00:55:22,685 Og bordene er en antallet af rækker eller poster. 1146 00:55:22,685 --> 00:55:25,470 1147 00:55:25,470 --> 00:55:28,280 Der er også i hver bord, visse områder. 1148 00:55:28,280 --> 00:55:32,130 Og der angiver, hvad hver post er nødt til, marker kaldes 1149 00:55:32,130 --> 00:55:33,890 kolonner, men generelt kaldet felter. 1150 00:55:33,890 --> 00:55:38,270 >> I denne meget simpel tabel, jeg har tre felter, et id felt, et brugernavn 1151 00:55:38,270 --> 00:55:39,780 felt, og en hash felt. 1152 00:55:39,780 --> 00:55:41,300 Og jeg har tre rækker. 1153 00:55:41,300 --> 00:55:42,100 Lige nu er de tomme. 1154 00:55:42,100 --> 00:55:44,850 De ville sandsynligvis ikke være tom hvis dette var min rigtige database. 1155 00:55:44,850 --> 00:55:50,530 >> Så hvis du har brugt Excel, lignende idé til, hvad du gør i Excel, selvom, 1156 00:55:50,530 --> 00:55:54,300 selvfølgelig, vi nu kommer til at være i stand til at gøre meget mere kraftfuld ting på 1157 00:55:54,300 --> 00:55:56,430 oplysninger, der er gemt i vores database. 1158 00:55:56,430 --> 00:56:00,270 Du vil være at skabe dig en database for Problem Set 7. 1159 00:56:00,270 --> 00:56:02,820 Men du vil være at skabe flere tabeller i databasen. 1160 00:56:02,820 --> 00:56:06,950 >> Du vil være at skabe en database eller en tabel for brugerne. 1161 00:56:06,950 --> 00:56:12,830 Du vil også blive oprette en tabel for sandsynligvis lagertransaktioner, for at holde 1162 00:56:12,830 --> 00:56:15,580 styr på dem, fordi du har brug for implementere en historie funktion. 1163 00:56:15,580 --> 00:56:18,370 Begge disse tabeller vil have forskellige områder. 1164 00:56:18,370 --> 00:56:22,190 For eksempel i en bruger felt skal du sandsynligvis vil have deres brugernavn og en 1165 00:56:22,190 --> 00:56:24,220 Id og en hash af deres adgangskode. 1166 00:56:24,220 --> 00:56:28,450 >> I Aktier tabel, der holder styr på historie eller historie bordet, du 1167 00:56:28,450 --> 00:56:31,620 sandsynligvis ikke brug for brugernavn og hash og id. 1168 00:56:31,620 --> 00:56:34,460 Du har sikkert kun brug for en af ​​dem værdier, der er unikke på at associere 1169 00:56:34,460 --> 00:56:35,830 det med en given bruger. 1170 00:56:35,830 --> 00:56:38,100 >> Men så, du ønsker at gemme andre ting som, hvad tid 1171 00:56:38,100 --> 00:56:40,630 blev transaktionen foretaget. 1172 00:56:40,630 --> 00:56:42,380 Hvad bestand blev købt eller solgt? 1173 00:56:42,380 --> 00:56:44,150 Hvor mange aktier i bestanden blev købt eller solgt? 1174 00:56:44,150 --> 00:56:48,360 Hvad var den pris, som bestand blev købt eller solgt? 1175 00:56:48,360 --> 00:56:50,180 >> Så igen, er du nødt til at interagere med et databaser, der findes i 1176 00:56:50,180 --> 00:56:51,350 kommer til at have flere tabeller. 1177 00:56:51,350 --> 00:56:54,340 Hver tabel vil have sit eget sæt af felter. 1178 00:56:54,340 --> 00:56:58,430 Imidlertid vil der sandsynligvis være en lignende felt i hver tabel, at 1179 00:56:58,430 --> 00:57:00,130 relaterer dem til hinanden. 1180 00:57:00,130 --> 00:57:02,660 Normalt er dette et id felt. 1181 00:57:02,660 --> 00:57:07,000 >> Fordi hvis hver bruger har et unikt id og du forbinder dette ID med hver 1182 00:57:07,000 --> 00:57:09,365 transaktion, som brugeren foretager eller alle denne brugers historie. 1183 00:57:09,365 --> 00:57:12,760 1184 00:57:12,760 --> 00:57:13,830 Og du har brugerens id. 1185 00:57:13,830 --> 00:57:15,365 Du kan få information enten tabel. 1186 00:57:15,365 --> 00:57:19,770 Du kan få deres brugernavn, og du kan få alle deres transaktioner. 1187 00:57:19,770 --> 00:57:24,410 >> Eventuelle spørgsmål om databaser, eller specifikke spørgsmål? 1188 00:57:24,410 --> 00:57:25,240 Faktisk, lad os holde det. 1189 00:57:25,240 --> 00:57:27,410 Vi vil være der i to sider. 1190 00:57:27,410 --> 00:57:31,210 >> Så der er fire operationer på databaser, som du vil bruge i 1191 00:57:31,210 --> 00:57:34,790 Problem Set 7 og sandsynligvis nogensinde bruge. 1192 00:57:34,790 --> 00:57:38,040 Den første ting, du ønsker at gøre, er at indsætte en ny rekord i en tabel eller et 1193 00:57:38,040 --> 00:57:39,960 ny række i en tabel. 1194 00:57:39,960 --> 00:57:46,070 Dette er den generiske funktion, generiske form af denne SQL-forespørgsel. 1195 00:57:46,070 --> 00:57:52,240 >> Indsætte i tabellen, uanset kolonner du vil indsætte, og derefter 1196 00:57:52,240 --> 00:57:58,740 de værdier, du vil ønsker at sat i disse kolonner eller felter. 1197 00:57:58,740 --> 00:58:03,980 Hvis du har flere tabeller i en database eller flere databaser, du 1198 00:58:03,980 --> 00:58:06,630 måske også nødt til at angive databasen og den tabel, du vil have 1199 00:58:06,630 --> 00:58:07,980 at sætte tingene i. 1200 00:58:07,980 --> 00:58:11,390 Men meget simpelt, hvis du ønsker at indsætte ind i noget, du siger, her er det 1201 00:58:11,390 --> 00:58:12,890 felter, jeg ønsker at indsætte i. 1202 00:58:12,890 --> 00:58:14,740 Og her er de værdier. 1203 00:58:14,740 --> 00:58:18,840 >> I nogle tabeller også og denne brugers bordet er et godt eksempel. 1204 00:58:18,840 --> 00:58:21,940 Sandsynligvis i denne brugers bord og sandsynligvis i din brugers bord i P-Set 1205 00:58:21,940 --> 00:58:24,200 7, er der ikke blot et brugernavn værdi. 1206 00:58:24,200 --> 00:58:27,100 Der er ikke bare en kontantværdi, eller felt, snarere. 1207 00:58:27,100 --> 00:58:29,140 Der er også et ID-felt. 1208 00:58:29,140 --> 00:58:31,110 >> Jeg har ikke tænkt mig at indsætte det id-felt. 1209 00:58:31,110 --> 00:58:34,020 Det kommer til at blive givet til mig automatisk, når en 1210 00:58:34,020 --> 00:58:35,810 ny rekord er indsat. 1211 00:58:35,810 --> 00:58:37,820 Så der er nogle felt, du kan indstilles til at være automatisk. 1212 00:58:37,820 --> 00:58:41,740 >> Måske du ønsker at give alle brugere $ 10,000 af kontanter off the bat. 1213 00:58:41,740 --> 00:58:43,470 Så jeg behøver ikke at indsætte en række af kontanter her. 1214 00:58:43,470 --> 00:58:45,860 Alt, hvad jeg har brug for at indsætte er brugernavnet. 1215 00:58:45,860 --> 00:58:49,230 Og så vil den kontante felt være præ-befolket, og id-feltet vil 1216 00:58:49,230 --> 00:58:50,590 på forhånd udfyldt. 1217 00:58:50,590 --> 00:58:53,640 >> Så ofte, vi ikke indsætte noget i alle områder, fordi 1218 00:58:53,640 --> 00:58:55,400 de øvrige felter er præ-befolket. 1219 00:58:55,400 --> 00:58:58,320 Fordi det er, hvordan vi oprette tabellen. 1220 00:58:58,320 --> 00:59:01,280 >> Den anden ting du vil ønsker at gøre, er at slette en post. 1221 00:59:01,280 --> 00:59:02,900 Sletning noget er meget enkel. 1222 00:59:02,900 --> 00:59:05,660 Du giver den tabel, hvor du vil have at slette noget fra. 1223 00:59:05,660 --> 00:59:11,202 Og du siger, OK, jeg ønsker at slette post, der har et brugernavn Milo. 1224 00:59:11,202 --> 00:59:16,180 Eller jeg ønsker at slette alle poster, har et brugernavn af Milo eller som var en 1225 00:59:16,180 --> 00:59:18,700 transaktion fra bruger-ID nummer 2. 1226 00:59:18,700 --> 00:59:21,950 1227 00:59:21,950 --> 00:59:24,809 Eventuelle spørgsmål vedrørende disse to typer af forespørgsler? 1228 00:59:24,809 --> 00:59:26,059 >> PUBLIKUM: [uhørligt]. 1229 00:59:26,059 --> 00:59:28,721 1230 00:59:28,721 --> 00:59:30,770 >> JASON HIRSCHHORN: Ja. 1231 00:59:30,770 --> 00:59:33,530 Så jeg har tænkt mig at bruge række og optage flæng og nogle 1232 00:59:33,530 --> 00:59:35,400 med kolonne og felt. 1233 00:59:35,400 --> 00:59:37,650 Men én række er en rekord. 1234 00:59:37,650 --> 00:59:40,080 Én søjle er et felt, der går tilbage til denne tabel. 1235 00:59:40,080 --> 00:59:44,210 1236 00:59:44,210 --> 00:59:45,420 >> OK. 1237 00:59:45,420 --> 00:59:47,310 Den næste ting du sandsynligvis kommer til at gøre, er at få nogle 1238 00:59:47,310 --> 00:59:48,400 information fra tabellen. 1239 00:59:48,400 --> 00:59:50,090 Det er en Select forespørgsel. 1240 00:59:50,090 --> 00:59:52,330 Og igen, hvad bord jeg vælge fra? 1241 00:59:52,330 --> 00:59:58,370 Og hvad kolonne ønsker jeg at vælge, eller hvilken værdi ønsker jeg at vælge og 1242 00:59:58,370 --> 00:59:59,530 hvorfra træk? 1243 00:59:59,530 --> 01:00:01,120 >> Så Select er lidt specifik. 1244 01:00:01,120 --> 01:00:03,620 Jeg siger, OK, jeg vil have denne tabel. 1245 01:00:03,620 --> 01:00:09,350 Og så vil jeg kolonnen brugernavn, og Jeg vil have det fra rækken med ID 2. 1246 01:00:09,350 --> 01:00:11,030 Det er en måde at gøre en Select. 1247 01:00:11,030 --> 01:00:14,180 >> Eller jeg kan sige, giv mig hver enkelt brugernavn. 1248 01:00:14,180 --> 01:00:18,200 Eller jeg kan sige, giv mig en hel ror fra denne tabel, hvor 1249 01:00:18,200 --> 01:00:19,460 brugernavnet er 1.. 1250 01:00:19,460 --> 01:00:22,300 Så der er et par forskellige måder at vælger forespørgsler, afhængigt af hvordan 1251 01:00:22,300 --> 01:00:24,130 mange oplysninger du ønsker, 1252 01:00:24,130 --> 01:00:29,410 >> Du kan altid vælge bare alt fra den specifikke tabel og derefter loop 1253 01:00:29,410 --> 01:00:31,320 gennem det, plukke ud de ting du ønsker. 1254 01:00:31,320 --> 01:00:33,940 Men husk, hvis du vælger en masse ting fra en tabel, og du 1255 01:00:33,940 --> 01:00:37,400 har en virkelig stor tabel, vil det tage stykke tid, så bedst at kun vælge 1256 01:00:37,400 --> 01:00:40,000 ting, som du kommer at ender med at bruge. 1257 01:00:40,000 --> 01:00:43,580 >> Også med Select og med alle disse andre SQL-kommandoer så godt, jeg er 1258 01:00:43,580 --> 01:00:45,760 giver dig den fødte knogler version. 1259 01:00:45,760 --> 01:00:51,600 Men sige, jeg vælger brugere, og jeg vil at udskrive dem alfabetisk, 1260 01:00:51,600 --> 01:00:56,710 Jeg kunne vælge alle brugere, og derefter sortere dem alfabetisk i min kode. 1261 01:00:56,710 --> 01:01:01,990 >> Eller der er en måde at skrive select forespørgsel, der vælger tingene i et 1262 01:01:01,990 --> 01:01:06,580 alfabetisk mode, baseret ud af en bestemt kolonne, enten stigende eller 1263 01:01:06,580 --> 01:01:07,490 faldende. 1264 01:01:07,490 --> 01:01:11,660 Så husk på, at en masse af, hvad du ønsker at gøre, kan sandsynligvis gøres i 1265 01:01:11,660 --> 01:01:15,070 forespørgslen gennem en yderligere attribut. 1266 01:01:15,070 --> 01:01:19,120 Så ser op på disse forespørgsler online eller de andre ting, du kan gøre med disse 1267 01:01:19,120 --> 01:01:21,410 forespørgsler til at udvide dem. 1268 01:01:21,410 --> 01:01:25,020 >> Endelig er den sidste ting du ønsker at gøre er ikke indsætte noget eller slette 1269 01:01:25,020 --> 01:01:26,700 noget, men snarere opdatere noget. 1270 01:01:26,700 --> 01:01:30,380 Og der er gjort med opdateringen forespørgsel, og igen, hvad bord. 1271 01:01:30,380 --> 01:01:32,530 Og hvad forandring ønsker jeg at gøre? 1272 01:01:32,530 --> 01:01:35,915 Og til hvilken række eller optage gøre Jeg ønsker at foretage denne ændring? 1273 01:01:35,915 --> 01:01:38,720 1274 01:01:38,720 --> 01:01:40,300 Eventuelle spørgsmål om SQL? 1275 01:01:40,300 --> 01:01:47,070 1276 01:01:47,070 --> 01:01:47,310 >> OK. 1277 01:01:47,310 --> 01:01:49,080 Så vi har cirka 15 minutter. 1278 01:01:49,080 --> 01:01:51,460 Og dette er den sidste slide jeg har. 1279 01:01:51,460 --> 01:01:55,380 Og forhåbentlig det sidste dias er en god Overgang til problemet indstillet, 1280 01:01:55,380 --> 01:01:58,820 fordi at forstå, hvor vi ønsker at indsætte poster, slette dem, skal du vælge 1281 01:01:58,820 --> 01:02:03,420 dem, og opdatere dem, vil hjælpe os forstå større logik og flow 1282 01:02:03,420 --> 01:02:05,570 Problem Set 7. 1283 01:02:05,570 --> 01:02:08,330 >> Så jeg kender alle svarene på disse spørgsmål. 1284 01:02:08,330 --> 01:02:10,570 Jeg har ikke tænkt mig at fortælle dig alle svarene. 1285 01:02:10,570 --> 01:02:15,530 Men hvis nogen ellers gerne vil præsentere et spørgsmål til gruppen eller 1286 01:02:15,530 --> 01:02:18,700 svaret på et af disse spørgsmål, kan vi bruge det som en hoppe fra punkt til 1287 01:02:18,700 --> 01:02:20,311 tale om problemet sæt. 1288 01:02:20,311 --> 01:02:24,159 1289 01:02:24,159 --> 01:02:27,260 Eller hvis nogen har en mere generisk spørgsmål fra problemet sæt føler 1290 01:02:27,260 --> 01:02:28,210 fri til at bede om, at så godt. 1291 01:02:28,210 --> 01:02:29,460 Og vi kan starte der. 1292 01:02:29,460 --> 01:02:32,840 1293 01:02:32,840 --> 01:02:35,973 Husk, at du være tavs er såre alle. 1294 01:02:35,973 --> 01:02:36,376 Ja. 1295 01:02:36,376 --> 01:02:39,540 >> PUBLIKUM: Så er den eneste måde at videregive variabler til og fra forskellige web 1296 01:02:39,540 --> 01:02:44,532 sider, eller den mest bekvemme måde, ved hjælp POST eller GET? 1297 01:02:44,532 --> 01:02:52,380 >> JASON HIRSCHHORN: Så ja, det er mest bekvemme måde at sige - når 1298 01:02:52,380 --> 01:02:53,970 nogen udfylder en formular - 1299 01:02:53,970 --> 01:02:57,540 få oplysninger om en anden web side, ved hjælp af GET eller POST. 1300 01:02:57,540 --> 01:03:00,400 1301 01:03:00,400 --> 01:03:04,320 På grund af de rammer, vi bruger i dette problem sæt, vil du bemærke 1302 01:03:04,320 --> 01:03:08,630 , at en masse gange, vi gengive en anden side. 1303 01:03:08,630 --> 01:03:12,420 vi Eller vi gør en anden fil, der ikke nødvendigvis en anden side. 1304 01:03:12,420 --> 01:03:14,050 >> Så vi passere i en variabel. 1305 01:03:14,050 --> 01:03:16,400 Og så det gør en HTML-side ved hjælp af 1306 01:03:16,400 --> 01:03:18,220 oplysninger fra denne variabel. 1307 01:03:18,220 --> 01:03:20,790 Det er ikke teknisk passerer oplysninger mellem 1308 01:03:20,790 --> 01:03:21,910 forskellige websider. 1309 01:03:21,910 --> 01:03:24,600 , Der passerer information mellem forskellige filer. 1310 01:03:24,600 --> 01:03:26,710 >> Og så vi kan bruge en hvilken som helst variabel til at gøre det. 1311 01:03:26,710 --> 01:03:33,230 Men ja, hvis vi ønskede at videregive information fra en bestemt side 1312 01:03:33,230 --> 01:03:36,850 en anden side, GET og POST ville være den måde at gøre det. 1313 01:03:36,850 --> 01:03:43,060 1314 01:03:43,060 --> 01:03:45,765 Eventuelle andre spørgsmål om problemet indstillet? 1315 01:03:45,765 --> 01:03:49,490 1316 01:03:49,490 --> 01:03:50,150 >> OK. 1317 01:03:50,150 --> 01:03:53,660 Lad os gå igennem, så en specifik del af problemet indstillet. 1318 01:03:53,660 --> 01:04:00,260 Du vil få brug for, på et tidspunkt, vise nogen portefølje på 1319 01:04:00,260 --> 01:04:01,710 skærmen. 1320 01:04:01,710 --> 01:04:06,454 Hvad mener jeg, når jeg siger portefølje, i forbindelse med dette problem indstillet? 1321 01:04:06,454 --> 01:04:11,350 >> PUBLIKUM: Det er ligesom de lagre, de har Hvor mange aktier de ejer, 1322 01:04:11,350 --> 01:04:13,760 prisen, og hvor meget penge, de har tilbage. 1323 01:04:13,760 --> 01:04:15,235 >> JASON HIRSCHHORN: Det lyder godt. 1324 01:04:15,235 --> 01:04:19,640 Så jeg ønsker at vise alle bestande de ejer for hver bestand virksomheds 1325 01:04:19,640 --> 01:04:23,770 aktier og sandsynligvis hvor meget der er værd, og derefter en separat variabel, 1326 01:04:23,770 --> 01:04:25,960 hvor mange penge de ejer. 1327 01:04:25,960 --> 01:04:27,150 Så jeg siger ønsker at beskrive det. 1328 01:04:27,150 --> 01:04:29,660 Lad os begynde at tale om, hvordan jeg kunne gå om at gøre det, hvad tabeller jeg 1329 01:04:29,660 --> 01:04:31,210 vil få brug for at have til være i stand til at gøre det. 1330 01:04:31,210 --> 01:04:34,070 1331 01:04:34,070 --> 01:04:34,460 Ja - 1332 01:04:34,460 --> 01:04:37,970 >> PUBLIKUM: Well-brugere, og så jeg gætte kan du lave en tabel kaldet 1333 01:04:37,970 --> 01:04:41,920 Aktier eller sådan noget, der ville være, hvor mange de har købt. 1334 01:04:41,920 --> 01:04:42,660 >> JASON HIRSCHHORN: OK. 1335 01:04:42,660 --> 01:04:46,530 Så jeg har tænkt mig at bruge en tabel kaldet Brugere, der holder styr på 1336 01:04:46,530 --> 01:04:50,640 brugernavn, formentlig, sandsynligvis noget ID, sandsynligvis en persons password. 1337 01:04:50,640 --> 01:04:52,850 Hvad er noget andet, som du lige sagt der er forbundet? 1338 01:04:52,850 --> 01:04:55,510 Nogen udover Michael, hvad er noget andet, der er forbundet med 1339 01:04:55,510 --> 01:04:58,270 hver bruger, unikke for dem? 1340 01:04:58,270 --> 01:05:00,050 >> PUBLIKUM: ID. 1341 01:05:00,050 --> 01:05:01,170 >> JASON HIRSCHHORN: ID - 1342 01:05:01,170 --> 01:05:03,540 hvad der er en anden ting, som vi er sandsynligvis lyst til at 1343 01:05:03,540 --> 01:05:05,685 vist på denne side? 1344 01:05:05,685 --> 01:05:06,990 >> PUBLIKUM: Deres navn. 1345 01:05:06,990 --> 01:05:10,550 >> JASON HIRSCHHORN: Deres navn - hvad er en anden ting relateret til dette 1346 01:05:10,550 --> 01:05:11,420 særligt problem indstillet? 1347 01:05:11,420 --> 01:05:14,110 >> PUBLIKUM: Hvilke aktier, de ejer - 1348 01:05:14,110 --> 01:05:16,650 >> JASON HIRSCHHORN: Der kommer til at være en masse af, hvad bestandene de ejer. 1349 01:05:16,650 --> 01:05:19,670 Hvad er en den specifikke værdi selv, at de er nødt til 1350 01:05:19,670 --> 01:05:22,640 forbundet med dem? 1351 01:05:22,640 --> 01:05:25,709 Hvordan vil de købe og sælge deres aktier? 1352 01:05:25,709 --> 01:05:26,595 >> PUBLIKUM: Kontant. 1353 01:05:26,595 --> 01:05:28,100 >> JASON HIRSCHHORN: De er kommer til at have kontanter. 1354 01:05:28,100 --> 01:05:31,020 Så hver bruger vil have én værdi for kontanter. 1355 01:05:31,020 --> 01:05:32,360 Og det kommer til at blive unik for hver bruger. 1356 01:05:32,360 --> 01:05:35,040 Så i brugerens tabel, gør det mening at sætte i kontanter. 1357 01:05:35,040 --> 01:05:39,100 >> Du kan selvfølgelig oprette en anden tabel, der har bruger-id'er og deres 1358 01:05:39,100 --> 01:05:40,200 værdien af ​​kontanter. 1359 01:05:40,200 --> 01:05:41,070 Men det giver ikke mening. 1360 01:05:41,070 --> 01:05:43,410 Det giver mening at bare sætte alt dette i én tabel. 1361 01:05:43,410 --> 01:05:46,860 >> Så vi kommer til at have en tabel med disse oplysninger. 1362 01:05:46,860 --> 01:05:48,360 Og så, hvad er den anden tabel vi skal have? 1363 01:05:48,360 --> 01:05:49,430 Du sagde, en Stocks bord. 1364 01:05:49,430 --> 01:05:50,680 Hvad skal vi sætte i den Aktier bordet? 1365 01:05:50,680 --> 01:05:55,860 1366 01:05:55,860 --> 01:05:57,530 Enhver, ideer - 1367 01:05:57,530 --> 01:05:58,796 >> PUBLIKUM: Virksomheden. 1368 01:05:58,796 --> 01:06:00,020 >> JASON HIRSCHHORN: Vi vil at sætte i navn 1369 01:06:00,020 --> 01:06:03,620 selskab, så AAPL for Apple. 1370 01:06:03,620 --> 01:06:04,050 Ja. 1371 01:06:04,050 --> 01:06:05,390 >> PUBLIKUM: Hvor mange aktier og hvor meget de er værd. 1372 01:06:05,390 --> 01:06:08,590 >> JASON HIRSCHHORN: Hvor mange aktier, hvor meget de er værd - 1373 01:06:08,590 --> 01:06:10,630 hvad der er noget andet, vi har brug for i denne tabel? 1374 01:06:10,630 --> 01:06:12,770 >> PUBLIKUM: En bruger-id til at indeksere det. 1375 01:06:12,770 --> 01:06:14,000 >> JASON HIRSCHHORN: En bruger-id. 1376 01:06:14,000 --> 01:06:16,070 Så i den tabel, vi vil sandsynligvis have - 1377 01:06:16,070 --> 01:06:18,610 lad os sige, hvis det er nogen, der ejer tre aktier, tre rækker, hver med 1378 01:06:18,610 --> 01:06:23,730 at bruger-id eller at de enkelte bruger- ID, men et andet firmanavn, et 1379 01:06:23,730 --> 01:06:28,570 forskelligt antal aktier Formentlig og en anden pris for hver 1380 01:06:28,570 --> 01:06:29,820 af disse bestande. 1381 01:06:29,820 --> 01:06:34,690 1382 01:06:34,690 --> 01:06:37,130 Igen, hvad jeg siger nu, er ikke nødvendigvis gennemførelsen 1383 01:06:37,130 --> 01:06:39,150 fordi du indser, at der er nogle flere effektive måder at gennemføre den. 1384 01:06:39,150 --> 01:06:41,020 Men det er et godt sted at starte. 1385 01:06:41,020 --> 01:06:41,430 >> OK. 1386 01:06:41,430 --> 01:06:42,830 Så det er de to tabeller, vi har. 1387 01:06:42,830 --> 01:06:44,470 Nu ønsker vi at vise denne side. 1388 01:06:44,470 --> 01:06:48,510 Hvad er den første type forespørgsel ville vi nødt til at gøre. 1389 01:06:48,510 --> 01:06:52,190 På hver side antaget, at en bruger er logget ind, har vi deres bruger-id. 1390 01:06:52,190 --> 01:06:55,480 Så hvad er den første type forespørge vi nødt til at gøre? 1391 01:06:55,480 --> 01:06:55,910 Ja. 1392 01:06:55,910 --> 01:06:56,936 >> PUBLIKUM: Deres bruger-id. 1393 01:06:56,936 --> 01:07:00,090 >> JASON HIRSCHHORN: Vi har deres bruger-id, når vi begynder at kode ved 1394 01:07:00,090 --> 01:07:01,340 begyndelsen af ​​vores side. 1395 01:07:01,340 --> 01:07:03,880 1396 01:07:03,880 --> 01:07:06,470 Så hvad er den første type forespørgsel, vi nødt til at gøre, da en brugers id? 1397 01:07:06,470 --> 01:07:09,580 1398 01:07:09,580 --> 01:07:10,530 Vi gik over de fire typer. 1399 01:07:10,530 --> 01:07:11,860 Der er kun fire mulige svar. 1400 01:07:11,860 --> 01:07:13,230 >> PUBLIKUM: Det er at vælge en rekord. 1401 01:07:13,230 --> 01:07:14,710 >> JASON HIRSCHHORN: A Vælg - 1402 01:07:14,710 --> 01:07:19,110 vi ønsker at vælge fra brugerens tabel for at få, lad os sige, 1403 01:07:19,110 --> 01:07:20,040 deres beløb i kontanter. 1404 01:07:20,040 --> 01:07:22,450 Og vi kan printe mængden af ​​kontanter på toppen af ​​skærmen. 1405 01:07:22,450 --> 01:07:22,720 OK. 1406 01:07:22,720 --> 01:07:24,210 Hvad er den næste type forespørge vi ønsker at gøre? 1407 01:07:24,210 --> 01:07:34,650 1408 01:07:34,650 --> 01:07:36,160 >> Vi har nogle andre ting vi nødt til at vise. 1409 01:07:36,160 --> 01:07:37,480 De gemmes i en anden tabel. 1410 01:07:37,480 --> 01:07:38,300 Så hvordan skal vi få det? 1411 01:07:38,300 --> 01:07:40,106 >> PUBLIKUM: Du vælger for dem. 1412 01:07:40,106 --> 01:07:42,490 >> JASON HIRSCHHORN: A Vælg - igen, der er kun fire muligheder. 1413 01:07:42,490 --> 01:07:44,180 Vælg sandsynligvis lyde som den rigtige. 1414 01:07:44,180 --> 01:07:47,510 Så vi er nødt til at gøre en anden udvælgelsesforespørgsel, igen ved hjælp af denne bruger-id. 1415 01:07:47,510 --> 01:07:50,370 Og nu ønsker vi at vende tilbage ikke bare én række, bu alle rækker, der matcher vores 1416 01:07:50,370 --> 01:07:53,200 kriterier, hvor bruger-id er lig med 1. 1417 01:07:53,200 --> 01:07:56,790 >> Og så kan vi gå og lade en løkke bare printe alle dem ud på skærmen, 1418 01:07:56,790 --> 01:07:59,250 måske udskrive virksomheden fra hver af dem på skærmen. 1419 01:07:59,250 --> 01:08:02,430 Store, det lyder som det er visning af en portefølje, ikke meget mere 1420 01:08:02,430 --> 01:08:03,810 kompliceret end som så. 1421 01:08:03,810 --> 01:08:07,460 >> OK, beslutter brugeren da, at de har masser af penge tilovers. 1422 01:08:07,460 --> 01:08:09,900 Og de ønsker at købe nogle flere aktier i et lager. 1423 01:08:09,900 --> 01:08:12,580 Lad os sige, at de allerede ejer dette selskabs bestand også. 1424 01:08:12,580 --> 01:08:14,110 >> Så de går til din buy-side. 1425 01:08:14,110 --> 01:08:16,830 De input virksomhedens navn. 1426 01:08:16,830 --> 01:08:20,380 Hvad er forespørgslen, efter input virksomhedens navn, som du har brug for 1427 01:08:20,380 --> 01:08:22,819 eksekvere næste? 1428 01:08:22,819 --> 01:08:23,180 Ja. 1429 01:08:23,180 --> 01:08:23,960 >> PUBLIKUM: Update. 1430 01:08:23,960 --> 01:08:26,670 >> JASON HIRSCHHORN: Opdatering - og hvad tabel ønsker du at opdatere? 1431 01:08:26,670 --> 01:08:29,018 >> PUBLIKUM: Deres bord, der er baseret på deres ID-nummer? 1432 01:08:29,018 --> 01:08:31,880 >> JASON HIRSCHHORN: Så opdatere ikke brugerens tabel - 1433 01:08:31,880 --> 01:08:36,029 1434 01:08:36,029 --> 01:08:40,899 så opdatere Stocks bordet, hvor bruger-ID matcher ikke alene, men 1435 01:08:40,899 --> 01:08:43,160 bestand navn også matcher. 1436 01:08:43,160 --> 01:08:45,660 Du får en vis værdi. 1437 01:08:45,660 --> 01:08:48,270 Og så vil du ønsker at tage denne værdi og tilføjer dog mange bestande de 1438 01:08:48,270 --> 01:08:49,890 ønsker at købe det. 1439 01:08:49,890 --> 01:08:53,420 >> Så du ikke ønsker at blindt overskrive denne værdi. 1440 01:08:53,420 --> 01:08:56,330 Men du kan faktisk tage det indledende værdsætter og bare opdatere den. 1441 01:08:56,330 --> 01:09:00,790 Du kan gøre som en plus lig, snarere end blot en ligemænd. 1442 01:09:00,790 --> 01:09:03,689 >> Hvad er noget selv - hvis vi er tænker om dette, og vi ønsker at være 1443 01:09:03,689 --> 01:09:08,090 så robuste som muligt - vi skal gøre før vi kører det opdateringsforespørgsel? 1444 01:09:08,090 --> 01:09:09,859 De ønsker at købe fem års Apple. 1445 01:09:09,859 --> 01:09:11,030 Hvert aktiebeløb på Apple er 200 dollars. 1446 01:09:11,030 --> 01:09:12,762 >> PUBLIKUM: Vi bør kontrollere penge først. 1447 01:09:12,762 --> 01:09:15,130 >> JASON HIRSCHHORN: Vi bør tjek penge først. 1448 01:09:15,130 --> 01:09:16,680 Vi bør sikre, at de har penge nok. 1449 01:09:16,680 --> 01:09:20,766 Hvilken slags forespørgsel kan vi udføre til sørg for at de har penge nok? 1450 01:09:20,766 --> 01:09:22,143 >> PUBLIKUM: Endnu Vælg. 1451 01:09:22,143 --> 01:09:23,680 >> JASON HIRSCHHORN: A Vælg - 1452 01:09:23,680 --> 01:09:26,580 vi vælger på grundlag af deres bruger-id, at få deres værdi af kontanter. 1453 01:09:26,580 --> 01:09:27,620 Har nogle hurtige matematik. 1454 01:09:27,620 --> 01:09:30,279 Og hvis der går mønstre, de har nok kontanter. 1455 01:09:30,279 --> 01:09:31,580 Så kan vi køre vores opdatering. 1456 01:09:31,580 --> 01:09:33,850 Eller måske, hvis ikke, vi passerer derefter. 1457 01:09:33,850 --> 01:09:35,370 Vi giver dem en advarsel. 1458 01:09:35,370 --> 01:09:35,710 >> OK. 1459 01:09:35,710 --> 01:09:36,560 Siger, at de ikke har et firma. 1460 01:09:36,560 --> 01:09:37,310 De køber et nyt selskab. 1461 01:09:37,310 --> 01:09:39,910 De køber Microsoft. 1462 01:09:39,910 --> 01:09:41,910 Hvilken form for henvendelser ønsker vi at gøre, hvis de ønsker at købe Microsoft? 1463 01:09:41,910 --> 01:09:43,350 Og de ikke ejer nogen Microsoft. 1464 01:09:43,350 --> 01:09:47,520 Ikke Manu, nogen anden, nogen foruden Marcus? 1465 01:09:47,520 --> 01:09:48,229 Carlos - 1466 01:09:48,229 --> 01:09:50,870 >> PUBLIKUM: A Vælg, for at sikre de har penge nok. 1467 01:09:50,870 --> 01:09:51,770 >> JASON HIRSCHHORN: Det lyder godt. 1468 01:09:51,770 --> 01:09:54,815 >> PUBLIKUM: Og så du indsætter på [uhørligt]. 1469 01:09:54,815 --> 01:09:56,500 >> JASON HIRSCHHORN: Præcis, vi er lyst til at indsætte 1470 01:09:56,500 --> 01:09:57,800 i Stocks tabel. 1471 01:09:57,800 --> 01:09:59,370 Og vi vil ønsker at indsætte. 1472 01:09:59,370 --> 01:10:02,510 Vi kan indsætte deres bruger-id, navn af virksomheden, og hvor mange aktier 1473 01:10:02,510 --> 01:10:03,940 de ønsker at købe. 1474 01:10:03,940 --> 01:10:08,040 >> Hvad er nogle andre operationer, er sider eller funktionalitet du er 1475 01:10:08,040 --> 01:10:10,420 nødt til at gennemføre i P-Set 7, at vi skulle gå over? 1476 01:10:10,420 --> 01:10:12,160 >> PUBLIKUM: Faktisk jeg slags har et spørgsmål om dette ene. 1477 01:10:12,160 --> 01:10:18,000 Før du vise porteføljen, bør du tjekker Yahoos hjemmeside 1478 01:10:18,000 --> 01:10:19,920 Sørg for, at aktiekurserne har ikke ændret sig? 1479 01:10:19,920 --> 01:10:21,660 >> JASON HIRSCHHORN: Det er lyde som en god idé. 1480 01:10:21,660 --> 01:10:27,260 Så hvad Marcus siger, er, OK, lager priserne er under konstant forandring. 1481 01:10:27,260 --> 01:10:32,840 I de lagre, de ejer bord, vores tabel kaldet Stocks, kunne vi spare 1482 01:10:32,840 --> 01:10:35,360 prisen på aktien, de købte det på. 1483 01:10:35,360 --> 01:10:37,990 >> Men, der ikke synes, at den robuste, fordi prisen på bestanden er 1484 01:10:37,990 --> 01:10:39,490 konstant kommer til at ændre. 1485 01:10:39,490 --> 01:10:41,990 Så i virkeligheden, har du sandsynligvis ikke brug for at gemme prisen på aktien. 1486 01:10:41,990 --> 01:10:45,230 Men hver gang du viser deres portefølje, du genopfriske eller opdatere den 1487 01:10:45,230 --> 01:10:46,280 prisen på aktien. 1488 01:10:46,280 --> 01:10:48,720 >> Og hvis du har - og du allerede har. 1489 01:10:48,720 --> 01:10:51,330 Jeg kender jer alle har kigget i Problemet sætter tilbage allerede. 1490 01:10:51,330 --> 01:10:55,410 Du har indset, at vi har skrevet noget kode til dig, der vil give dig 1491 01:10:55,410 --> 01:10:57,650 at få prisen på en bestand, givet en virksomheds navn. 1492 01:10:57,650 --> 01:10:59,620 >> Så ja, der sandsynligvis lyde en smule mere robust. 1493 01:10:59,620 --> 01:11:04,260 Men at tabellen ikke nødvendigvis at gemme prisen på aktien. 1494 01:11:04,260 --> 01:11:04,720 OK. 1495 01:11:04,720 --> 01:11:07,590 Hvad er nogle andre funktioner du nødt til at gennemføre denne uge, at 1496 01:11:07,590 --> 01:11:10,340 kan vi tale om? 1497 01:11:10,340 --> 01:11:11,590 Jeg ønsker at tale om dem. 1498 01:11:11,590 --> 01:11:14,342 1499 01:11:14,342 --> 01:11:16,516 >> Hvad vil du tale om? 1500 01:11:16,516 --> 01:11:17,810 Det er nok i denne spec. 1501 01:11:17,810 --> 01:11:20,600 Jeg ville bare rulle ned til bunden af spec og beder mig det første ord 1502 01:11:20,600 --> 01:11:21,850 du se, at ikke giver mening. 1503 01:11:21,850 --> 01:11:55,130 1504 01:11:55,130 --> 01:11:56,960 En anden funktionalitet - 1505 01:11:56,960 --> 01:11:57,840 lad os tale om én. 1506 01:11:57,840 --> 01:12:00,775 Vi starte der. 1507 01:12:00,775 --> 01:12:02,065 >> PUBLIKUM: Optagelse af historier. 1508 01:12:02,065 --> 01:12:03,960 >> JASON HIRSCHHORN: Optagelse historie, stor én. 1509 01:12:03,960 --> 01:12:06,920 Så du er nødt til at holde styr af en historie af transaktioner. 1510 01:12:06,920 --> 01:12:10,840 1511 01:12:10,840 --> 01:12:14,270 Så du ønsker at holde styr på alle gang de købe eller sælge en bestand. 1512 01:12:14,270 --> 01:12:15,160 >> Jeg købte min bestand. 1513 01:12:15,160 --> 01:12:18,580 Vi har lige sagt, er det sandsynligvis fornuftigt til at omfatte en Select, for at få deres 1514 01:12:18,580 --> 01:12:20,220 beløb i kontanter og tjekke tilbage. 1515 01:12:20,220 --> 01:12:25,270 Det sandsynligvis er smart så at omfatte en indsætte eller en opdatering, afhængigt af 1516 01:12:25,270 --> 01:12:27,720 uanset om de ejer denne bestand. 1517 01:12:27,720 --> 01:12:32,740 Hvis vi også ønsker at holde styr på en historie, hvordan kan vi gøre det? 1518 01:12:32,740 --> 01:12:37,530 1519 01:12:37,530 --> 01:12:38,720 Betyder at gå i Aktier bordet? 1520 01:12:38,720 --> 01:12:39,822 >> PUBLIKUM: Nej. 1521 01:12:39,822 --> 01:12:42,130 >> JASON HIRSCHHORN: Nej det sandsynligvis går i en anden tabel. 1522 01:12:42,130 --> 01:12:44,040 Fordi sige du køber 10 aktier i Apple. 1523 01:12:44,040 --> 01:12:45,370 Så kan du købe yderligere 10 aktier. 1524 01:12:45,370 --> 01:12:46,610 Du ønsker at trække separate records. 1525 01:12:46,610 --> 01:12:47,610 Det er to adskilte transaktioner. 1526 01:12:47,610 --> 01:12:50,510 >> Så vi har en anden tabel, en historie bord. 1527 01:12:50,510 --> 01:12:51,880 Så igen, vi køber. 1528 01:12:51,880 --> 01:12:54,080 Vi udfører en Select, så en Insert eller Update. 1529 01:12:54,080 --> 01:12:56,410 Hvad gør vi nu? 1530 01:12:56,410 --> 01:13:00,410 Hvad er det næste forespørgsel, vi udfører når vi køber noget? 1531 01:13:00,410 --> 01:13:01,430 Vi ønsker at holde styr på historien. 1532 01:13:01,430 --> 01:13:01,570 Ja. 1533 01:13:01,570 --> 01:13:05,195 >> PUBLIKUM: Du ønsker at holde styr af mislykkedes transaktioner også. 1534 01:13:05,195 --> 01:13:07,700 >> JASON HIRSCHHORN: Nå, før vi sige, hvilken type transaktion, 1535 01:13:07,700 --> 01:13:11,080 Hvad vil vi - 1536 01:13:11,080 --> 01:13:13,910 Hvilken type forespørgsel, Carlos, ville giver os mulighed for at holde styr 1537 01:13:13,910 --> 01:13:16,216 ting i almindelighed? 1538 01:13:16,216 --> 01:13:17,860 Du har fire gæt. 1539 01:13:17,860 --> 01:13:18,660 Hvilken en tror du? 1540 01:13:18,660 --> 01:13:20,835 >> PUBLIKUM: Opdatering. 1541 01:13:20,835 --> 01:13:22,400 >> JASON HIRSCHHORN: Ikke opdatere. 1542 01:13:22,400 --> 01:13:25,250 Hvad er dit andet gæt? 1543 01:13:25,250 --> 01:13:26,730 >> PUBLIKUM: Valg. 1544 01:13:26,730 --> 01:13:30,020 >> JASON HIRSCHHORN: Hvis du ønsker at beholde styr på noget, du sandsynligvis vil 1545 01:13:30,020 --> 01:13:33,310 at skrive det ned et eller andet sted eller gemme den til senere. 1546 01:13:33,310 --> 01:13:37,054 Så hvis ikke opdatere, så - 1547 01:13:37,054 --> 01:13:38,310 >> PUBLIKUM: Indsæt det. 1548 01:13:38,310 --> 01:13:39,553 >> JASON HIRSCHHORN: Indsæt, der vi går. 1549 01:13:39,553 --> 01:13:44,230 Ja, så du vælge den mængde kontanter, de har, lyder fantastisk. 1550 01:13:44,230 --> 01:13:45,320 De har ikke penge nok. 1551 01:13:45,320 --> 01:13:46,720 Denne transaktion er ikke at gå på arbejde. 1552 01:13:46,720 --> 01:13:49,440 Nej, du behøver ikke at holde styr på en transaktion, hvis det ikke virker. 1553 01:13:49,440 --> 01:13:52,280 Eller du kan, hvis du ønsker at give dem en hård tid. 1554 01:13:52,280 --> 01:13:53,430 Men du behøver ikke at. 1555 01:13:53,430 --> 01:13:55,820 >> Derefter skal du indsætte eller opdatere i deres lagre tabellen. 1556 01:13:55,820 --> 01:13:57,260 Og nu, du har din anden tabel. 1557 01:13:57,260 --> 01:13:59,790 Du har din historie bord eller uanset hvad du ønsker at kalde det. 1558 01:13:59,790 --> 01:14:02,920 Og i den tabel, du vil at indsætte en ny række. 1559 01:14:02,920 --> 01:14:04,205 >> Det er sandsynligvis kommer til at have brugerens id. 1560 01:14:04,205 --> 01:14:05,840 Det er formentlig kommer til at have navnet på bestanden. 1561 01:14:05,840 --> 01:14:08,760 Det er formentlig kommer til at have et tidspunkt, at de gjorde det. 1562 01:14:08,760 --> 01:14:11,500 Og i dette tilfælde, vil du sandsynligvis ønsker at indsætte prisen. 1563 01:14:11,500 --> 01:14:13,960 Fordi for en historie, du ikke ligeglad med, hvad den aktuelle pris er. 1564 01:14:13,960 --> 01:14:17,140 Du bekymrer dig, hvad prisen er, når de købt eller solgt noget. 1565 01:14:17,140 --> 01:14:21,530 >> Så det lyder som, at gennemføre opkøb fuldt involverer en række forskellige 1566 01:14:21,530 --> 01:14:25,530 SQL-forespørgsler, men helt ærligt, ikke så meget kode samlet. 1567 01:14:25,530 --> 01:14:26,330 OK. 1568 01:14:26,330 --> 01:14:28,840 Og der tager sig af historien. 1569 01:14:28,840 --> 01:14:30,450 >> Lad os sige, vi ønsker at vise vores historie. 1570 01:14:30,450 --> 01:14:31,670 Vi talte om at vise vores portefølje. 1571 01:14:31,670 --> 01:14:33,902 Hvordan ville vi viser vores historie? 1572 01:14:33,902 --> 01:14:36,312 >> PUBLIKUM: Formentlig kronologisk. 1573 01:14:36,312 --> 01:14:37,920 >> JASON HIRSCHHORN: Formentlig kronologisk - 1574 01:14:37,920 --> 01:14:39,400 hvad forespørgslen tror du vi ville bruge? 1575 01:14:39,400 --> 01:14:40,675 >> PUBLIKUM: En udvalgt. 1576 01:14:40,675 --> 01:14:41,840 >> JASON HIRSCHHORN: En udvalgt - 1577 01:14:41,840 --> 01:14:46,590 Vælg måske alle rækker fra tabellen der matcher bruger-ID og derefter 1578 01:14:46,590 --> 01:14:49,510 vise dem kronologisk, lyder godt. 1579 01:14:49,510 --> 01:14:52,590 Har vi brug for at skrive kode til sortere gennem denne liste? 1580 01:14:52,590 --> 01:14:55,084 >> PUBLIKUM: Nej, fordi du fortalte os er der en stigende 1581 01:14:55,084 --> 01:14:57,320 og faldende ting. 1582 01:14:57,320 --> 01:14:58,230 >> JASON HIRSCHHORN: Thing? 1583 01:14:58,230 --> 01:14:59,190 >> PUBLIKUM: Ja. 1584 01:14:59,190 --> 01:15:01,270 >> JASON HIRSCHHORN: Ja. 1585 01:15:01,270 --> 01:15:09,300 OK, ikke vende i kode til mig, at manuelt sorterer gennem dine spørgsmål, 1586 01:15:09,300 --> 01:15:09,820 at sortere dem. 1587 01:15:09,820 --> 01:15:12,480 At koden er allerede givet. 1588 01:15:12,480 --> 01:15:15,310 Du kan skrive en udvælgelsesforespørgsel der sorterer ting. 1589 01:15:15,310 --> 01:15:18,900 Sortere dem på forhånd og derefter printe dem ud. 1590 01:15:18,900 --> 01:15:22,070 Det gør så meget mere mening at gøre det på den måde, end den anden vej. 1591 01:15:22,070 --> 01:15:22,375 Ja. 1592 01:15:22,375 --> 01:15:23,925 >> PUBLIKUM: Har vi brug for at sortere dem på forhånd? 1593 01:15:23,925 --> 01:15:25,976 Betyder det, at du sortere dem i databasen? 1594 01:15:25,976 --> 01:15:30,510 >> JASON HIRSCHHORN: udvælgelsesforespørgslen returnerer dem til dig sorteres. 1595 01:15:30,510 --> 01:15:34,990 Så gør det, snarere end blot have dem vende tilbage til dig i en tilfældig rækkefølge og 1596 01:15:34,990 --> 01:15:36,150 derefter sortere dem selv. 1597 01:15:36,150 --> 01:15:36,405 Ja. 1598 01:15:36,405 --> 01:15:39,925 >> PUBLIKUM: Er der en måde at holde det sorteret i selve databasen, således at 1599 01:15:39,925 --> 01:15:41,355 behøver du ikke at sortere det hver gang du - 1600 01:15:41,355 --> 01:15:43,065 >> PUBLIKUM: Kan du indsætter det sorteret? 1601 01:15:43,065 --> 01:15:45,740 >> JASON HIRSCHHORN: Spørgsmål - 1602 01:15:45,740 --> 01:15:49,796 betyder det noget, at tingene sorteret i databasen? 1603 01:15:49,796 --> 01:15:50,700 >> PUBLIKUM: Nej. 1604 01:15:50,700 --> 01:15:52,240 >> JASON HIRSCHHORN: Jamen, de er sorteret. 1605 01:15:52,240 --> 01:15:53,100 De er ordnet kronologisk. 1606 01:15:53,100 --> 01:15:55,060 Men lad os antage, at tingene er ordnet 1607 01:15:55,060 --> 01:15:57,640 kronologisk, fra top til bund. 1608 01:15:57,640 --> 01:15:58,930 Vi har en Google-formular. 1609 01:15:58,930 --> 01:16:01,400 Når nogen reagerer på vores Google dannes, det bare bliver sat i 1610 01:16:01,400 --> 01:16:02,480 bunden af ​​denne tabel. 1611 01:16:02,480 --> 01:16:07,318 Betyder det noget, at tingene er sorteres ikke kronologisk? 1612 01:16:07,318 --> 01:16:11,290 >> PUBLIKUM: Hvis det ikke er kronologisk, behøver du ikke at sortere det hver gang 1613 01:16:11,290 --> 01:16:12,920 du tager info ud. 1614 01:16:12,920 --> 01:16:16,730 Men hvis den allerede er sorteret, kan du ikke ikke nødt til at gøre det ekstra 1615 01:16:16,730 --> 01:16:17,570 funktion opkald? 1616 01:16:17,570 --> 01:16:20,690 >> JASON HIRSCHHORN: Så det er faktisk en god pointe. 1617 01:16:20,690 --> 01:16:23,690 For os som programmører, det kunne noget. 1618 01:16:23,690 --> 01:16:26,190 Og vi måske ønsker at finde en database der ikke sortere tingene 1619 01:16:26,190 --> 01:16:26,900 kronologisk. 1620 01:16:26,900 --> 01:16:30,100 Eller oprettet vores database, så det holder tingene sorteret efter bruger-id. 1621 01:16:30,100 --> 01:16:34,060 >> Så på den måde, siger, vi har 1.000 bruger-id'er. 1622 01:16:34,060 --> 01:16:36,690 Eller Facebook, har vi millioner af bruger-id'er. 1623 01:16:36,690 --> 01:16:39,560 Vi ønsker ikke vores bord til bare at være tilfældig eller vores database til at være tilfældig. 1624 01:16:39,560 --> 01:16:41,630 Det ville være rart, hvis alle bruger-id'er blev sorteret. 1625 01:16:41,630 --> 01:16:46,020 Så vi kunne køre binære søgninger på vores bord, og så bare finde det 1626 01:16:46,020 --> 01:16:47,050 specifik luns. 1627 01:16:47,050 --> 01:16:50,640 >> Så ja, alt efter - hvis vi skaleres op, vi måske ønsker at finde en database 1628 01:16:50,640 --> 01:16:53,370 der holdt tingene sorteret i en anden måde, således at disse forespørgsler 1629 01:16:53,370 --> 01:16:54,140 ville tage mindre tid. 1630 01:16:54,140 --> 01:16:56,820 Og vi behøvede ikke at gå igennem vores hele databasen i hver enkelt række i 1631 01:16:56,820 --> 01:16:58,260 en given tabel. 1632 01:16:58,260 --> 01:17:01,640 Men det niveau, vi arbejder på, vi behøver ikke at bekymre sig om at holde 1633 01:17:01,640 --> 01:17:02,270 ting sorteres. 1634 01:17:02,270 --> 01:17:06,100 Vi kan antage, at den tid det tager denne forespørgsel til at køre vil være 1635 01:17:06,100 --> 01:17:08,910 ubetydelig lyset af, hvad vi har at gøre med. 1636 01:17:08,910 --> 01:17:13,550 Men ja, rigtig god idé - som vi skalere op, det kan give mening at designe vores 1637 01:17:13,550 --> 01:17:15,390 database i lidt af en anderledes måde. 1638 01:17:15,390 --> 01:17:18,520 >> En sidste database design ting jeg vil at nævne så godt, fordi du vil 1639 01:17:18,520 --> 01:17:22,660 sorteres, eller scorede snarere om udformningen af ​​din database. 1640 01:17:22,660 --> 01:17:24,160 Vi talte om dette. 1641 01:17:24,160 --> 01:17:27,490 Cash er unik for hver bruger. 1642 01:17:27,490 --> 01:17:30,820 Så du har fået en tabel kaldet kontanter, har deres bruger-id, og deres mængde 1643 01:17:30,820 --> 01:17:33,370 kontanter og derefter en tabel kaldet brugere, der har deres bruger 1644 01:17:33,370 --> 01:17:34,810 ID og deres brugernavn. 1645 01:17:34,810 --> 01:17:37,390 >> Disse tabeller kort på hver anden-til-én. 1646 01:17:37,390 --> 01:17:39,520 Det sandsynligvis giver mening for dem til at være en enkelt tabel. 1647 01:17:39,520 --> 01:17:42,750 1648 01:17:42,750 --> 01:17:44,830 Så lad os antage at du har en bruger tabel, der holder styr på 1649 01:17:44,830 --> 01:17:46,220 brugernavne og kontanter. 1650 01:17:46,220 --> 01:17:49,960 Du har nu en tabel, der har den lagre en person ejer. 1651 01:17:49,960 --> 01:17:52,130 >> Og en person kan eje mere end én bestand. 1652 01:17:52,130 --> 01:17:54,900 Så disse ikke kort på hinanden én-til-én. 1653 01:17:54,900 --> 01:18:00,140 Det giver ikke mening at have en kæmpe tabel, der har 30 poster, 1654 01:18:00,140 --> 01:18:02,960 alle gentage et brugernavn, der alle gentage en adgangskode, at alle 1655 01:18:02,960 --> 01:18:04,680 gentage en række af kontanter. 1656 01:18:04,680 --> 01:18:08,360 Men hver har måske en anden bestand navn eller en anden bestand pris. 1657 01:18:08,360 --> 01:18:11,310 >> Det giver ikke mening at have at mange store poster. 1658 01:18:11,310 --> 01:18:14,880 Være smart om når du opretter disse databaser, så du ikke laver 1659 01:18:14,880 --> 01:18:20,050 noget dumt gerne, at gentage en masse unødvendige oplysninger. 1660 01:18:20,050 --> 01:18:20,570 >> OK. 1661 01:18:20,570 --> 01:18:22,570 Vi har to minutter tilbage. 1662 01:18:22,570 --> 01:18:26,580 Folk udenfor er glade for at slutte sig til os eller sandsynligvis formodentlig 1663 01:18:26,580 --> 01:18:27,650 starte deres egen klasse. 1664 01:18:27,650 --> 01:18:30,110 Er der nogen har nogen spørgsmål før vi slutter op? 1665 01:18:30,110 --> 01:18:35,520 1666 01:18:35,520 --> 01:18:38,620 >> OK, det var faktisk en hvirvelvind gennem alt. 1667 01:18:38,620 --> 01:18:43,510 Jeg undskylder, at det skulle være så hurtig og at vi ikke kunne være så hands-on 1668 01:18:43,510 --> 01:18:46,640 denne uge, som jeg ville have gerne have været. 1669 01:18:46,640 --> 01:18:50,610 Men hvis du har spørgsmål om noget vi gik over eller noget i 1670 01:18:50,610 --> 01:18:52,090 dette problem sæt - 1671 01:18:52,090 --> 01:18:54,900 Formodning du har læst det og sætte i en god tro indsats - 1672 01:18:54,900 --> 01:18:57,920 velkommen til at kontakte mig eller kontakte mig. 1673 01:18:57,920 --> 01:19:00,960 Jeg er mere end glad for at arbejde gennem din kode med dig eller besvare alle 1674 01:19:00,960 --> 01:19:02,330 spørgsmål, du har. 1675 01:19:02,330 --> 01:19:06,160 >> Husk på, at i denne uge, en masse din tid vil blive brugt på at lære det 1676 01:19:06,160 --> 01:19:10,730 ny syntaks og forsøger at forstå hvordan man skriver SQL-forespørgsler eller PHP 1677 01:19:10,730 --> 01:19:14,280 funktioner eller aftale med en MVC ramme. 1678 01:19:14,280 --> 01:19:17,290 En masse af din tid i denne uge sandsynligvis vil ikke forsøge at finde ud af 1679 01:19:17,290 --> 01:19:19,380 skøre logik, at vi er beder dig om at gøre. 1680 01:19:19,380 --> 01:19:23,820 En masse af det, vi bare gik over er relativt ligetil. 1681 01:19:23,820 --> 01:19:25,790 >> Så det betyder ikke vente indtil det sidste minut. 1682 01:19:25,790 --> 01:19:29,710 Men det betyder, justere, hvordan du gør din arbejde i overensstemmelse hermed, for at sikre 1683 01:19:29,710 --> 01:19:30,970 du forstå og lære syntaks. 1684 01:19:30,970 --> 01:19:33,640 Så du er ikke, alle af en pludselig, vel vidende præcis, hvad du ønsker at gøre, 1685 01:19:33,640 --> 01:19:37,200 men med ingen idé om, hvordan man præcis skrive det. 1686 01:19:37,200 --> 01:19:38,450 OK, jeg vil se dig i næste uge. 1687 01:19:38,450 --> 01:19:40,438