1 00:00:00,000 --> 00:00:08,802 2 00:00:08,802 --> 00:00:11,140 >> JASON Hirschhorn: Velkommen alle til uke åtte. 3 00:00:11,140 --> 00:00:13,420 Vi har en spennende uke foran oss. 4 00:00:13,420 --> 00:00:21,390 Dere har due i denne siste par av forelesninger til PHP, SQL, HTML, CSS, så 5 00:00:21,390 --> 00:00:27,270 fire splitter nye språk som kommer å ta opp resten av dette kurset. 6 00:00:27,270 --> 00:00:30,750 Vi vil også lære et par andre språk før slutten kursets. 7 00:00:30,750 --> 00:00:35,200 Men uansett, unødvendig å si, er dette en veldig spennende tid i CS50, nå du 8 00:00:35,200 --> 00:00:41,200 har mestret C, tilsynelatende, og er går videre til programmering for nettsteder. 9 00:00:41,200 --> 00:00:45,320 >> Så denne uken, har vi tenkt å gå på en rask tur gjennom fire 10 00:00:45,320 --> 00:00:50,200 språk jeg nettopp nevnte, HTML, CSS, PHP og SQL. 11 00:00:50,200 --> 00:00:53,340 Og forhåpentligvis vil vi la god tid på slutten av delen for å snakke 12 00:00:53,340 --> 00:00:58,800 om denne ukens P sett og svar eventuelle spørsmål du alt har. 13 00:00:58,800 --> 00:01:03,500 >> Hver uke, den samme listen over ressurser for deg, for å hjelpe deg med ukens 14 00:01:03,500 --> 00:01:05,780 oppgavesettet og går over materialet - 15 00:01:05,780 --> 00:01:09,440 men dette uke særlig for disse nettbaserte oppgavesett, er det en 16 00:01:09,440 --> 00:01:12,350 rekke andre ressurser ut det at du vil sannsynligvis 17 00:01:12,350 --> 00:01:13,500 finner utrolig nyttig. 18 00:01:13,500 --> 00:01:14,670 Jeg har dem her oppe. 19 00:01:14,670 --> 00:01:17,570 Jeg vil sende deg dette etter delen, og dette også være online. 20 00:01:17,570 --> 00:01:21,700 >> Men i særdeleshet, er det nok av store ressurser der ute. 21 00:01:21,700 --> 00:01:24,380 Det er også noen ikke så stor seg, så vær forsiktig med disse. 22 00:01:24,380 --> 00:01:28,210 Men på dette lysbildet, jeg har fire gode ressurser, en for hver av de 23 00:01:28,210 --> 00:01:30,600 språk som du skal jobbe med denne uken - 24 00:01:30,600 --> 00:01:35,090 en referanse ark for HTML, en referanse ark for CSS. 25 00:01:35,090 --> 00:01:38,320 Denne retten her er PHP manualen. 26 00:01:38,320 --> 00:01:42,110 >> Så i stedet for å skrive mann og deretter en PHP kommando, er dette hvor du ville 27 00:01:42,110 --> 00:01:46,980 gå å se opp funksjonen prototype og eksempler og også noen tips og 28 00:01:46,980 --> 00:01:48,770 triks for å bruke PHP funksjoner. 29 00:01:48,770 --> 00:01:51,590 Du vil bruke dette området ofte, så jeg oppfordrer deg til å bli 30 00:01:51,590 --> 00:01:52,280 kjent med den. 31 00:01:52,280 --> 00:01:55,860 Det kan være litt teknisk, men det gir også massevis av ressurser og 32 00:01:55,860 --> 00:02:00,440 eksempler for alle funksjoner og selv andre, som hvordan å bruke arrays eller 33 00:02:00,440 --> 00:02:01,500 ulike typer variabler. 34 00:02:01,500 --> 00:02:03,480 Dette området er svært nyttig for PHP. 35 00:02:03,480 --> 00:02:07,160 >> Og så, for SQL, hvis du due i dette ukes problem sett, vet du 36 00:02:07,160 --> 00:02:09,160 at vi bruker en database. 37 00:02:09,160 --> 00:02:13,340 Og vi tilgang til denne databasen gjennom en relativt fin brukergrensesnitt. 38 00:02:13,340 --> 00:02:15,760 Eller det er en måte å få tilgang den databasen. 39 00:02:15,760 --> 00:02:19,670 Brukergrensesnittet er kalt phpMyAdmin. 40 00:02:19,670 --> 00:02:23,400 Det er en SQL-kategorien, som vi vil se på senere i dag. 41 00:02:23,400 --> 00:02:28,230 >> Og du kan skrive inn i deres prøve SQL spørringer, for å gjøre ting i databasen 42 00:02:28,230 --> 00:02:29,780 og deretter kjøre disse søkene. 43 00:02:29,780 --> 00:02:31,850 Og hvis de er riktige, det vil si, dette er riktig. 44 00:02:31,850 --> 00:02:33,480 Hvis de er feil, det vil si, det er feil. 45 00:02:33,480 --> 00:02:37,260 Det er et flott sted å øve på SQL-spørringer før du skriver dem inn 46 00:02:37,260 --> 00:02:39,990 koden, for å sørge for at du har formatet riktig. 47 00:02:39,990 --> 00:02:42,080 >> Endelig, en annen nettside på her. 48 00:02:42,080 --> 00:02:45,390 Dette er nettstedet hvor du kan gå og sjekke for å sørge for at 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 slår dine problemer innstilt denne uken, sørge for at alle 51 00:02:51,250 --> 00:02:52,690 HTML er gyldig. 52 00:02:52,690 --> 00:02:55,840 >> I forrige uke hadde du kjører Valgrind, til pass på at du ikke hadde noen minnelekkasjer. 53 00:02:55,840 --> 00:02:59,050 Denne uken, må du sørge for at alle av koden din er gyldig HTML5. 54 00:02:59,050 --> 00:03:02,140 Hvis det ikke er gyldig HTML5, er du kommer til å få poeng av. 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 fungerer ikke mener det er helt gyldig. 57 00:03:05,700 --> 00:03:09,770 Kjør koden din via denne nettsiden før du slår det i. 58 00:03:09,770 --> 00:03:10,810 Igjen, her på nettsiden. 59 00:03:10,810 --> 00:03:15,150 >> Hvis du har noen tilbakemeldinger for meg, har vi et par av flere deler igjen, 60 00:03:15,150 --> 00:03:18,100 og jeg ønsker alltid å gjøre det jeg kan for å gi dere alle med den beste delen 61 00:03:18,100 --> 00:03:19,460 oppleve mulig. 62 00:03:19,460 --> 00:03:22,115 Så gi meg beskjed hvis det er noe jeg kan gjøre for å forbedre eller om det er 63 00:03:22,115 --> 00:03:24,730 ting du ser at jeg kunne gjøre det bedre. 64 00:03:24,730 --> 00:03:25,710 Takk, Avi. 65 00:03:25,710 --> 00:03:27,610 Sett det på nettsiden. 66 00:03:27,610 --> 00:03:31,870 >> Dette var den sykkelen jeg hadde da jeg var, la oss si, fire hjemme. 67 00:03:31,870 --> 00:03:34,500 Det er en Teenage Mutant Ninja Turtle sykling, i tilfelle du ikke kan fortelle, 68 00:03:34,500 --> 00:03:35,345 fordi det er litt uskarpt. 69 00:03:35,345 --> 00:03:38,900 Du kan få det nå på ToysRUs for, tror jeg, ca 100 kr. 70 00:03:38,900 --> 00:03:42,690 >> Men den funksjonen i denne sykkelen som jeg vil du å ta hensyn til er disse 71 00:03:42,690 --> 00:03:43,480 akkurat her. 72 00:03:43,480 --> 00:03:44,980 Disse er de støttehjul. 73 00:03:44,980 --> 00:03:50,230 Frem til nå har du vært håndholdt gjennom C. Og vi har tatt lang 74 00:03:50,230 --> 00:03:53,610 gang, to måneder pluss, å gå gjennom C. 75 00:03:53,610 --> 00:03:55,440 >> For disse neste par språk, vi kommer ikke til å 76 00:03:55,440 --> 00:03:56,600 bruke så mye tid. 77 00:03:56,600 --> 00:03:58,350 De trening hjul kommer av. 78 00:03:58,350 --> 00:04:01,360 Og vi kommer til å dykke inn i disse språk raskt og bevege seg gjennom 79 00:04:01,360 --> 00:04:04,720 dem raskt, noe som ikke er å si at vi bare kommer til å la deg svømme 80 00:04:04,720 --> 00:04:07,590 ute med ingen måte å støtte selv eller finne ut hvordan disse 81 00:04:07,590 --> 00:04:08,270 språk fungerer. 82 00:04:08,270 --> 00:04:10,750 Jeg bare viste deg en liste over ressurser til å hjelpe deg. 83 00:04:10,750 --> 00:04:14,560 >> Men husk at PHP er utrolig lik C. Vi skal gå over 84 00:04:14,560 --> 00:04:15,970 det i dag, og noen av forskjellene. 85 00:04:15,970 --> 00:04:17,990 Men for det meste det er for sløyfer. 86 00:04:17,990 --> 00:04:18,750 Det er hvis forholdene. 87 00:04:18,750 --> 00:04:20,680 >> Når du ønsker å løse et problem, du kommer til å bruke en 88 00:04:20,680 --> 00:04:22,029 kombinasjon av disse. 89 00:04:22,029 --> 00:04:22,920 Det er veldig lik. 90 00:04:22,920 --> 00:04:26,040 Logikken bør være svært likt hva du har gjort i fortiden. 91 00:04:26,040 --> 00:04:29,810 Hva er egentlig nytt denne uken er det syntaks og hvordan du uttrykker deg. 92 00:04:29,810 --> 00:04:32,850 Og du ønsker å skrive en for loop, men det kan se litt annerledes. 93 00:04:32,850 --> 00:04:35,910 Eller du ønsker å opprette en matrise, men det kan se litt annerledes. 94 00:04:35,910 --> 00:04:39,920 >> Så husk at, går fremover, logikk er svært likt 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 er nå kommer til å bli møter mye ny syntaks. 97 00:04:44,030 --> 00:04:47,600 Og vi kommer ikke til å gå gjennom alle elementer av syntaksen. 98 00:04:47,600 --> 00:04:53,020 Så det er egentlig opp til deg å finne ut, online eller gjennom å nå ut på 99 00:04:53,020 --> 00:04:58,770 Diskuter eller maile meg eller snakke med hverandre, hvordan å skrive ting i 100 00:04:58,770 --> 00:05:02,580 PHP og hvordan å skrive SQL-spørringer og hvordan du bruker HTML og CSS. 101 00:05:02,580 --> 00:05:06,160 >> Men bare så du vet, det er ikke det vi prøver å kaste deg ute 102 00:05:06,160 --> 00:05:07,630 igjen å svømme haiene. 103 00:05:07,630 --> 00:05:10,600 Dette er hva du vil sannsynligvis gjøre med det endelige prosjektet, hvis du velger en 104 00:05:10,600 --> 00:05:15,150 annet språk, som IOS og Objective C, eller hvis du bestemmer deg for å starte 105 00:05:15,150 --> 00:05:17,580 programmering i fremtiden, og dykke til andre språk, 106 00:05:17,580 --> 00:05:19,210 som Python eller Ruby. 107 00:05:19,210 --> 00:05:23,380 >> Ofte er det logiske svært like på tvers av alle disse språkene, og 108 00:05:23,380 --> 00:05:24,560 syntaks er det som er annerledes. 109 00:05:24,560 --> 00:05:27,560 Og det vil være opp til deg, som programmerer, å gå bruke nettet 110 00:05:27,560 --> 00:05:30,790 ressurser tilgjengelig for deg og figur ut hvordan de skal uttrykke hva du vet hvordan 111 00:05:30,790 --> 00:05:33,200 å uttrykke i C, i en annet språk. 112 00:05:33,200 --> 00:05:36,410 Så dette er god praksis, både for din endelige prosjektet, og igjen, for 113 00:05:36,410 --> 00:05:40,150 hva vil du sannsynligvis gjøre etter at du forlater CS50. 114 00:05:40,150 --> 00:05:42,550 >> Før vi går videre, gjør noen har noen spørsmål om hva 115 00:05:42,550 --> 00:05:43,800 Jeg har gjort så langt? 116 00:05:43,800 --> 00:05:52,450 117 00:05:52,450 --> 00:05:53,120 Flott. 118 00:05:53,120 --> 00:05:53,910 La oss gå videre. 119 00:05:53,910 --> 00:05:59,090 >> Først skal vi snakke kort om chmod kommandoen. 120 00:05:59,090 --> 00:06:02,420 Dette vil vi gjøre i starten av dine problemer innstilt. 121 00:06:02,420 --> 00:06:05,050 En av de aller første instruksjoner for deg, etter at du har lastet ned 122 00:06:05,050 --> 00:06:09,280 fordelingskode, er å endre tillatelser av filer og 123 00:06:09,280 --> 00:06:11,350 kataloger du mottar. 124 00:06:11,350 --> 00:06:16,430 >> Kan noen våge en gjetning eller vet hvorfor det er viktig å endre 125 00:06:16,430 --> 00:06:20,012 tillatelser av visse filer og kataloger på datamaskinen din? 126 00:06:20,012 --> 00:06:20,956 Avi - 127 00:06:20,956 --> 00:06:24,796 >> PUBLIKUM: Da ingen unntatt for du kan se hva du gjør? 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 å sette noe på Internett og du har tillatelser satt som 130 00:06:28,330 --> 00:06:30,960 bare du kan se noe, så ingen andre kan 131 00:06:30,960 --> 00:06:32,530 se hva du har opprettet. 132 00:06:32,530 --> 00:06:33,380 Hva annet? 133 00:06:33,380 --> 00:06:34,320 Yeah. 134 00:06:34,320 --> 00:06:37,360 >> PUBLIKUM: Forhindre noen andre at du ønsker ikke å se noe, fra 135 00:06:37,360 --> 00:06:37,870 å se noe. 136 00:06:37,870 --> 00:06:38,820 >> JASON Hirschhorn: Det er sant også. 137 00:06:38,820 --> 00:06:40,730 Det er sannsynligvis noen kode som du skriver, at du ikke gjør det 138 00:06:40,730 --> 00:06:42,690 ønsker folk å se. 139 00:06:42,690 --> 00:06:46,190 Du er sikkert OK med folk ser HTML og Javascript. 140 00:06:46,190 --> 00:06:50,360 Men din PHP, en back end-kode, mye logikken til koden din, kanskje 141 00:06:50,360 --> 00:06:53,200 ting som lagrer noen av passordene dine for databasen din, gjør du ikke 142 00:06:53,200 --> 00:06:55,880 vil at folk skal se at type informasjon. 143 00:06:55,880 --> 00:06:59,420 >> Så det er viktig at hver fil og katalog vi skaper har tillatelser 144 00:06:59,420 --> 00:07:03,660 gjelder hvorvidt vi ønsker folk å se disse typer filer og 145 00:07:03,660 --> 00:07:08,030 kataloger og være i stand til å få tilgang til dem og potensielt også endre dem. 146 00:07:08,030 --> 00:07:09,920 >> Så er det tre typer av tillatelser. 147 00:07:09,920 --> 00:07:14,980 Det er en lese tillatelse, noe som betyr du kan lese en fil eller en liste på 148 00:07:14,980 --> 00:07:16,490 innholdet i katalogen. 149 00:07:16,490 --> 00:07:20,820 Det er skrivetilgang, som betyr at du kan endre en fil eller endre 150 00:07:20,820 --> 00:07:24,910 en katalog og deretter utføre tillatelse, noe som betyr at du kan 151 00:07:24,910 --> 00:07:31,060 kjøre en fil eller rettere sagt, du kan flytte inn i en katalog. 152 00:07:31,060 --> 00:07:34,470 Så CD noe, hvis du har den tillatelse til å utføre det, kan du flytte 153 00:07:34,470 --> 00:07:37,300 inn i den katalogen. 154 00:07:37,300 --> 00:07:38,510 >> Dette er et lite eksempel. 155 00:07:38,510 --> 00:07:40,700 Igjen, har du gått over denne i oppgavesettet. 156 00:07:40,700 --> 00:07:44,630 Men jeg opprette en katalog med mkdir kommandoen. 157 00:07:44,630 --> 00:07:46,320 Jeg endre tillatelsene. 158 00:07:46,320 --> 00:07:48,505 Disse to linjene faktisk gjør akkurat det samme. 159 00:07:48,505 --> 00:07:52,580 Det er for å illustrere at syntaksen for endring av tillatelser, enten du gjør 160 00:07:52,580 --> 00:07:55,600 a + x eller 711, de er de samme. 161 00:07:55,600 --> 00:07:57,550 >> Vi ser ned på denne hyggelig bord. 162 00:07:57,550 --> 00:07:59,960 Vi ser at det er bruker tillatelser først. 163 00:07:59,960 --> 00:08:03,280 Det er deg, den enkelte, og serveren din, potensielt. 164 00:08:03,280 --> 00:08:05,070 Og så er det gruppen og andre. 165 00:08:05,070 --> 00:08:09,350 Forskjellene mellom de to er relativt trivielt. 166 00:08:09,350 --> 00:08:11,170 Så generelt, vil vi klumpe de sammen. 167 00:08:11,170 --> 00:08:14,380 >> Men egentlig, hvis vi har en fil kalt inkluderer at vi ønsker å være 168 00:08:14,380 --> 00:08:18,760 i stand til å redigere oss selv og at vi ønsker andre til å være i stand til å utføre, 169 00:08:18,760 --> 00:08:20,560 det er tillatelse 711. 170 00:08:20,560 --> 00:08:22,390 Og vi ser at ned her i denne tabell. 171 00:08:22,390 --> 00:08:24,730 Vi har en lese, skrive, og utføre. 172 00:08:24,730 --> 00:08:26,790 For hver enkelt av oss, vi ønsker å være i stand til å gjøre dem. 173 00:08:26,790 --> 00:08:30,160 Gruppe og andre, vi vil bare ha at de skal være i stand til å utføre. 174 00:08:30,160 --> 00:08:33,860 >> Måten vi oversette det inn i en rekke 175 00:08:33,860 --> 00:08:36,870 tillatelse er gjennom binær. 176 00:08:36,870 --> 00:08:41,780 Så hvis vi har tre enere, det er en en i de kolonnen, en 1 i toere 177 00:08:41,780 --> 00:08:43,049 kolonne, en 1 de fire kolonne. 178 00:08:43,049 --> 00:08:45,180 Det er 7 rett der. 179 00:08:45,180 --> 00:08:47,450 Og denne tillatelsen er en. 180 00:08:47,450 --> 00:08:48,390 Denne tillatelsen er en. 181 00:08:48,390 --> 00:08:54,200 Så 711 når er det samme som å gi oss selv lese, skrive, og utføre, 182 00:08:54,200 --> 00:08:56,660 og alle andre kjørerettigheter. 183 00:08:56,660 --> 00:08:59,180 >> Denne linjen her, vi generelt vil ha lese og skrive når vi 184 00:08:59,180 --> 00:09:00,250 opprette en katalog. 185 00:09:00,250 --> 00:09:04,650 Så denne linjen her legger bare utføre privilegier til alle. 186 00:09:04,650 --> 00:09:07,450 Så det ville være beslektet med, i tillegg til det vi har, 187 00:09:07,450 --> 00:09:09,930 legge en, en, en for alle. 188 00:09:09,930 --> 00:09:13,880 >> Mens dette, er det unødvendig å legge til lese og skrive. 189 00:09:13,880 --> 00:09:16,130 Men hvis du kommer til å bruke tallene, du kan ikke bare legge til noe. 190 00:09:16,130 --> 00:09:19,070 Du overskrive hva tillatelse var der og implementere dem med den nye 191 00:09:19,070 --> 00:09:20,920 nummeret du gi. 192 00:09:20,920 --> 00:09:21,930 Det var ganske rask. 193 00:09:21,930 --> 00:09:24,115 Er det noen som har noen spørsmål om endring av tillatelser? 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 rettigheter ønsker jeg det å ha? 197 00:09:32,480 --> 00:09:36,638 198 00:09:36,638 --> 00:09:38,780 Dette er i problemet sett spec. 199 00:09:38,780 --> 00:09:41,590 Så du kan se på spec og deretter lese meg svaret. 200 00:09:41,590 --> 00:09:45,820 201 00:09:45,820 --> 00:09:48,605 >> PUBLIKUM: Du vil at brukeren skal har lese-og skriverettigheter. 202 00:09:48,605 --> 00:09:51,080 Og du vil at alle annet å ha ingenting. 203 00:09:51,080 --> 00:09:53,060 >> JASON Hirschhorn: Og hva tall 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 skriver ut en PHP-fil, chmod den til 600. 207 00:09:59,550 --> 00:10:00,370 OK. 208 00:10:00,370 --> 00:10:01,890 Jeg har en katalog. 209 00:10:01,890 --> 00:10:04,870 Noen foruten Jeff, Jeg har en fil mappe. 210 00:10:04,870 --> 00:10:08,060 Hva tillatelser ønsker jeg å gi til den mappen - 211 00:10:08,060 --> 00:10:11,620 også i oppgavesettet spec, rett under dette svaret eller 212 00:10:11,620 --> 00:10:14,840 forrige svar? 213 00:10:14,840 --> 00:10:16,160 Også potensielt på lysbildet - 214 00:10:16,160 --> 00:10:16,450 Marcus. 215 00:10:16,450 --> 00:10:17,230 >> PUBLIKUM: For det 216 00:10:17,230 --> 00:10:18,180 mappe, er det 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, vil du gi 711. 219 00:10:21,230 --> 00:10:25,280 Du ønsker å være i stand til å lese den mappen, endre kataloger, flytte inn 220 00:10:25,280 --> 00:10:25,785 den mappen. 221 00:10:25,785 --> 00:10:28,865 Og du vil at alle andre skal kunne å navigere i den mappen, men 222 00:10:28,865 --> 00:10:30,790 ikke nødvendigvis å endre innholdet. 223 00:10:30,790 --> 00:10:33,720 Hva om en ikke-PHP-fil, si, en Javascript-fil? 224 00:10:33,720 --> 00:10:36,090 Hvilke rettigheter vi ønsker å gi den 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 å gi det 644? 228 00:10:40,010 --> 00:10:42,880 >> PUBLIKUM: Å la andre folk lese det. 229 00:10:42,880 --> 00:10:44,840 Og du lese eller skrive det. 230 00:10:44,840 --> 00:10:48,540 >> JASON Hirschhorn: Så rett, alle sammen annet kan lese at Javascript-fil. 231 00:10:48,540 --> 00:10:51,420 Og du kan endre det, i tillegg å være i stand til å lese den. 232 00:10:51,420 --> 00:10:54,970 Så en av de vanligste bugs folk har med dette problemet satt og deres 233 00:10:54,970 --> 00:10:58,880 endelige prosjektet, hvis det er en web-basert finalen prosjektet er, vil de ikke har satt 234 00:10:58,880 --> 00:11:00,170 de riktige tillatelsene. 235 00:11:00,170 --> 00:11:03,180 Og de vil ikke være i stand å se deres hjemmeside. 236 00:11:03,180 --> 00:11:04,840 Eller en bestemt del av deres hjemmeside. 237 00:11:04,840 --> 00:11:06,930 >> Så sørg for at du setter tillatelser riktig. 238 00:11:06,930 --> 00:11:10,730 Ikke bare anta at det vil gjør det automatisk for deg. 239 00:11:10,730 --> 00:11:11,500 >> OK. 240 00:11:11,500 --> 00:11:15,100 Det var en liten ting som vi brukte en god mengde tid på, så 241 00:11:15,100 --> 00:11:16,190 vi kunne spikre det. 242 00:11:16,190 --> 00:11:18,000 La oss gå videre til HTML. 243 00:11:18,000 --> 00:11:20,430 >> Og igjen, for disse neste fire emner, vi kommer til å gå gjennom dem 244 00:11:20,430 --> 00:11:21,600 relativt raskt. 245 00:11:21,600 --> 00:11:24,980 Så kan du gjerne stoppe meg når som helst tid, hvis du har noen spørsmål, 246 00:11:24,980 --> 00:11:27,900 enten de er relatert til hva jeg dekke eller noe fra forelesning eller 247 00:11:27,900 --> 00:11:29,440 selv fra problemet definert. 248 00:11:29,440 --> 00:11:31,690 Stopp meg når du trenger det. 249 00:11:31,690 --> 00:11:34,370 Når vi kommer til slutten, vil vi bare begynne å gå over problemet sett. 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 programmeringsspråk. 252 00:11:41,360 --> 00:11:45,800 Alt den gjør er struktur innholdet og også gi noen metadata. 253 00:11:45,800 --> 00:11:52,340 Slik at for eksempel antagelig er mange av du har brukt Facebook før. 254 00:11:52,340 --> 00:11:56,810 Og du kan ta med koblinger i, eller du kan legge en link som din status. 255 00:11:56,810 --> 00:11:59,070 >> Og så, vil du legge merke til at koblingen alltid har et fint bilde 256 00:11:59,070 --> 00:12:00,450 til det og litt tekst. 257 00:12:00,450 --> 00:12:03,040 Vanligvis er at noen metadata for en web-side. 258 00:12:03,040 --> 00:12:05,250 Og det er Facebook-spesifikke metadata. 259 00:12:05,250 --> 00:12:07,780 Og så, når Facebook leser at side og sette inn denne koblingen, det 260 00:12:07,780 --> 00:12:10,780 ser for den spesifikke metadata, slik det vet hva bildet skal vises, hva 261 00:12:10,780 --> 00:12:13,820 tittelen for å vise, og hva abstrakt tekst som skal vises. 262 00:12:13,820 --> 00:12:17,760 >> Så vi kan inkludere metadata med vår nettside ved hjelp av HTML. 263 00:12:17,760 --> 00:12:21,190 Og det hjelper også oss struktur innholdet, generelt, hvilken 264 00:12:21,190 --> 00:12:25,400 vi ønsker å gå der. 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 rett her - 267 00:12:30,690 --> 00:12:33,410 dette CS50, er tekst elementet. 268 00:12:33,410 --> 00:12:35,140 Og det har noen koder. 269 00:12:35,140 --> 00:12:36,690 Den har dette en kode. 270 00:12:36,690 --> 00:12:41,730 Og vi legger merke til er det en en på begynner, og deretter en skråstrek a, så 271 00:12:41,730 --> 00:12:43,960 lukking av en kode på slutten. 272 00:12:43,960 --> 00:12:46,800 Noen ganger, det er ikke et åpent tag og en sluttkode. 273 00:12:46,800 --> 00:12:49,040 Det er bare én ting. 274 00:12:49,040 --> 00:12:50,640 >> Vi får se et eksempel på at på neste lysbilde. 275 00:12:50,640 --> 00:12:52,640 Slik at du ikke trenger en åpen og en sluttkode. 276 00:12:52,640 --> 00:12:59,570 Men for dette, er vi skal kapsle inn dette CS50 element i en ankerkoden. 277 00:12:59,570 --> 00:13:03,270 Og egentlig, disse kodene forteller leseren hva de skal gjøre med 278 00:13:03,270 --> 00:13:04,700 vedkommende element. 279 00:13:04,700 --> 00:13:07,380 >> Så igjen, er CS50 teksten vi kommer til å se. 280 00:13:07,380 --> 00:13:10,060 Og det kommer til å være en type anker. 281 00:13:10,060 --> 00:13:13,920 Ankeret er i hovedsak brukt for koblinger til noe. 282 00:13:13,920 --> 00:13:16,000 Spesielt, som du kan allerede si, er dette en 283 00:13:16,000 --> 00:13:18,950 koble til CS50 hjemmeside. 284 00:13:18,950 --> 00:13:23,160 >> Den neste delen av koden - eller generelt, en del av kodene er 285 00:13:23,160 --> 00:13:24,290 attributter. 286 00:13:24,290 --> 00:13:27,080 Og vi ser her, at det en tag har en 287 00:13:27,080 --> 00:13:29,680 attributt, dette href attributt. 288 00:13:29,680 --> 00:13:32,000 Og de endre et bestemt merke. 289 00:13:32,000 --> 00:13:36,100 Faktisk, hvis du går til en av de nettsteder eller referansene jeg ga deg 290 00:13:36,100 --> 00:13:39,480 før eller slå opp en kode på nettet, du vil legge merke til at det er massevis av 291 00:13:39,480 --> 00:13:41,010 potensielle attributter. 292 00:13:41,010 --> 00:13:42,310 >> Dette er trolig en av de mest vanlige. 293 00:13:42,310 --> 00:13:46,090 Dette forteller meg for å lage en koble til bestemt nettsted. 294 00:13:46,090 --> 00:13:50,260 Og attributter generelt er gitt, om ikke utelukkende gitt, 295 00:13:50,260 --> 00:13:52,350 i nøkkel-verdi-par. 296 00:13:52,350 --> 00:13:55,380 >> Så her er nøkkelen, href. 297 00:13:55,380 --> 00:13:57,320 Og verdien er denne retten her. 298 00:13:57,320 --> 00:14:01,960 Og det vil komme godt med senere, når vi begynner å bruke noen bibliotekene til 299 00:14:01,960 --> 00:14:07,280 hjelpe oss kode i Javascript eller skrive HTML-innhold. 300 00:14:07,280 --> 00:14:11,120 Vi er ofte tenkt å være - akkurat som vi ville gjøre matrise brakett 0 og at 301 00:14:11,120 --> 00:14:12,340 ville gi oss noen verdi. 302 00:14:12,340 --> 00:14:17,190 >> I fremtiden vil vi skal gjøre mye av ting som noe brakett href. 303 00:14:17,190 --> 00:14:21,180 Og det vil gi oss verdien av href, eller om vi ønsker å oppdatere href 304 00:14:21,180 --> 00:14:23,980 tasten og deretter gi det en bestemt verdi. 305 00:14:23,980 --> 00:14:28,915 Så akkurat som med matriser hvor vi hadde Nøkkelen 0 eller tast 1 eller tast 2 eller selv med en 306 00:14:28,915 --> 00:14:33,480 hash table, vel, med hash tabeller i tillegg, har du sannsynligvis har hatt - det 307 00:14:33,480 --> 00:14:35,790 var en matrise, så tast 0, tast 1, tast 2. 308 00:14:35,790 --> 00:14:38,480 >> At indeksen der, kan vi tenker på det som en nøkkel. 309 00:14:38,480 --> 00:14:40,180 Og verdien er uansett ble lagret der. 310 00:14:40,180 --> 00:14:42,760 Alle disse egenskapene er nøkkel-verdi par. 311 00:14:42,760 --> 00:14:47,370 Og det vil være viktig for å endre dem eller oppdatere dem eller 312 00:14:47,370 --> 00:14:51,020 sette dem senere. 313 00:14:51,020 --> 00:14:53,990 >> Til slutt, har du sett denne strukturen før, men dette er den mest grunnlegg 314 00:14:53,990 --> 00:14:55,350 struktur av HTML-siden. 315 00:14:55,350 --> 00:14:58,700 På toppen, forteller vi deg som Dette er faktisk HTML. 316 00:14:58,700 --> 00:15:01,910 Og så har vi en åpen HTML tag og en nær HTML-kode. 317 00:15:01,910 --> 00:15:04,940 Så alt innsiden av dette er HTML. 318 00:15:04,940 --> 00:15:08,960 >> Vi ser hodet og kroppen. 319 00:15:08,960 --> 00:15:12,350 Lederen for dokumentet På generelt hva? 320 00:15:12,350 --> 00:15:16,980 321 00:15:16,980 --> 00:15:20,995 Eventuelle gjetninger for hva du satt i hodet? 322 00:15:20,995 --> 00:15:23,060 >> PUBLIKUM: Du setter tittelen og stil. 323 00:15:23,060 --> 00:15:23,790 >> JASON Hirschhorn: Tittelen. 324 00:15:23,790 --> 00:15:26,110 Det var en stor gjetning. 325 00:15:26,110 --> 00:15:27,200 Jeg kan ha tipset du av til den. 326 00:15:27,200 --> 00:15:28,150 Hva er noen andre ting? 327 00:15:28,150 --> 00:15:30,351 Vi nevnte ene av dem som kan gå i hodet. 328 00:15:30,351 --> 00:15:33,057 329 00:15:33,057 --> 00:15:35,225 >> PUBLIKUM: Han sa, stiler. 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 å koble til, i en Java eller enda en CSS, som du snakker 332 00:15:41,050 --> 00:15:42,610 om når du snakker om stilarter. 333 00:15:42,610 --> 00:15:45,670 En annen fil, vil koble inn en du utenfor fil, vil det sannsynligvis kommer 334 00:15:45,670 --> 00:15:46,920 i hodet. 335 00:15:46,920 --> 00:15:48,660 336 00:15:48,660 --> 00:15:51,070 >> Hva annet? 337 00:15:51,070 --> 00:15:52,960 Vi har nevnt et par lysbilder siden en av de tingene som 338 00:15:52,960 --> 00:15:54,510 HTML kan gjøre for deg. 339 00:15:54,510 --> 00:15:58,180 340 00:15:58,180 --> 00:16:01,240 Det kan gi - 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å mye av metadataene vil gå i hodet, 344 00:16:06,170 --> 00:16:08,990 fordi det ikke nødvendigvis trenger å være en del av kroppen av koden din. 345 00:16:08,990 --> 00:16:11,820 Det er generelt - kroppen er innhold, hva noen ser. 346 00:16:11,820 --> 00:16:14,210 Og så jeg bare ga bort svaret til mitt neste spørsmål. 347 00:16:14,210 --> 00:16:17,770 Men i kroppen er vanligvis innholdet som kommer til å bli vist 348 00:16:17,770 --> 00:16:19,750 på nettsiden. 349 00:16:19,750 --> 00:16:26,120 >> Som vi skal se, kompliserte nettsteder en tendens til å blande seg eller endre opp hva 350 00:16:26,120 --> 00:16:27,170 de satt i hodet og kroppen. 351 00:16:27,170 --> 00:16:30,360 Men generelt, inneholder lederen ting at brukeren ikke kommer til å 352 00:16:30,360 --> 00:16:31,290 ser på skjermen. 353 00:16:31,290 --> 00:16:34,150 Den linker i andre filer og gir metadata. 354 00:16:34,150 --> 00:16:37,690 Mens, inneholder legemet alt brukeren kommer til å se. 355 00:16:37,690 --> 00:16:39,270 Noen ide hva dette p tag betyr? 356 00:16:39,270 --> 00:16:41,660 >> PUBLIKUM: Avsnitt? 357 00:16:41,660 --> 00:16:42,780 >> PUBLIKUM: Skriv ut. 358 00:16:42,780 --> 00:16:44,120 >> PUBLIKUM: Betyr ikke print. 359 00:16:44,120 --> 00:16:45,380 >> PUBLIKUM: Betyr det avsnittet? 360 00:16:45,380 --> 00:16:47,620 >> JASON Hirschhorn: Punkt - så dette er et avsnitt. 361 00:16:47,620 --> 00:16:50,920 Og denne p-taggen, jeg kunne bare ha skrevet dette på skjermen, og deretter 362 00:16:50,920 --> 00:16:52,630 inkludert et linjeskift på slutten av den. 363 00:16:52,630 --> 00:16:54,380 Noen som vet hvordan man skal inkludere 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 slash står for linjeskift. 368 00:17:00,120 --> 00:17:03,270 Men avsnitt har bestemt formatering. 369 00:17:03,270 --> 00:17:06,060 Og vi får til formatering i en andre, når vi snakker om CSS. 370 00:17:06,060 --> 00:17:09,900 Men alt inni disse p-koder vil ha noen standardformatering 371 00:17:09,900 --> 00:17:13,210 forbundet med det, sannsynligvis noen avstanden mellom forskjellige 372 00:17:13,210 --> 00:17:15,069 avsnitt. 373 00:17:15,069 --> 00:17:19,410 Og det vil være en måte å differensiere blokker av kode. 374 00:17:19,410 --> 00:17:20,980 >> Eventuelle andre koder - 375 00:17:20,980 --> 00:17:24,584 hva er andre koder som du har sett? 376 00:17:24,584 --> 00:17:26,609 >> JASON Hirschhorn: h1 gjennom h6. 377 00:17:26,609 --> 00:17:28,460 h1 gjennom h6, hva er og at? 378 00:17:28,460 --> 00:17:31,560 >> PUBLIKUM: Det vil betegne hvor stor og fet bokstavene er. 379 00:17:31,560 --> 00:17:32,650 >> JASON Hirschhorn: Høyre, 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 sannsynligvis, som standard, være dristig, en stor skriftstørrelse, sannsynligvis sentrert på 382 00:17:40,840 --> 00:17:44,030 skjermen, hele veien ned til h6, som er en mindre skriftstørrelse, mindre 383 00:17:44,030 --> 00:17:44,780 streket. 384 00:17:44,780 --> 00:17:50,290 Selvfølgelig kan du, i du er CSS-fil eller et sted i koden din - som, 385 00:17:50,290 --> 00:17:53,830 igjen, vil vi få til det i et sekund - endre hva standard virke 386 00:17:53,830 --> 00:17:55,780 av en h1 tag er. 387 00:17:55,780 --> 00:18:01,040 >> Men husk at Chrome, Safari, Firefox, Internet Explorer har alle 388 00:18:01,040 --> 00:18:04,030 Standard ser for mange disse standard koder. 389 00:18:04,030 --> 00:18:07,110 Du kan, igjen, alltid endre hvordan de ser ut. 390 00:18:07,110 --> 00:18:09,955 Eventuelle andre koder som alle har sett? 391 00:18:09,955 --> 00:18:10,350 Yeah - 392 00:18:10,350 --> 00:18:11,530 >> PUBLIKUM: En div nettstedet. 393 00:18:11,530 --> 00:18:15,830 >> JASON Hirschhorn: En div tag - div tag ikke har noen innebygde format, per 394 00:18:15,830 --> 00:18:21,850 se, som brukes til å blokkere ulike typer kode. 395 00:18:21,850 --> 00:18:22,980 Eventuelle andre koder? 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 hva er li for? 400 00:18:25,580 --> 00:18:26,210 >> PUBLIKUM: List. 401 00:18:26,210 --> 00:18:26,930 >> PUBLIKUM: Liste 402 00:18:26,930 --> 00:18:29,510 >> JASON Hirschhorn: li er for listeelementer. 403 00:18:29,510 --> 00:18:30,720 Det er to typer av lister. 404 00:18:30,720 --> 00:18:31,970 Hva er de to typene? 405 00:18:31,970 --> 00:18:34,165 406 00:18:34,165 --> 00:18:35,806 >> PUBLIKUM: Bestilt og sorterte. 407 00:18:35,806 --> 00:18:37,780 >> JASON Hirschhorn: Bestilt og unordered - så ul stands 408 00:18:37,780 --> 00:18:38,560 for sorterte liste. 409 00:18:38,560 --> 00:18:41,120 Det er hvis du vil ha en kule peke, en liste over kuler. 410 00:18:41,120 --> 00:18:43,180 En ordnet liste er en nummerert liste. 411 00:18:43,180 --> 00:18:47,930 Og så vil du gjøre et åpent ul tag og deretter tonnevis av listeelementer og deretter 412 00:18:47,930 --> 00:18:50,450 lukke ul taggen. og at vilje lage en ikke-sorterte liste. 413 00:18:50,450 --> 00:18:52,380 >> Vi kommer til å se noen eksempler av HTML i en bit. 414 00:18:52,380 --> 00:18:55,800 Men før den tid, ønsker jeg å få 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 dette er veldig nært beslektet til HTML, men litt annerledes. 417 00:19:03,010 --> 00:19:06,920 Dette hjelper deg å formatere alt innhold at HTML-strukturer. 418 00:19:06,920 --> 00:19:14,940 >> Så i CSS, vi generelt ikke ønsker å style hver enkelt header eller hver 419 00:19:14,940 --> 00:19:17,250 enkelt bilde eller hver enkelt avsnitt. 420 00:19:17,250 --> 00:19:21,210 Vi ønsker å style noen elementer eller kanskje et bestemt element. 421 00:19:21,210 --> 00:19:25,250 Og måten vi style en bestemt elementet for å gi den en ID. 422 00:19:25,250 --> 00:19:26,070 >> Så dette er et attributt. 423 00:19:26,070 --> 00:19:27,960 Den har en nøkkel og en verdi. 424 00:19:27,960 --> 00:19:29,130 ID er nøkkelen. 425 00:19:29,130 --> 00:19:30,220 Logo er verdien. 426 00:19:30,220 --> 00:19:32,410 Jeg plukket logo tilfeldig. 427 00:19:32,410 --> 00:19:36,780 Og hvis du gi noe en ID, generelt, som bare bør gis 428 00:19:36,780 --> 00:19:38,800 til ett element. 429 00:19:38,800 --> 00:19:42,340 >> Og så, i stilarket, kan du stil det bestemte element, men 430 00:19:42,340 --> 00:19:44,090 du vil den skal se. 431 00:19:44,090 --> 00:19:49,560 Hvis du ønsker å style en rekke elementer, kanskje det er en viss klasse 432 00:19:49,560 --> 00:19:51,310 av overskrifter, bare noen av overskriftene. 433 00:19:51,310 --> 00:19:56,780 Kanskje det er en overskrift og et bilde og en avsnittet du ønsker alle å være sentrert. 434 00:19:56,780 --> 00:20:00,700 Deretter kan du gi disse gruppene av elementer alt en klasse. 435 00:20:00,700 --> 00:20:04,300 Og du kan gi klassen bestemte stiler. 436 00:20:04,300 --> 00:20:08,860 Så en ID og en klasse er to måter å bryte opp koden din, slik at du kan bidra til å være 437 00:20:08,860 --> 00:20:11,990 mer spesifikk i hva du stil. 438 00:20:11,990 --> 00:20:13,830 >> Det er tre måter å style. 439 00:20:13,830 --> 00:20:17,530 Den første er, med denne stilen attributt. 440 00:20:17,530 --> 00:20:21,200 Så du ser, er nøkkelen stil stil. 441 00:20:21,200 --> 00:20:24,370 Stilen verdi er faktisk en annen viktig verdi listen. 442 00:20:24,370 --> 00:20:26,570 >> I dette tilfellet, plukket jeg en nøkkel, text-align. 443 00:20:26,570 --> 00:20:27,730 Og jeg sa, center. 444 00:20:27,730 --> 00:20:30,280 Du spør kanskje deg selv på dette punkt, hvordan visste jeg om 445 00:20:30,280 --> 00:20:31,230 text-align. 446 00:20:31,230 --> 00:20:32,280 Hva gjør at selv gjøre? 447 00:20:32,280 --> 00:20:35,350 Det er et stort spørsmål å stille, og vi kommer til å få det i et sekund. 448 00:20:35,350 --> 00:20:39,740 Så det er en måte å style noe, bare gi den stilen attributtet. 449 00:20:39,740 --> 00:20:43,490 >> En annen måte å style noe er - dette er Akshar nevnt tidligere. 450 00:20:43,490 --> 00:20:49,660 Du kan bruke stil koder og sette det i hodet av HTML-dokumentet. 451 00:20:49,660 --> 00:20:52,220 Så du i utgangspunktet si, innholdet inni her 452 00:20:52,220 --> 00:20:53,870 er litt stil innhold. 453 00:20:53,870 --> 00:20:59,520 Og formatet for det er ting du ønsker å style og deretter, på innsiden av 454 00:20:59,520 --> 00:21:03,460 klammeparentes, nøkkelverdien par attributter som du ønsker å gi til 455 00:21:03,460 --> 00:21:05,920 den bestemte type element. 456 00:21:05,920 --> 00:21:07,370 >> Til slutt, og dette er mest vanlige måten. 457 00:21:07,370 --> 00:21:10,320 Og dette er måten vi gjøre det i p sett 7. 458 00:21:10,320 --> 00:21:12,370 Det er et eksternt stilark. 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 på innsiden av det, ser du en masse ting som ser ut som dette, navnet 461 00:21:18,050 --> 00:21:22,730 av noen type av element eller en ID, eller en klasse, og deretter, på innsiden av krøllete 462 00:21:22,730 --> 00:21:28,040 bukseseler, en liste over viktige verdi-par. 463 00:21:28,040 --> 00:21:30,065 >> Selvfølgelig, hvis du oppretter en ekstern fil, du kommer til 464 00:21:30,065 --> 00:21:31,310 trenger å ta den - 465 00:21:31,310 --> 00:21:34,860 skarp inkluderer, som ville være C analogi - 466 00:21:34,860 --> 00:21:36,250 i HTML-filen. 467 00:21:36,250 --> 00:21:39,820 Så du må inkludere dette koden i HTML-filen. 468 00:21:39,820 --> 00:21:46,080 Dette blir navnet på filen og forutsatt at det er i den samme katalogen. 469 00:21:46,080 --> 00:21:47,100 >> OK. 470 00:21:47,100 --> 00:21:48,200 Det var mye. 471 00:21:48,200 --> 00:21:52,440 Og vi nå kommer til å puste og se på noen virkelige, levende nettsted og 472 00:21:52,440 --> 00:21:53,720 utforske dette mer. 473 00:21:53,720 --> 00:21:55,470 Men før vi gjør det, gjør noen har noen spørsmål? 474 00:21:55,470 --> 00:22:00,830 475 00:22:00,830 --> 00:22:04,970 >> Så hvis du ønsker å gjøre dette sammen med meg, kan vi gå til apparatet. 476 00:22:04,970 --> 00:22:08,950 Og jeg valgte CS50 hjemmesiden. 477 00:22:08,950 --> 00:22:10,020 Du kan gjøre dette med en hvilken som helst nettside. 478 00:22:10,020 --> 00:22:13,070 Men hvorfor ikke vi starte med den CS50 hjemmeside? 479 00:22:13,070 --> 00:22:14,650 >> La oss oppdatere. 480 00:22:14,650 --> 00:22:18,030 Jeg faktisk anbefale deg å gjøre dette sammen med meg, fordi det vi 481 00:22:18,030 --> 00:22:22,720 kommer til å gjøre nå kommer til å være utrolig hendig for deg, ikke bare i 482 00:22:22,720 --> 00:22:24,450 P-Set 7, men i P-Set 8 også. 483 00:22:24,450 --> 00:22:24,810 Yeah. 484 00:22:24,810 --> 00:22:29,560 >> PUBLIKUM: Er det en måte å gjøre kommentarer i HTML, uten å bruke PHP? 485 00:22:29,560 --> 00:22:31,130 >> JASON Hirschhorn: Ja, kan du komme med kommentarer i HTML. 486 00:22:31,130 --> 00:22:32,690 >> PUBLIKUM: Hva er syntaksen? 487 00:22:32,690 --> 00:22:34,340 >> PUBLIKUM: utropstegn dash dash. 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 syntaksen. 491 00:22:38,350 --> 00:22:40,630 492 00:22:40,630 --> 00:22:41,900 Du kan legge inn kommentarer i HTML. 493 00:22:41,900 --> 00:22:43,310 Du kan legge inn kommentarer i PHP. 494 00:22:43,310 --> 00:22:46,590 >> Som du vil se, kommentere i HTML vil fortsatt dukke opp, når vi ser på 495 00:22:46,590 --> 00:22:49,960 HTML-kildekoden til et bestemt nettsted. 496 00:22:49,960 --> 00:22:51,610 Så dette cs50.net. 497 00:22:51,610 --> 00:22:57,360 Hvis du høyreklikker i de fleste moderne nettlesere på de fleste helst side, se deg 498 00:22:57,360 --> 00:22:58,820 siden kilden. 499 00:22:58,820 --> 00:23:01,480 Så la oss gjøre det på CS50. 500 00:23:01,480 --> 00:23:05,060 >> Og lo og se, vi se en gigantisk ting. 501 00:23:05,060 --> 00:23:07,420 CS50 faktisk ser ganske fin. 502 00:23:07,420 --> 00:23:08,920 Mange nettsteder vil ikke ser dette fint. 503 00:23:08,920 --> 00:23:10,540 Hvis du går til Googles hjemmeside og åpne den opp. 504 00:23:10,540 --> 00:23:11,960 Det vil ikke se dette fint. 505 00:23:11,960 --> 00:23:13,830 >> Men du merker det, på toppen - 506 00:23:13,830 --> 00:23:16,650 dette er litt lite. 507 00:23:16,650 --> 00:23:17,900 La oss gjø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 På toppen, DOCTYPE HTML, det er kjent. 511 00:23:26,660 --> 00:23:30,650 Så ser vi den åpne HTML-koden og hodet, akkurat her, alle 512 00:23:30,650 --> 00:23:34,350 av disse meta tags. 513 00:23:34,350 --> 00:23:38,000 Og du kan se denne og, ikke kommer til å gå inn på det nå. 514 00:23:38,000 --> 00:23:42,110 Men jeg er nesten positivt på at de ville være Facebook. 515 00:23:42,110 --> 00:23:42,900 >> Det er faktisk den Facebook. 516 00:23:42,900 --> 00:23:44,870 Jeg tror som står for åpen graf. 517 00:23:44,870 --> 00:23:48,930 Så husk, jeg var nevne det er Faceboook-spesifikke metadata du kan 518 00:23:48,930 --> 00:23:49,800 gi til en side. 519 00:23:49,800 --> 00:23:51,150 Det er det som er rett her. 520 00:23:51,150 --> 00:23:54,580 >> Så når du kobler denne siden på Facebook, bildet det kommer til å vise 521 00:23:54,580 --> 00:23:56,630 er dette bildet til høyre 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-bildet. 524 00:23:59,470 --> 00:24:00,880 >> Men uansett, vi får til side. 525 00:24:00,880 --> 00:24:03,220 Så vi har noen metadatakoder her. 526 00:24:03,220 --> 00:24:05,570 Vi ser CS50 tittelen. 527 00:24:05,570 --> 00:24:09,830 Og igjen, er tittelen hva som går opp her i nettleserfane. 528 00:24:09,830 --> 00:24:14,770 Vi ser dette er knytte på, akkurat her, en ekstern Javascript-fil. 529 00:24:14,770 --> 00:24:17,640 >> Vi har ikke snakket om Java mye, men neste uke - og i hvert fall hvis 530 00:24:17,640 --> 00:24:20,350 du gjør en web-basert problem sett, du skal bruke Javascript. 531 00:24:20,350 --> 00:24:23,540 Dette er hvordan du kobler i eksterne Javascript-filer. 532 00:24:23,540 --> 00:24:31,970 Vi ser her, endelig, CSS stilark, dokumenterer at disse 533 00:24:31,970 --> 00:24:32,830 stiler av denne koden. 534 00:24:32,830 --> 00:24:37,190 >> La oss faktisk åpne det opp og ta en titt veldig raskt. 535 00:24:37,190 --> 00:24:38,440 Dette ser gal. 536 00:24:38,440 --> 00:24:40,840 537 00:24:40,840 --> 00:24:42,790 Det er ingen måte jeg ville være stand til å lese gjennom. 538 00:24:42,790 --> 00:24:46,930 Så kan du faktisk skjønt, hvis du tar en titt, kan du liksom se at 539 00:24:46,930 --> 00:24:48,650 Det er - 540 00:24:48,650 --> 00:24:49,790 der vi går. 541 00:24:49,790 --> 00:24:53,440 >> Det ser ut som noe vi har sett før, bakgrunnsfarge, sette det 542 00:24:53,440 --> 00:24:55,550 lik noen rød-grønn-blå verdi. 543 00:24:55,550 --> 00:24:59,070 Dette ting liksom ikke skal synes at utenlandske, selv om, når presentert 544 00:24:59,070 --> 00:25:00,850 som dette, kan det være litt overveldende. 545 00:25:00,850 --> 00:25:03,340 Vi kommer ikke til å se på dette CSS-fil eller bruke mye tid på det, fordi 546 00:25:03,340 --> 00:25:06,030 det er, igjen, ganske vanskelig å lese. 547 00:25:06,030 --> 00:25:09,090 >> La oss gå tilbake til dette HTML-side for CS50. 548 00:25:09,090 --> 00:25:10,930 Og la oss bla ned til kroppen. 549 00:25:10,930 --> 00:25:14,730 Og inni ser vi dette div tag. 550 00:25:14,730 --> 00:25:18,370 Vi ser en overskrift her. 551 00:25:18,370 --> 00:25:21,060 Vi ser ankerkoden. 552 00:25:21,060 --> 00:25:26,050 >> Og denne listen element er gitt en bestemt klasse. 553 00:25:26,050 --> 00:25:28,370 Og vi ser at klassen gjentatt om og om igjen. 554 00:25:28,370 --> 00:25:29,730 Der er du Curtis. 555 00:25:29,730 --> 00:25:32,730 Det er kommentaren i HTML5. 556 00:25:32,730 --> 00:25:36,280 >> Og som du legger merke til, kan vi fortsatt se det, men det er ikke å dukke opp. 557 00:25:36,280 --> 00:25:37,960 Det er faktisk veldig interessant. 558 00:25:37,960 --> 00:25:40,760 Det ser ut som denne listen score element er kommentert ut. 559 00:25:40,760 --> 00:25:45,110 Hvis vi går til denne siden, igjen, er det fortsatt vises der, så interessant. 560 00:25:45,110 --> 00:25:47,830 >> Å, hvorfor, fordi det av dette neste linje. 561 00:25:47,830 --> 00:25:50,680 562 00:25:50,680 --> 00:25:52,735 Hva annet kan vi se av interesse? 563 00:25:52,735 --> 00:25:56,640 564 00:25:56,640 --> 00:26:00,180 Resten av dette er mer forvirrende, i håndteringen av denne høyre halvdel av 565 00:26:00,180 --> 00:26:03,280 nettside, som er en liten litt mer komplisert. 566 00:26:03,280 --> 00:26:08,890 >> Så dette er hva noen HTML kommer til å se ut. 567 00:26:08,890 --> 00:26:10,990 For meg selv, er dette en lite overveldende, og dette gjør det ikke 568 00:26:10,990 --> 00:26:12,350 hjelpe meg så mye. 569 00:26:12,350 --> 00:26:16,560 Men det er noe som gjør det, faktisk, hjelpe meg mye. 570 00:26:16,560 --> 00:26:20,490 >> Og det er det jeg bruker når jeg er prøver å finne ut hvordan noe 571 00:26:20,490 --> 00:26:24,270 ser ut slik den gjør, eller hvordan kan Jeg gjør endringer på nettstedet mitt. 572 00:26:24,270 --> 00:26:29,280 Og det er en utvikler verktøy som er innebygd i Chrome. 573 00:26:29,280 --> 00:26:33,960 Så hvis du går til dette tre barer rett her og gå ned til verktøy klikk på 574 00:26:33,960 --> 00:26:40,120 Utviklerverktøy, vil et lite vindu dukker opp nederst på siden. 575 00:26:40,120 --> 00:26:46,910 Og i særdeleshet, Chrome, siden det er fantastisk, vil formatere dette vinduet og 576 00:26:46,910 --> 00:26:49,580 ta HTML og at det ser mye hyggeligere for deg. 577 00:26:49,580 --> 00:26:54,860 Så nå er det faktisk noen sammen HTML som du kan utforske for å inspisere 578 00:26:54,860 --> 00:26:56,620 elementene på siden. 579 00:26:56,620 --> 00:26:59,400 >> Hvis vi ønsker å se på kroppen, det faktisk fremhever. 580 00:26:59,400 --> 00:27:03,240 Når du blar over en del av HTML, ned i dette vinduet, vil det 581 00:27:03,240 --> 00:27:06,530 markere den delen det er snakk om i det store vinduet. 582 00:27:06,530 --> 00:27:10,800 Så la meg igjen prøve og blåse dette opp litt. 583 00:27:10,800 --> 00:27:12,170 OK. 584 00:27:12,170 --> 00:27:13,550 >> Så la oss åpne kroppen. 585 00:27:13,550 --> 00:27:17,280 Og jeg rulle enn dette venstre div. 586 00:27:17,280 --> 00:27:21,420 Og du oppdager at det er fremhever denne venstre halvdel av skjermen. 587 00:27:21,420 --> 00:27:25,710 Så la oss klikke på at og utvide det. 588 00:27:25,710 --> 00:27:27,280 >> Innsiden av det, ser det ut som det er to divs. 589 00:27:27,280 --> 00:27:29,790 Det er denne første div. 590 00:27:29,790 --> 00:27:30,760 Jeg ser ikke at uthevet. 591 00:27:30,760 --> 00:27:35,900 Jeg vet ikke, men det ser ut som dette andre, venstre indre, er innholdet 592 00:27:35,900 --> 00:27:37,700 på venstre side av skjermen. 593 00:27:37,700 --> 00:27:39,360 >> Så er det dette som kalles header. 594 00:27:39,360 --> 00:27:41,890 Det ser ut som det er å fremheve den CS50 del. 595 00:27:41,890 --> 00:27:46,600 Hvis vi åpner det opp, ser vi at det er ikke noe mer enn header en. 596 00:27:46,600 --> 00:27:51,140 Det har gitt en ID, og ​​det er gitt teksten CS50. 597 00:27:51,140 --> 00:27:57,240 >> Så igjen, ser på det gjennom dette konsollen eller ved hjelp av utviklerverktøy 598 00:27:57,240 --> 00:28:00,710 ruten nederst på skjermen gjør utforsker denne nettsiden, forhåpentligvis, et 599 00:28:00,710 --> 00:28:02,990 mye mindre skremmende og mye mer tilgjengelig. 600 00:28:02,990 --> 00:28:06,360 Det gir oss også muligheten til å forstå at denne nettsiden, selv om det ser veldig 601 00:28:06,360 --> 00:28:09,210 pen og fin, er ikke så mye mer enn hva du kommer til å være 602 00:28:09,210 --> 00:28:10,430 gjør på Problem Set 7. 603 00:28:10,430 --> 00:28:13,080 Og dette er helt innenfor din evne til å skape. 604 00:28:13,080 --> 00:28:14,110 >> Hvis vi ønsker å - 605 00:28:14,110 --> 00:28:18,270 den andre kule ting om å bruke disse verktøyene er, hvis du høyreklikker på 606 00:28:18,270 --> 00:28:22,270 tittel, kan du redigere HTML. 607 00:28:22,270 --> 00:28:25,660 Så la oss kalle det Jason. 608 00:28:25,660 --> 00:28:28,990 Og nå vil du legge merke til har jeg endret HTML-koden på denne siden. 609 00:28:28,990 --> 00:28:31,020 >> Selvfølgelig, jeg har ikke endret det permanent. 610 00:28:31,020 --> 00:28:34,570 Hvis jeg oppdatere nettleseren min, så det ville gå tilbake til den opprinnelige HTML. 611 00:28:34,570 --> 00:28:38,860 Men noen ganger ønsker jeg å feilsøke koden min, og jeg ønsker ikke å se bare ha min 612 00:28:38,860 --> 00:28:41,370 gedit vindu og prøve og forstå hva som skjer. 613 00:28:41,370 --> 00:28:42,705 >> Jeg ønsker å se hva som vil skje levende. 614 00:28:42,705 --> 00:28:45,880 Så jeg skal redigere kode som dette og få det slik jeg vil den skal se. 615 00:28:45,880 --> 00:28:47,960 Og så skal jeg gjøre det endringer i koden min. 616 00:28:47,960 --> 00:28:50,010 >> Og jeg synes at det er mye enklere når du kan gjøre de tingene 617 00:28:50,010 --> 00:28:52,400 momentant, sånn. 618 00:28:52,400 --> 00:28:58,410 Si, igjen, ønsker vi å foreta en ny sjanse, fordi vi utforsker med 619 00:28:58,410 --> 00:29:00,340 HTML og CSS akkurat nå. 620 00:29:00,340 --> 00:29:02,600 Jeg kan redigere HTML akkurat nå. 621 00:29:02,600 --> 00:29:06,680 Og jeg kommer til å inkludere en kobling. 622 00:29:06,680 --> 00:29:10,650 >> Så jeg kommer til å endre CS50 hjem side, så det vil lenke til - 623 00:29:10,650 --> 00:29:12,060 la oss si - hjemmesiden min. 624 00:29:12,060 --> 00:29:16,700 Hva er navnet, hvis noen husker, eller hva er attributtet jeg ønsker å gi 625 00:29:16,700 --> 00:29:18,850 til et anker fane når jeg vil det å knytte et annet 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å nå, vil du se at det er en understreking under Jason. 630 00:29:35,750 --> 00:29:40,170 Det er fordi Chrome, som standard, gir ankere understreking. 631 00:29:40,170 --> 00:29:41,990 Du har sikkert sett det før når du har gått til en nettside. 632 00:29:41,990 --> 00:29:44,200 Ting som er koblinger er understreket og blått. 633 00:29:44,200 --> 00:29:47,300 Standard stilen for en kobling er å generelt understreke 634 00:29:47,300 --> 00:29:48,830 og legg den i blå. 635 00:29:48,830 --> 00:29:50,050 >> Hvis jeg ikke liker det, Jeg kan endre det. 636 00:29:50,050 --> 00:29:51,220 Og vi kommer til å endre det i et sekund. 637 00:29:51,220 --> 00:29:54,660 Men nå, også legge merke til at, hvis jeg hover enn dette, i nederst til venstre på 638 00:29:54,660 --> 00:29:58,580 skjermen, rett over ordet elementene er linken som jeg ga den. 639 00:29:58,580 --> 00:30:03,080 >> Så hvis jeg gjorde klikk på dette - og vi kan høyreklikk på dette, åpner en ny fane. 640 00:30:03,080 --> 00:30:04,520 Dette er faktisk ikke min hjemmeside. 641 00:30:04,520 --> 00:30:06,700 Det er bare navnet mitt. 642 00:30:06,700 --> 00:30:07,210 Der du går. 643 00:30:07,210 --> 00:30:10,440 Vi har nå slå den inn i en sammenheng. 644 00:30:10,440 --> 00:30:13,220 >> La oss utforske noen CSS også. 645 00:30:13,220 --> 00:30:15,680 Den vakre ting - og jeg kommer til å gjør dette til en litt mindre - om 646 00:30:15,680 --> 00:30:19,480 denne konsollen er, som gale CSS ark vi så før, som var virkelig 647 00:30:19,480 --> 00:30:24,130 vanskelig å analysere, er nå vakkert lagt ut for oss på venstre side 648 00:30:24,130 --> 00:30:25,270 av denne ruten. 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 utvider dette stiler kategorien, vi kan se alle de forskjellige stiler 651 00:30:33,690 --> 00:30:37,940 som er forbundet med, i dette tilfellet dette element, denne 652 00:30:37,940 --> 00:30:39,700 kobling element. 653 00:30:39,700 --> 00:30:44,240 >> Hvis vi gjør kategorien sammensatte stiler, som bare viser oss, ikke hvor alt 654 00:30:44,240 --> 00:30:47,450 kommer fra, men i det vesentlige alle av disse stiler som opererer på 655 00:30:47,450 --> 00:30:51,220 denne spesielle element akkurat nå. 656 00:30:51,220 --> 00:30:55,050 Og la oss si, vi ønsker å endre det litt. 657 00:30:55,050 --> 00:30:58,870 658 00:30:58,870 --> 00:31:02,740 Så dette er alle stiler som er opererer på denne spesielle element. 659 00:31:02,740 --> 00:31:04,800 Si at vi ønsker å endre det, fordi vi ønsker å se hvordan noe ser ut. 660 00:31:04,800 --> 00:31:06,050 Og vi bare spiller rundt akkurat nå. 661 00:31:06,050 --> 00:31:08,720 Eller vi ønsker å teste noe ut, før skrive det i kode og presser 662 00:31:08,720 --> 00:31:10,150 det og gjøre det live. 663 00:31:10,150 --> 00:31:11,780 >> Vi kan gå til kategorien stiler. 664 00:31:11,780 --> 00:31:14,270 Og i den første boksen det sier, element.style. 665 00:31:14,270 --> 00:31:17,020 Og her inne, kan du sette inn, du kan legge til noe. 666 00:31:17,020 --> 00:31:18,550 >> Så jeg vil - 667 00:31:18,550 --> 00:31:22,360 la oss gå til min link og angi bakgrunnsfarge. 668 00:31:22,360 --> 00:31:25,830 Og det faktisk autofills det for deg, alle mulige egenskaper. 669 00:31:25,830 --> 00:31:29,360 Bakgrunnsfarge, og jeg ønsker å gjøre det 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 >> Hadde jeg ser det kommer opp? 673 00:31:34,490 --> 00:31:35,800 Åh, det er 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 ser ikke noen endring her. 676 00:31:40,220 --> 00:31:45,100 Og det er fordi, hvis vi markere kobling, vil du legge merke til at koblingen 677 00:31:45,100 --> 00:31:48,430 ikke faktisk å kontrollere egenskapene til dette spesielle element. 678 00:31:48,430 --> 00:31:52,430 Det er faktisk, hvis vi åpne linken, denne overskriften her det er 679 00:31:52,430 --> 00:31:53,590 kontrollere hvordan det ser ut. 680 00:31:53,590 --> 00:31:56,380 >> Så hvis jeg ønsker å gjøre bakgrunnen blå, jeg faktisk nødt til å endre 681 00:31:56,380 --> 00:31:59,640 bakgrunnsfarge på header element. 682 00:31:59,640 --> 00:32:02,700 Og nå ser vi at Bakgrunnen er blå. 683 00:32:02,700 --> 00:32:06,770 >> Så igjen, denne raskt kan gå gjennom dette materialet ganske raskt. 684 00:32:06,770 --> 00:32:08,580 Men dette er i det vesentlige hva du kommer til å gjøre. 685 00:32:08,580 --> 00:32:10,860 Det er ikke på oppgavesettet 7, men sikkert når du er 686 00:32:10,860 --> 00:32:12,080 koding på nettet. 687 00:32:12,080 --> 00:32:12,360 >> OK. 688 00:32:12,360 --> 00:32:13,780 Jeg ønsker å gjøre bakgrunnen blå. 689 00:32:13,780 --> 00:32:16,180 Selv om, i dette tilfellet blå ser ganske stygg. 690 00:32:16,180 --> 00:32:17,740 Jeg kan gå inn her, leke seg. 691 00:32:17,740 --> 00:32:20,515 Jeg ser at å endre den til blå fungerer ikke på en. 692 00:32:20,515 --> 00:32:26,710 Jeg må faktisk endre header element for å inkludere den blå 693 00:32:26,710 --> 00:32:28,200 bakgrunn. 694 00:32:28,200 --> 00:32:34,450 >> Og så, hvis så går jeg tilbake til min CSS fil, hvordan kan jeg faktisk sette dette 695 00:32:34,450 --> 00:32:37,520 Bakgrunnen skal være blå og gjøre denne endringen pinne? 696 00:32:37,520 --> 00:32:44,840 Fordi hvis vi legger merke til hvis jeg oppdaterer den side, er alle de endringene jeg har gjort borte. 697 00:32:44,840 --> 00:32:47,220 Så innså jeg, OK, min Bakgrunnen er blå. 698 00:32:47,220 --> 00:32:51,260 >> Jeg trenger å gå inn i den header1 element og endre bakgrunnsfargen til blått. 699 00:32:51,260 --> 00:32:52,710 Hvordan kan jeg faktisk gjøre denne endringen? 700 00:32:52,710 --> 00:32:57,040 Vel, husker at, hvis vi går inne av her, denne overskriften, den 701 00:32:57,040 --> 00:32:59,280 Tittelen har en ID. 702 00:32:59,280 --> 00:33:00,890 Og det er tittelen. 703 00:33:00,890 --> 00:33:09,010 >> Og så i vår CSS-fil, kan vi si, OK, ta noe med ID av tittel og 704 00:33:09,010 --> 00:33:11,330 gi det denne ekstra eiendom. 705 00:33:11,330 --> 00:33:18,010 Hvordan kan vi referere noe med ID av tittelen, noen ideer, eller hvem som helst 706 00:33:18,010 --> 00:33:24,406 vet hvordan vi referere IDer i vår CSS-fil? 707 00:33:24,406 --> 00:33:26,290 >> En hash, det er helt riktig. 708 00:33:26,290 --> 00:33:28,710 Og du fikk et snev av at akkurat her. 709 00:33:28,710 --> 00:33:32,810 Så et eller annet sted i denne CSS-fil, det er denne linjen med kode - 710 00:33:32,810 --> 00:33:34,150 # Igjen # venstre inner # header # tittelen. 711 00:33:34,150 --> 00:33:36,810 712 00:33:36,810 --> 00:33:40,590 Og det er å gi det margin bunn, definere margin bunnen av denne 713 00:33:40,590 --> 00:33:42,220 bestemt element. 714 00:33:42,220 --> 00:33:46,580 >> Vel, hvis jeg ønsket å endre det, Jeg vil gå inn i denne CSS-fil. 715 00:33:46,580 --> 00:33:49,510 Og jeg kunne enten finne dette del av CSS-fil. 716 00:33:49,510 --> 00:33:50,300 Eller jeg kunne skrive min egen. 717 00:33:50,300 --> 00:33:54,670 >> Jeg kunne gjøre hash tittelen klammeparentes og deretter bakgrunnsfarge kolon blå 718 00:33:54,670 --> 00:33:57,250 semikolon og nært at klammeparentes. 719 00:33:57,250 --> 00:34:02,790 Og det ville endre bakgrunns Fargen på dette element til blått. 720 00:34:02,790 --> 00:34:06,690 Grunnen til at de gir deg så mange her er det, er det nødvendig i dette tilfellet, 721 00:34:06,690 --> 00:34:08,690 fordi tittelen er en unik ID. 722 00:34:08,690 --> 00:34:11,190 >> Men det du kan gjøre er reir ting. 723 00:34:11,190 --> 00:34:14,760 Så dette er å si, OK, gå til venstre. 724 00:34:14,760 --> 00:34:15,350 Det er svært liten. 725 00:34:15,350 --> 00:34:16,150 Jeg ber om unnskyldning 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 Innsiden av det, se etter ting med ID venstre indre. 728 00:34:20,420 --> 00:34:22,630 Innsiden av det blikket, se etter tingen med ID header. 729 00:34:22,630 --> 00:34:27,560 Innsiden av det, se etter ting ID tittel og endre ID-tittelen. 730 00:34:27,560 --> 00:34:29,120 Så dette er bare en måte hekkende ting. 731 00:34:29,120 --> 00:34:32,719 Noen mennesker liker reir det, fordi det gjør det litt klarere. 732 00:34:32,719 --> 00:34:37,980 >> Du vil se ned her også, ikke sant her, det er ingen hasj. 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 gitt navnet på en generisk tag. 735 00:34:44,060 --> 00:34:48,080 Og det er noen CSS egenskaper assosiert med hver enkelt h1. 736 00:34:48,080 --> 00:34:51,889 Så hvis jeg fant en annen h1 på denne siden, Jeg vil også se at denne stilen var 737 00:34:51,889 --> 00:34:54,280 brukes til det også. 738 00:34:54,280 --> 00:34:59,290 >> Hvis jeg ønsket å bruke en stil til en klasse, hvordan kan jeg referere til en klasse eller 739 00:34:59,290 --> 00:35:02,469 snakk 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 prikk. 742 00:35:05,340 --> 00:35:08,630 Så la oss gå tilbake til denne siden før. 743 00:35:08,630 --> 00:35:11,160 Hvis jeg gjør hash ID. 744 00:35:11,160 --> 00:35:14,760 Det er å endre stilen av tingen med ID. 745 00:35:14,760 --> 00:35:21,390 Eller beklager, hvis jeg gjør hash logo, er at finne ting med ID av logo 746 00:35:21,390 --> 00:35:24,010 og gi det en bestemt CSS stil. 747 00:35:24,010 --> 00:35:28,280 >> Hvis jeg gjør noe topp., Er at å finne alt med klassen av toppen og 748 00:35:28,280 --> 00:35:30,190 endre sine stiler. 749 00:35:30,190 --> 00:35:35,950 Hvis jeg bare H1, som finner hver enkelt h1 og gir det uansett 750 00:35:35,950 --> 00:35:37,940 stil jeg ønsker å gi den. 751 00:35:37,940 --> 00:35:43,260 Hvis jeg gjør h1 plass og da. Toppen. 752 00:35:43,260 --> 00:35:47,670 Det vil gå finne alle H1S og deretter alle de med klassen av toppen og 753 00:35:47,670 --> 00:35:51,690 da bare endre disse stilene til hva jeg ønsker å gi den. 754 00:35:51,690 --> 00:35:54,600 >> Og igjen, kunne vi ha skrevet noe av dette på egen hånd. 755 00:35:54,600 --> 00:35:55,790 Men vi ville ikke ha fått så langt. 756 00:35:55,790 --> 00:35:59,180 Mye bedre, synes det å faktisk gå på en levende nettside og se hvordan 757 00:35:59,180 --> 00:36:02,800 de gjør det, og se på alle de fantastiske ting du kommer til å gjøre. 758 00:36:02,800 --> 00:36:06,570 >> La oss se på en mer nettsted før vi går videre. 759 00:36:06,570 --> 00:36:10,150 Og dette er en som du vil sannsynligvis bli kjent med. 760 00:36:10,150 --> 00:36:12,310 Dette er CS50 Finance. 761 00:36:12,310 --> 00:36:16,120 Så igjen, kan du faktisk gå inn og observere denne CSS-fil på din 762 00:36:16,120 --> 00:36:19,390 datamaskin, fordi du har lastet ned dette CSS-fil, hvis du lastet ned 763 00:36:19,390 --> 00:36:20,270 oppgavesettet. 764 00:36:20,270 --> 00:36:26,850 >> Vi kan gå til Verktøy og Utviklerverktøy. 765 00:36:26,850 --> 00:36:30,280 Og vi ser en mye enklere HTML layout. 766 00:36:30,280 --> 00:36:32,020 Vi har topp, midten og bunnen. 767 00:36:32,020 --> 00:36:34,490 Og igjen, noe du bør være kjent med, fordi du har sett 768 00:36:34,490 --> 00:36:37,680 gjennom distribusjon koden for denne ukens oppgavesettet. 769 00:36:37,680 --> 00:36:43,360 >> På toppen er, per koden et enkelt bilde som heter. 770 00:36:43,360 --> 00:36:47,170 Og det er kilden til bildet. 771 00:36:47,170 --> 00:36:52,170 Si at jeg er ferdig med alt av hva Jeg ønsket å for Problem Set 7. 772 00:36:52,170 --> 00:36:55,500 Og det fungerer på riktig måte, men Jeg vil endre hvordan den ser ut. 773 00:36:55,500 --> 00:36:58,900 Og jeg ønsker å endre bakgrunns på toppen av siden til, 774 00:36:58,900 --> 00:37:01,000 for eksempel blått. 775 00:37:01,000 --> 00:37:04,860 Hvis det var meg, ville jeg komme inn her og finne ut, OK hva 776 00:37:04,860 --> 00:37:05,890 ønsker jeg å endre. 777 00:37:05,890 --> 00:37:08,700 >> La oss se, div ID toppen, at utseende som toppen av siden. 778 00:37:08,700 --> 00:37:09,910 Så la oss gå dit. 779 00:37:09,910 --> 00:37:13,940 La oss prøve å endre bakgrunnsfarge. 780 00:37:13,940 --> 00:37:16,360 La oss gå gjøre Alice blå, fordi det er en bedre en. 781 00:37:16,360 --> 00:37:18,010 >> Og du vil legge merke til at - 782 00:37:18,010 --> 00:37:19,190 du sannsynligvis ikke kan se det. 783 00:37:19,190 --> 00:37:23,430 Men det er en lyseblå, langs CS50 logo. 784 00:37:23,430 --> 00:37:25,810 La oss endre den i stedet til rødt. 785 00:37:25,810 --> 00:37:28,790 Og du vil legge merke til nå har jeg nettopp endret bakgrunnsfargen til rødt. 786 00:37:28,790 --> 00:37:37,050 >> Så nå vil jeg gå inn i min CSS-fil og skriver # top krøllete paren akkurat her. 787 00:37:37,050 --> 00:37:42,170 Du kan se koden til høyre her, klammeparentes. 788 00:37:42,170 --> 00:37:44,530 Og så ville jeg legge til bakgrunnsmusikk farge, rød. 789 00:37:44,530 --> 00:37:47,500 Og så, det ville være en klammeparentes. 790 00:37:47,500 --> 00:37:52,230 Så det er hvordan jeg ville utforske og eksperimentere med formatering på CS50 791 00:37:52,230 --> 00:37:53,070 Finans nettstedet. 792 00:37:53,070 --> 00:37:55,060 >> Jeg kunne gjøre det her og test det ut på min nettleser. 793 00:37:55,060 --> 00:37:58,130 Og så kunne jeg gå inn i min faktiske koden og gjøre de endringene som 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 min bestemte området. 796 00:38:04,280 --> 00:38:05,390 >> OK. 797 00:38:05,390 --> 00:38:06,850 Det var mye. 798 00:38:06,850 --> 00:38:09,380 Jeg ber om unnskyldning for å gå gjennom det så raskt. 799 00:38:09,380 --> 00:38:12,560 Er det noen som har noen spørsmål i det hele tatt 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 knyttet det som ble Jason, igjen? 802 00:38:24,728 --> 00:38:26,180 >> JASON Hirschhorn: Hva mener du koblet? 803 00:38:26,180 --> 00:38:29,765 >> PUBLIKUM: Du følger en link til en annen hjemmeside, ved hjelp av anker. 804 00:38:29,765 --> 00:38:32,980 >> JASON Hirschhorn: Så spør du, bare generelt, hvordan du gjør en link? 805 00:38:32,980 --> 00:38:33,560 >> PUBLIKUM: Yeah. 806 00:38:33,560 --> 00:38:34,150 >> JASON Hirschhorn: OK. 807 00:38:34,150 --> 00:38:35,575 Koden for å lage en link - 808 00:38:35,575 --> 00:38:38,180 809 00:38:38,180 --> 00:38:40,590 >> PUBLIKUM: Nei, som i HTML. 810 00:38:40,590 --> 00:38:43,140 >> JASON Hirschhorn: Down her, mener du? 811 00:38:43,140 --> 00:38:46,960 Så hvis jeg ønsker å inkludere en link et sted, sier, er dette den HTML på min 812 00:38:46,960 --> 00:38:50,210 side akkurat her. 813 00:38:50,210 --> 00:38:51,010 Dette er HTML. 814 00:38:51,010 --> 00:38:53,720 Kanskje det er åpent 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 >> La oss ta dette opphavsrett John Harvard link til noe. 817 00:38:58,990 --> 00:39:02,230 Så vi skal redigere alt dette som HTML. 818 00:39:02,230 --> 00:39:08,480 Alt du gjør er å inkludere en, så braketten tett brakett på 819 00:39:08,480 --> 00:39:12,700 begynner, og deretter brakett slash en nær braketten på slutten. 820 00:39:12,700 --> 00:39:13,930 >> Så nå har jeg tatt en ankerkoden. 821 00:39:13,930 --> 00:39:15,475 Og faktisk, hvis du klikker ut av dette, vil det nå 822 00:39:15,475 --> 00:39:22,110 formatere den redigere som HTML. 823 00:39:22,110 --> 00:39:24,020 Og si, vi vil koble det. 824 00:39:24,020 --> 00:39:25,760 Vi hadde du href-attributtet. 825 00:39:25,760 --> 00:39:27,010 Og vi sier - 826 00:39:27,010 --> 00:39:42,600 827 00:39:42,600 --> 00:39:47,600 >> Og nå, som du legger merke til, opphavsrett John Harvard er blå. 828 00:39:47,600 --> 00:39:50,870 Og når jeg blar i løpet det, er det nå en lenke. 829 00:39:50,870 --> 00:39:53,140 Så du kan skrive denne koden. 830 00:39:53,140 --> 00:39:57,030 Du kan omgi ganske mye annet du ønsker i en ankerkode og slå den 831 00:39:57,030 --> 00:39:57,700 inn en link. 832 00:39:57,700 --> 00:39:58,246 >> PUBLIKUM: OK. 833 00:39:58,246 --> 00:39:58,520 Fikk det. 834 00:39:58,520 --> 00:40:01,300 >> JASON Hirschhorn: Og hvis jeg ikke vil ha det - selvfølgelig, noen ganger folk har en tendens til 835 00:40:01,300 --> 00:40:04,090 å tenke disse tingene som bare ser blå generelt og understreket er 836 00:40:04,090 --> 00:40:05,860 ikke den peneste måten å lage en link. 837 00:40:05,860 --> 00:40:11,380 Så hvis jeg kommer over her, ser du det, et sted i en CSS-fil, det er 838 00:40:11,380 --> 00:40:14,500 skrevet dette en og deretter to klammeparentes. 839 00:40:14,500 --> 00:40:20,700 Så la oss si at, for linker, jeg gjør ikke det ønsker dem til å bli blå, heller jeg 840 00:40:20,700 --> 00:40:23,645 vil fargen på en kobling til være denne fine magenta. 841 00:40:23,645 --> 00:40:28,320 842 00:40:28,320 --> 00:40:30,640 >> La oss gi den fargen. 843 00:40:30,640 --> 00:40:34,060 844 00:40:34,060 --> 00:40:35,110 La oss plukke magenta. 845 00:40:35,110 --> 00:40:38,440 Nå, alle koblinger på siden min har blir denne fine fargen magenta. 846 00:40:38,440 --> 00:40:40,170 Noen mennesker liker ikke fargene i det hele tatt. 847 00:40:40,170 --> 00:40:41,340 Noen mennesker liker ikke understrekinger. 848 00:40:41,340 --> 00:40:42,510 Du får velge. 849 00:40:42,510 --> 00:40:44,990 >> Med lenker, kan du style hvordan de se når du har besøkt dem. 850 00:40:44,990 --> 00:40:47,820 Som du vil legge merke til på mange sider, linker blir lilla på du besøker dem. 851 00:40:47,820 --> 00:40:49,190 Du kan endre den fargen også. 852 00:40:49,190 --> 00:40:49,450 Yeah. 853 00:40:49,450 --> 00:40:51,790 >> PUBLIKUM: Så du endre det for hver enkelt link. 854 00:40:51,790 --> 00:40:56,310 Men hvis du bare ønsket å gjøre denne koblingen selv, ville du bare gjøre i ID 855 00:40:56,310 --> 00:40:58,720 bunnen eller noe? 856 00:40:58,720 --> 00:41:01,070 >> JASON Hirschhorn: Så stort spørsmål. 857 00:41:01,070 --> 00:41:05,090 Som du lagt merke til her, jeg endret noen del av CSS som gjelder 858 00:41:05,090 --> 00:41:11,530 alt som er en A. Hvis jeg ønsket å bare gjøre at linken nederst, jeg 859 00:41:11,530 --> 00:41:14,500 ville gå til min CSS-fil og sannsynligvis gjøre akkurat som du sa, hash 860 00:41:14,500 --> 00:41:16,040 bunn plass en. 861 00:41:16,040 --> 00:41:18,400 Og det ville gi meg alt Som i bunnen. 862 00:41:18,400 --> 00:41:30,720 >> Eller jeg kunne, alternativt, gi det en unik ID og så bare gjøre hash link. 863 00:41:30,720 --> 00:41:32,050 Og som ville tillate meg å endre dette ut. 864 00:41:32,050 --> 00:41:36,170 Men bare doling ut ID-willy-Bulle er generelt en dårlig 865 00:41:36,170 --> 00:41:37,730 praksis, fordi de skal være unike. 866 00:41:37,730 --> 00:41:40,940 Og jo mer du har dem, det kan bli litt forvirrende. 867 00:41:40,940 --> 00:41:41,270 Yeah. 868 00:41:41,270 --> 00:41:43,725 >> PUBLIKUM: Kan du gi den samme ID til flere eiere? 869 00:41:43,725 --> 00:41:45,820 >> JASON Hirschhorn: Teknisk sett ja. 870 00:41:45,820 --> 00:41:50,700 Ingenting kommer til å stoppe deg, men du bør ikke du bør gi den en klasse. 871 00:41:50,700 --> 00:41:55,330 872 00:41:55,330 --> 00:41:57,655 OK, noen andre spørsmå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 La oss gå videre til PHP. 876 00:42:09,950 --> 00:42:10,575 Å, ja. 877 00:42:10,575 --> 00:42:13,800 >> PUBLIKUM: Hva er det med disse nettsteder som betyr at vi kan redigere 878 00:42:13,800 --> 00:42:15,440 dem før vi oppdatere. 879 00:42:15,440 --> 00:42:18,270 Men når vi oppdaterer den går tilbake tilbake til utgangs HTML? 880 00:42:18,270 --> 00:42:19,900 >> JASON Hirschhorn: Great spørsmålet - 881 00:42:19,900 --> 00:42:24,810 så når vi har lastet dette webside, er det HTML. 882 00:42:24,810 --> 00:42:25,900 Og det er Script. 883 00:42:25,900 --> 00:42:29,060 Dens PHP er utført for å gi oss det type nettsted vi se. 884 00:42:29,060 --> 00:42:33,130 Og det har skapt noen HTML, noen Javascript, og noen CSS. 885 00:42:33,130 --> 00:42:35,990 Og det er nå tilgjengelig av vår datamaskin. 886 00:42:35,990 --> 00:42:40,700 >> Og en kopi av disse filene er lagret lokalt på datamaskinen vår, 887 00:42:40,700 --> 00:42:41,910 for tiden. 888 00:42:41,910 --> 00:42:44,030 Så vi kan redigere det lokale kopien. 889 00:42:44,030 --> 00:42:46,530 Men selvfølgelig, vi er ikke redigerer kopien serveren. 890 00:42:46,530 --> 00:42:49,420 >> Og når vi oppdaterer siden, vi får en annen server kopi. 891 00:42:49,420 --> 00:42:51,250 Og så ser vi ting tilbake som de var. 892 00:42:51,250 --> 00:42:55,200 Hvis vi var i stand til, herfra, for å redigere offisielle nettside, vil vi ha en mye 893 00:42:55,200 --> 00:42:55,800 av problemer. 894 00:42:55,800 --> 00:42:58,670 >> PUBLIKUM: Ja, slik vi kan lese og skriver at kopien. 895 00:42:58,670 --> 00:43:00,140 >> JASON Hirschhorn: Høyre. 896 00:43:00,140 --> 00:43:04,380 Vi gjør bare lokale endringer her, men igjen, veldig nyttig for å utforske, 897 00:43:04,380 --> 00:43:05,690 ofte. 898 00:43:05,690 --> 00:43:08,900 Når jeg skriver mitt siste prosjekt, for eksempel, jeg ønsker å se hvordan noen 899 00:43:08,900 --> 00:43:11,270 nettstedet gjort noe look den måten de gjorde. 900 00:43:11,270 --> 00:43:17,350 Jeg vil gå inn og bruke denne ruten ned her, for å se på hva CSS de ga til 901 00:43:17,350 --> 00:43:20,890 det eller hvilken farge de plukket eller hvordan de fikk det slik at når du svevde 902 00:43:20,890 --> 00:43:24,180 over noe, listen kom ned i en fin gjennomgripende måte. 903 00:43:24,180 --> 00:43:27,220 Det er en fin måte å inspisere hva andre nettsteder gjør og låne fra dem. 904 00:43:27,220 --> 00:43:30,590 905 00:43:30,590 --> 00:43:33,690 >> La oss 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, hva det kommer til å gjøre er kjøre kode server side. 908 00:43:42,060 --> 00:43:44,490 Så vi kommer aldri til å se PHP-kode. 909 00:43:44,490 --> 00:43:47,210 >> Men den gjør det spille pent med HTML og ofte genererer 910 00:43:47,210 --> 00:43:48,210 mye av HTML-kode. 911 00:43:48,210 --> 00:43:52,570 Men som du blir kjent med problemet Sett 7, vil din PHP-kode utføre, 912 00:43:52,570 --> 00:43:56,200 generere noen HTML, og det er det brukeren vil ende opp med å se. 913 00:43:56,200 --> 00:44:00,510 >> PHP er utrolig lik C. Men det er et par 914 00:44:00,510 --> 00:44:04,400 forskjeller, og disse forskjellene er viktig å merke seg. 915 00:44:04,400 --> 00:44:09,420 En forskjell er at variabler i PHP er løst skrevet. 916 00:44:09,420 --> 00:44:11,275 Er det noen som har en følelse av hva det betyr? 917 00:44:11,275 --> 00:44:14,245 >> PUBLIKUM: Du trenger ikke å kaste det selv. 918 00:44:14,245 --> 00:44:16,400 Som ingen behov for å skrive i teksten. 919 00:44:16,400 --> 00:44:19,070 >> JASON Hirschhorn: Jeg ville ikke bruke den Ordet cast, men ja, ingen grunn til å erklære 920 00:44:19,070 --> 00:44:20,930 en form for en bestemt variabel. 921 00:44:20,930 --> 00:44:22,300 Hvordan i stedet har vi deklarerer en variabel? 922 00:44:22,300 --> 00:44:23,860 >> PUBLIKUM: Bruk et dollartegn. 923 00:44:23,860 --> 00:44:25,270 >> JASON Hirschhorn: Bruk 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 helt tall. 928 00:44:36,280 --> 00:44:38,010 Deretter, kan det være en streng. 929 00:44:38,010 --> 00:44:39,420 Deretter, kan det være et tegn. 930 00:44:39,420 --> 00:44:40,790 Det spiller egentlig ingen rolle. 931 00:44:40,790 --> 00:44:46,360 >> Dessuten er den kule ting om PHP, si, er $ x strengen ett. 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 legge til $ x og $ y, og det vil gi deg to, hva du forventer. 934 00:44:54,370 --> 00:44:56,160 Så det er virksomhet i PHP. 935 00:44:56,160 --> 00:45:00,810 Fordi det er løst skrevet variabler, noen implisitt casting er gjort for deg 936 00:45:00,810 --> 00:45:02,330 og enkelte operasjoner. 937 00:45:02,330 --> 00:45:04,240 >> Du kan gjøre operasjoner på ting av forskjellige typer. 938 00:45:04,240 --> 00:45:08,740 Mens før, får du ofte en feil i C ordtak, dette er ikke den type 939 00:45:08,740 --> 00:45:09,610 som er ment å gå her. 940 00:45:09,610 --> 00:45:11,510 Bare ting av denne typen kan gå her. 941 00:45:11,510 --> 00:45:14,900 Du kommer ikke til å få denne type av feil, generelt, i PHP. 942 00:45:14,900 --> 00:45:17,420 Så det er en stor forskjell - hvordan vi håndterer variabler. 943 00:45:17,420 --> 00:45:20,850 >> Det andre store forskjellen er at PHP-koden er tolket. 944 00:45:20,850 --> 00:45:23,110 Wheres, er C-kode kompileres. 945 00:45:23,110 --> 00:45:23,910 Hva mener du? 946 00:45:23,910 --> 00:45:26,700 >> Vel, for C-kode du kjørte det gjennom en kompilator. 947 00:45:26,700 --> 00:45:29,010 Du generert en binærfil. 948 00:45:29,010 --> 00:45:30,770 Og du kjørte som binærfil. 949 00:45:30,770 --> 00:45:35,500 Du tok vare på alle feil før du genererte binærfil. 950 00:45:35,500 --> 00:45:37,810 >> Selvfølgelig kan det ha vært segmentering feil, når du kjørte 951 00:45:37,810 --> 00:45:39,020 binærfil. 952 00:45:39,020 --> 00:45:45,780 Men det er ikke som du glemte å inkludere definisjonen av printf, eller 953 00:45:45,780 --> 00:45:48,735 du ikke bruke en variabel og bare opprettet en sløsing variabel. 954 00:45:48,735 --> 00:45:51,830 Eller du ikke definere en funksjon prototype. 955 00:45:51,830 --> 00:45:53,590 >> Alt som skjedde før du kompilert. 956 00:45:53,590 --> 00:45:56,830 Det ga deg alle feil eller dårlig ting som det trodde kunne skje. 957 00:45:56,830 --> 00:45:59,900 Og så hadde du din 0 og En fil som du kjørte. 958 00:45:59,900 --> 00:46:01,690 PHP-koden virker ikke sånn. 959 00:46:01,690 --> 00:46:03,750 >> Du kommer til å skrive din PHP-kode. 960 00:46:03,750 --> 00:46:05,820 Så, du kommer til lagre det, formodentlig. 961 00:46:05,820 --> 00:46:09,160 Og i hvert fall i P-Set 7, du kommer å oppdatere nettleseren din, og 962 00:46:09,160 --> 00:46:11,110 du kommer til å se hva som skjedde. 963 00:46:11,110 --> 00:46:14,110 Du kommer til se resultatet av at PHP-kode. 964 00:46:14,110 --> 00:46:17,450 >> Du kan også se, på toppen på siden din, en feil. 965 00:46:17,450 --> 00:46:19,960 Fordi du hadde noen feil i PHP. 966 00:46:19,960 --> 00:46:22,390 Du kan fortsatt se resten av websiden ser fint. 967 00:46:22,390 --> 00:46:25,130 Men en del er galt, og det er en feil i dette stedet. 968 00:46:25,130 --> 00:46:28,320 Og det er fordi at en del av PHP-kode virker ikke. 969 00:46:28,320 --> 00:46:31,680 >> Faktisk, når du kjører, når du gå til noe sånt by.php. 970 00:46:31,680 --> 00:46:34,950 Det kommer til å gå gjennom din PHP filen linje for linje og kjøre den 971 00:46:34,950 --> 00:46:36,210 da og bare da. 972 00:46:36,210 --> 00:46:39,890 Det kommer ikke til å kompilere det på forhånd tid eller kompilere ett eksemplar og deretter gi 973 00:46:39,890 --> 00:46:41,570 at kompilert kopi til alle. 974 00:46:41,570 --> 00:46:43,830 Hver gang, det kommer til å gå gjennom linje for linje og utføre den. 975 00:46:43,830 --> 00:46:46,620 >> Så noen linjer kan fungere og utgangs noe riktig. 976 00:46:46,620 --> 00:46:49,500 Og andre linjer kan være brutt og utgang en feil i stedet. 977 00:46:49,500 --> 00:46:52,650 Så når debugging med PHP, har vi gitt du et par nyttige ting 978 00:46:52,650 --> 00:46:54,580 å hjelpe deg debug, som dump-funksjonen. 979 00:46:54,580 --> 00:46:56,900 >> Men generelt, du kommer å se disse feilene. 980 00:46:56,900 --> 00:46:58,340 Og det er hvordan du skal vet du gjorde noe galt. 981 00:46:58,340 --> 00:47:00,740 Men du bare kommer til å se feilen når du faktisk kjøre koden. 982 00:47:00,740 --> 00:47:03,420 983 00:47:03,420 --> 00:47:08,880 >> Et annet viktig aspekt av PHP og webutvikling er ideen om å få 984 00:47:08,880 --> 00:47:09,920 versus innlegget. 985 00:47:09,920 --> 00:47:13,250 Kan noen forklare hva forskjellen mellom få og innlegget 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: Betyr ikke en av dem la brukeren se dataene, 991 00:47:24,495 --> 00:47:26,080 og en av 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 noe å tilføye? 994 00:47:28,400 --> 00:47:32,622 >> PUBLIKUM: Jeg tynn innlegget er en super-global variabel. 995 00:47:32,622 --> 00:47:34,740 >> JASON Hirschhorn: Så begge disse variablene er gitt til deg. 996 00:47:34,740 --> 00:47:35,630 Dette er bare variabler. 997 00:47:35,630 --> 00:47:37,740 Og du vet at de er variable, fordi akkurat her jeg 998 00:47:37,740 --> 00:47:38,780 bruker dollartegnet. 999 00:47:38,780 --> 00:47:41,950 >> Dette er variabler gitt til deg av PHP. 1000 00:47:41,950 --> 00:47:45,990 Og når du flytter mellom websider, du ønsker å spare litt informasjon. 1001 00:47:45,990 --> 00:47:47,960 Du har sannsynligvis ønsker å spare hvis brukeren er logget inn 1002 00:47:47,960 --> 00:47:49,270 Det er ikke lagret i GET og POST. 1003 00:47:49,270 --> 00:47:51,390 Som er lagret i noe annet, en annen variabel. 1004 00:47:51,390 --> 00:47:55,170 >> Noen som vet hva variabel som er lagret i, eller hva variabel du bruker i 1005 00:47:55,170 --> 00:47:57,728 P-Set 7, for å sørge for at brukeren er logget inn? 1006 00:47:57,728 --> 00:48:00,360 1007 00:48:00,360 --> 00:48:03,690 $ _SESSION, Det er helt riktig, trolig viktig å være kjent med 1008 00:48:03,690 --> 00:48:06,060 navnene på disse tingene du bruker ofte. 1009 00:48:06,060 --> 00:48:10,070 >> Så du bruke økt variabel å spare informasjon 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 eksisterer på hver side, kanskje som en global variabel, hvis du ønsker å tenke 1012 00:48:15,250 --> 00:48:16,900 om det sånn. 1013 00:48:16,900 --> 00:48:19,260 >> Det er et par andre variabler som gjør det mulig å overføre informasjon 1014 00:48:19,260 --> 00:48:20,710 fra side til side. 1015 00:48:20,710 --> 00:48:24,260 Spesielt de som vi vil fokusere på er GET og POST variabler. 1016 00:48:24,260 --> 00:48:29,330 I PHP ser de ut som $ _GET Og $ _POST. 1017 00:48:29,330 --> 00:48:33,610 Og forskjellen, som Marcus pekte ut, mellom to av dem er at, 1018 00:48:33,610 --> 00:48:37,670 Informasjonen i $ _GET er vises i nettadressen. 1019 00:48:37,670 --> 00:48:41,380 >> Så hvis vi ser her nede, vi se en YouTube-link. 1020 00:48:41,380 --> 00:48:43,760 Vi ser dette spørsmålstegn. 1021 00:48:43,760 --> 00:48:47,730 Vi ser v = og deretter noen verdi. 1022 00:48:47,730 --> 00:48:53,460 Tilbake til denne ideen om nøkkelverdi par, er v nøkkelen. 1023 00:48:53,460 --> 00:48:56,970 Og her er verdien. 1024 00:48:56,970 --> 00:49:01,030 >> Så hvis vi skulle gå til denne siden, eller koding på denne siden, ville vi ha en 1025 00:49:01,030 --> 00:49:04,000 variabel kalt $ _GET. 1026 00:49:04,000 --> 00:49:11,030 Hvis vi gikk til $ _GET open bracket "v" nær brakett, svært lik matrise 1027 00:49:11,030 --> 00:49:15,000 notasjon, er dette en førsteamanuensis matrise fordi vi ikke bruker indekser. 1028 00:49:15,000 --> 00:49:16,710 Brukte strenger som nøkler. 1029 00:49:16,710 --> 00:49:17,940 Men veldig lignende idé. 1030 00:49:17,940 --> 00:49:20,520 Hvis vi gikk vi ville få denne verdien. 1031 00:49:20,520 --> 00:49:23,276 >> På denne siden vil vi være i stand å bruke denne verdien. 1032 00:49:23,276 --> 00:49:32,200 Hvis vi faktisk ser, la oss gå til en YouTube-side. 1033 00:49:32,200 --> 00:49:35,140 Hva video bør vi se? 1034 00:49:35,140 --> 00:49:37,350 Dette 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 sin andel internettadressen og 1037 00:49:44,750 --> 00:49:46,000 lime den i et nytt vindu. 1038 00:49:46,000 --> 00:49:48,550 1039 00:49:48,550 --> 00:50:00,470 Og nå, hvis du ser opp her, vil du legge merke til det, nok en gang - 1040 00:50:00,470 --> 00:50:03,170 Jeg kommer til å kopiere og lime dette inn 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 merke at det har denne spørsmålstegn. 1043 00:50:19,720 --> 00:50:22,150 Spørsmålstegnet angir at alt etter dette kommer til å være 1044 00:50:22,150 --> 00:50:23,530 lagret i GET-variabelen. 1045 00:50:23,530 --> 00:50:29,130 >> Det har da v, er at den første nøkkel, og denne første verdi. 1046 00:50:29,130 --> 00:50:30,710 Ampersand er spesiell. 1047 00:50:30,710 --> 00:50:34,340 Ampersand sier, OK, vi ferdig med den første verdien. 1048 00:50:34,340 --> 00:50:37,170 Vi er nå i ferd videre til en annen suse_register_auto.ycp. 1049 00:50:37,170 --> 00:50:41,135 Her er nøkkelen kalt funksjonen, og verdien 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 koding denne siden og noen gikk til denne internettadressen og jeg hadde 1052 00:50:50,710 --> 00:50:53,190 kanskje watch.php. 1053 00:50:53,190 --> 00:50:54,150 Og jeg ble koding dette. 1054 00:50:54,150 --> 00:50:57,060 Og jeg kunne bruke $ _GET variabel. 1055 00:50:57,060 --> 00:51:02,740 Og jeg ville ha en v, og Jeg ville ha en funksjon. 1056 00:51:02,740 --> 00:51:07,080 >> Og hvis jeg bruker v-tasten, jeg ville få denne verdien. 1057 00:51:07,080 --> 00:51:14,145 Og hvis jeg gjorde $ _GET bracket "-funksjonen" nær brakett, ville jeg få denne verdien. 1058 00:51:14,145 --> 00:51:17,530 Igjen, det gjør det ikke nødvendigvis gjelde - 1059 00:51:17,530 --> 00:51:21,460 Selvfølgelig, YouTube-nøkler og verdier og få informasjon gjelder ikke 1060 00:51:21,460 --> 00:51:22,700 Vårt problem ligger 7. 1061 00:51:22,700 --> 00:51:28,450 Men det er visse ting som vi passere via GET i vår Problem Set 7. 1062 00:51:28,450 --> 00:51:33,120 Og sikkert, når du går til en nettside eller er koding din egen side, den 1063 00:51:33,120 --> 00:51:36,440 $ _GET Vil komme godt når koding. 1064 00:51:36,440 --> 00:51:41,030 >> Hva er en grunn til å bruke $ _GET da, hvis det gir ikke noe privatliv? 1065 00:51:41,030 --> 00:51:43,170 Du ser all denne informasjonen som blir overført. 1066 00:51:43,170 --> 00:51:44,170 Det er alt som vises for brukeren. 1067 00:51:44,170 --> 00:51:49,060 Men hva er en grunn til at du kanskje ønsker å spare noe i $ _GET, som 1068 00:51:49,060 --> 00:51:50,310 motsetning til $ _POST? 1069 00:51:50,310 --> 00:51:52,650 1070 00:51:52,650 --> 00:51:53,900 Hvorfor kan det være lurt å gjø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 spurte deg i Quiz 1. 1074 00:52:00,310 --> 00:52:02,210 Hva er den pro på $ _GET? 1075 00:52:02,210 --> 00:52:04,250 Hva er en pro? 1076 00:52:04,250 --> 00:52:04,700 Yeah - 1077 00:52:04,700 --> 00:52:06,180 >> PUBLIKUM: Det er enklere å dele informasjon. 1078 00:52:06,180 --> 00:52:07,040 >> JASON Hirschhorn: Jeg tror det er flott. 1079 00:52:07,040 --> 00:52:07,870 Det er lettere å dele informasjon. 1080 00:52:07,870 --> 00:52:09,360 Det er lettere å bokmerke. 1081 00:52:09,360 --> 00:52:15,260 >> Du kan bokmerke nå, YouTube.com / watch? V = noe og gå 1082 00:52:15,260 --> 00:52:16,900 til den spesifikke video. 1083 00:52:16,900 --> 00:52:22,020 Hvis YouTube alltid gjorde POST-forespørsler til forskjellige 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 kan ikke bokmerke en enkelt video. 1086 00:52:25,750 --> 00:52:28,160 Fordi hvis du sier delt at koblingen med noen andre, gjør de ikke 1087 00:52:28,160 --> 00:52:30,160 automatisk få ditt innlegg variabel. 1088 00:52:30,160 --> 00:52:33,570 De er bare å få denne koblingen, og kobling 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 gjør at du kan bokmerke denne informasjon eller dele denne informasjonen 1091 00:52:38,850 --> 00:52:40,840 eller gjøre det litt mer brukervennlig. 1092 00:52:40,840 --> 00:52:43,890 Selvfølgelig, det er ikke noe privatliv, så vi har dette innlegget variabel. 1093 00:52:43,890 --> 00:52:47,570 Og etter informasjon er ikke vises i nettadressen. 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 mer privat. 1096 00:52:51,710 --> 00:52:55,030 Og så får du se denne nettadressen her nede, cs50.net. 1097 00:52:55,030 --> 00:52:59,200 Hvorvidt du er logget inn i nettside, det kommer til å ha samme 1098 00:52:59,200 --> 00:53:02,600 URL, cs50.net. 1099 00:53:02,600 --> 00:53:05,940 >> Tydeligvis, er noe annerledes, hvis du er logget inn på nettstedet. 1100 00:53:05,940 --> 00:53:08,690 Du har, en, sannsynligvis inn din PIN-kode. 1101 00:53:08,690 --> 00:53:10,600 Og det har bekreftet at med serveren. 1102 00:53:10,600 --> 00:53:12,650 Og det er sannsynligvis spare annen informasjon. 1103 00:53:12,650 --> 00:53:14,810 Men nettadressen ikke endres i det hele tatt. 1104 00:53:14,810 --> 00:53:17,080 >> Og slik det er tilfelle, da noe sendes i posten. 1105 00:53:17,080 --> 00:53:18,800 Nettadressen endres ikke. 1106 00:53:18,800 --> 00:53:21,100 Dette POST informasjonen er ikke vises i nettadressen. 1107 00:53:21,100 --> 00:53:26,150 Men noen stat har endret seg, og kanskje det er noe informasjon som er lagret 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 >> Unnskyld. før jeg går inn i SQL, noe spørsmål om PHP, i særdeleshet, 1111 00:53:36,880 --> 00:53:41,850 spørsmål om ting vi ikke gå over at du har funnet eller noen syntaks eller 1112 00:53:41,850 --> 00:53:43,855 logiske spørsmå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 språket du vil være samspill med denne uken er det 1116 00:53:54,400 --> 00:53:58,920 Structured Query Language, SQL, uttales oppfølgeren ofte. 1117 00:53:58,920 --> 00:54:01,740 Det gjør det mulig å samhandle med database på en formalisert måte. 1118 00:54:01,740 --> 00:54:04,390 Og det spiller veldig pent med PHP. 1119 00:54:04,390 --> 00:54:09,950 >> Som du vil se i oppgave Set 7, vi har gitt deg en funksjon som kalles spørring. 1120 00:54:09,950 --> 00:54:14,990 Og det tar en SQL-streng og utfører at søket på databasen. 1121 00:54:14,990 --> 00:54:17,470 I år tidligere, var du ikke gitt denne funksjonen. 1122 00:54:17,470 --> 00:54:22,250 Du måtte bruke PHP funksjoner for å gjøre spørringen på databasen og sjekk 1123 00:54:22,250 --> 00:54:24,230 for feil og deretter få de resultatene. 1124 00:54:24,230 --> 00:54:26,120 >> Og faktisk, det er ikke så vanskelig, fordi igjen, spiller det 1125 00:54:26,120 --> 00:54:27,080 veldig pent med PHP. 1126 00:54:27,080 --> 00:54:31,240 Og PHP gir deg en rekke funksjoner å samhandle med en SQL-database. 1127 00:54:31,240 --> 00:54:34,810 Så ofte, to av disse gå sammen. 1128 00:54:34,810 --> 00:54:37,090 Selvfølgelig kan du samhandle med SQL-database med alle 1129 00:54:37,090 --> 00:54:38,400 rekke andre språk. 1130 00:54:38,400 --> 00:54:41,420 Men PHP er en stor en for å velge. 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 raskt, fordi dette er en buzz ord vi skal 1133 00:54:46,030 --> 00:54:48,030 begynne å bruke ofte - 1134 00:54:48,030 --> 00:54:50,140 er en samling av tabeller. 1135 00:54:50,140 --> 00:54:53,960 Så vi kan tenke på det som en Excel-fil. 1136 00:54:53,960 --> 00:54:57,260 En Excel-filen har flere faner på undersiden av skjermen. 1137 00:54:57,260 --> 00:55:03,090 Hver fane vi nå kaller en tabell, der en tabell er en samling av rader. 1138 00:55:03,090 --> 00:55:04,060 >> Og hva er en rad? 1139 00:55:04,060 --> 00:55:06,890 Vel, er en rad at samme i Excel-filen. 1140 00:55:06,890 --> 00:55:10,380 Som bare har visse verdier for hvert gitt felt eller hver gitt kolonne. 1141 00:55:10,380 --> 00:55:12,010 Det er som en oppføring i tabellen. 1142 00:55:12,010 --> 00:55:16,570 Det er en student, som har en ID, et spesifikke ID, og ​​et bestemt navn og en 1143 00:55:16,570 --> 00:55:17,910 bestemt hus. 1144 00:55:17,910 --> 00:55:19,790 >> Så en database er en samling av tabeller. 1145 00:55:19,790 --> 00:55:22,685 Og tabeller selv er en antall rader eller poster. 1146 00:55:22,685 --> 00:55:25,470 1147 00:55:25,470 --> 00:55:28,280 Det er også, i hvert bord, visse felt. 1148 00:55:28,280 --> 00:55:32,130 Og som spesifiserer hva hver post er kommer til å ha, felt noen ganger kalt 1149 00:55:32,130 --> 00:55:33,890 kolonner, men generelt kalles felt. 1150 00:55:33,890 --> 00:55:38,270 >> I denne svært enkel tabell, har jeg tre felt, et ID-felt, et brukernavn 1151 00:55:38,270 --> 00:55:39,780 felt, og en hash-feltet. 1152 00:55:39,780 --> 00:55:41,300 Og jeg har tre rader. 1153 00:55:41,300 --> 00:55:42,100 Akkurat nå er de tom. 1154 00:55:42,100 --> 00:55:44,850 De sannsynligvis ikke ville være tom hvis dette var mitt egentlige database. 1155 00:55:44,850 --> 00:55:50,530 >> Så hvis du har brukt Excel, lignende idé til hva du gjør i Excel, skjønt, 1156 00:55:50,530 --> 00:55:54,300 åpenbart, nå vi skal være i stand til gjøre mye kraftigere ting på 1157 00:55:54,300 --> 00:55:56,430 informasjon som er lagret i vår database. 1158 00:55:56,430 --> 00:56:00,270 Du vil være å skape deg selv en database for Problem Set 7. 1159 00:56:00,270 --> 00:56:02,820 Men du skal lage flere tabellene i databasen. 1160 00:56:02,820 --> 00:56:06,950 >> Du skal lage en database eller et bord for brukerne. 1161 00:56:06,950 --> 00:56:12,830 Du vil bli også lage en tabell for sikkert lager transaksjoner, for å holde 1162 00:56:12,830 --> 00:56:15,580 styr på dem, fordi du må implementere en historie funksjonen. 1163 00:56:15,580 --> 00:56:18,370 Begge disse tabellene vil ha ulike felt. 1164 00:56:18,370 --> 00:56:22,190 For eksempel, i en brukerfeltet, kan sannsynligvis vil deres brukernavn og et 1165 00:56:22,190 --> 00:56:24,220 ID og en hash av deres passord. 1166 00:56:24,220 --> 00:56:28,450 >> I Stocks tabellen som holder styr på historie eller historien tabellen, du 1167 00:56:28,450 --> 00:56:31,620 sannsynligvis ikke trenger brukernavnet og hash og ID. 1168 00:56:31,620 --> 00:56:34,460 Du trenger sannsynligvis bare en av dem verdier som er unik, for å knytte 1169 00:56:34,460 --> 00:56:35,830 den med en gitt bruker. 1170 00:56:35,830 --> 00:56:38,100 >> Men så, vil du lagre andre ting som, hvilken tid 1171 00:56:38,100 --> 00:56:40,630 ble transaksjonen gjort. 1172 00:56:40,630 --> 00:56:42,380 Hva aksjen ble kjøpt eller solgt? 1173 00:56:42,380 --> 00:56:44,150 Hvor mange aksjer av lager ble kjøpt eller solgt? 1174 00:56:44,150 --> 00:56:48,360 Hva var den prisen som aksjen ble kjøpt eller solgt? 1175 00:56:48,360 --> 00:56:50,180 >> Så igjen, du kommer til å være i samspill med databaser som er 1176 00:56:50,180 --> 00:56:51,350 kommer til å ha flere bord. 1177 00:56:51,350 --> 00:56:54,340 Hvert bord kommer til å ha sitt eget sett av felter. 1178 00:56:54,340 --> 00:56:58,430 Imidlertid vil det sannsynligvis være et tilsvar felt i hver tabell, som 1179 00:56:58,430 --> 00:57:00,130 knytter dem til hverandre. 1180 00:57:00,130 --> 00:57:02,660 Vanligvis er dette et ID-felt. 1181 00:57:02,660 --> 00:57:07,000 >> Fordi hvis hver bruker har en unik ID og du forbinder med hver at ID 1182 00:57:07,000 --> 00:57:09,365 transaksjon som brukeren gjør eller alle som brukerens historie. 1183 00:57:09,365 --> 00:57:12,760 1184 00:57:12,760 --> 00:57:13,830 Og du har brukerens ID. 1185 00:57:13,830 --> 00:57:15,365 Du kan få informasjon fra begge bord. 1186 00:57:15,365 --> 00:57:19,770 Du kan få sitt brukernavn, og du kan få alle sine transaksjoner. 1187 00:57:19,770 --> 00:57:24,410 >> Eventuelle spørsmål om databaser, eller spesifikke spørsmål? 1188 00:57:24,410 --> 00:57:25,240 Egentlig, la oss holde det. 1189 00:57:25,240 --> 00:57:27,410 Vi skal være der i to sider. 1190 00:57:27,410 --> 00:57:31,210 >> Så er det fire operasjoner på databaser som du skal bruke i 1191 00:57:31,210 --> 00:57:34,790 Problemet ligger 7 og sannsynlig noen gang skal bruke. 1192 00:57:34,790 --> 00:57:38,040 Det første du bør gjøre er å sette inn en ny rekord i en tabell eller en 1193 00:57:38,040 --> 00:57:39,960 ny rad i en tabell. 1194 00:57:39,960 --> 00:57:46,070 Dette er den generelle funksjon, den generisk form, for at SQL-spørring. 1195 00:57:46,070 --> 00:57:52,240 >> INSERT INTO tabellen, uansett kolonner du ønsker å sette inn, og deretter 1196 00:57:52,240 --> 00:57:58,740 verdiene som du kommer til å ønske å satt inn i disse kolonnene eller feltene. 1197 00:57:58,740 --> 00:58:03,980 Hvis du har flere tabeller i en database eller flere databaser, dere 1198 00:58:03,980 --> 00:58:06,630 må kanskje også angi databasen og den tabellen du vil 1199 00:58:06,630 --> 00:58:07,980 å sette ting inn. 1200 00:58:07,980 --> 00:58:11,390 Men veldig enkelt, hvis du ønsker å sette inn til noe, sier du, her er det 1201 00:58:11,390 --> 00:58:12,890 felt jeg ønsker å sette inn. 1202 00:58:12,890 --> 00:58:14,740 Og her er verdiene. 1203 00:58:14,740 --> 00:58:18,840 >> I noen tabeller også, og denne brukerens Tabellen er et godt eksempel. 1204 00:58:18,840 --> 00:58:21,940 Sannsynligvis i denne brukerens bord og sannsynligvis i din brukers bord i P-Set 1205 00:58:21,940 --> 00:58:24,200 7, det er ikke bare et brukernavn verdi. 1206 00:58:24,200 --> 00:58:27,100 Det er ikke bare en pengeverdi, eller felt, heller. 1207 00:58:27,100 --> 00:58:29,140 Det er også et ID-feltet. 1208 00:58:29,140 --> 00:58:31,110 >> Jeg kommer ikke til å sette inn det ID-feltet. 1209 00:58:31,110 --> 00:58:34,020 Det kommer til å bli gitt til meg automatisk, når en 1210 00:58:34,020 --> 00:58:35,810 ny rekord er satt inn. 1211 00:58:35,810 --> 00:58:37,820 Så er det noen felt du kan stille til å være automatisk. 1212 00:58:37,820 --> 00:58:41,740 >> Kanskje du ønsker å gi hver bruker $ 10,000 kontanter utenfor balltre. 1213 00:58:41,740 --> 00:58:43,470 Så jeg trenger ikke å sette inn en rekke av kontanter her. 1214 00:58:43,470 --> 00:58:45,860 Alt jeg trenger å sette inn er brukernavnet. 1215 00:58:45,860 --> 00:58:49,230 Og så, vil kontant feltet være forhåndsutfylt, og ID-feltet vil 1216 00:58:49,230 --> 00:58:50,590 være forhåndsutfylt. 1217 00:58:50,590 --> 00:58:53,640 >> Så ofte er vi ikke setter inn noe inn alle felt, fordi 1218 00:58:53,640 --> 00:58:55,400 de andre feltene er forhåndsutfylt. 1219 00:58:55,400 --> 00:58:58,320 Fordi det er hvordan vi sette opp denne tabellen. 1220 00:58:58,320 --> 00:59:01,280 >> Den andre tingen du kommer til ønsker å gjøre er å slette en rekord. 1221 00:59:01,280 --> 00:59:02,900 Slette noe er veldig enkel. 1222 00:59:02,900 --> 00:59:05,660 Du gir tabellen der du vil å slette noe fra. 1223 00:59:05,660 --> 00:59:11,202 Og du sier, OK, jeg vil slette den rekord som har et brukernavn av Milo. 1224 00:59:11,202 --> 00:59:16,180 Eller jeg ønsker å slette alle poster som Har du ikke brukernavn i Milo eller som var en 1225 00:59:16,180 --> 00:59:18,700 transaksjon fra bruker-ID nummer to. 1226 00:59:18,700 --> 00:59:21,950 1227 00:59:21,950 --> 00:59:24,809 Eventuelle spørsmål om disse to typer søk? 1228 00:59:24,809 --> 00:59:26,059 >> PUBLIKUM: [uhørbart]. 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 kommer til å bruke rad og rekord hverandre og noen 1232 00:59:33,530 --> 00:59:35,400 med kolonne og felt. 1233 00:59:35,400 --> 00:59:37,650 Men én rad er en rekord. 1234 00:59:37,650 --> 00:59:40,080 En kolonne er ett felt, kommer tilbake til denne tabell. 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 neste tingen du antakelig kommer til å gjøre er å få noen 1238 00:59:47,310 --> 00:59:48,400 informasjon fra bordet. 1239 00:59:48,400 --> 00:59:50,090 Det er en utvalgsspørring. 1240 00:59:50,090 --> 00:59:52,330 Og igjen, hva tabellen jeg velge fra? 1241 00:59:52,330 --> 00:59:58,370 Og hva kolonnen ønsker jeg å velge, eller hvilken verdi ønsker jeg å velge og 1242 00:59:58,370 --> 00:59:59,530 fra hvilken rad? 1243 00:59:59,530 --> 01:00:01,120 >> Så Select er en lite konkret. 1244 01:00:01,120 --> 01:00:03,620 Jeg sier, OK, jeg vil ha denne tabellen. 1245 01:00:03,620 --> 01:00:09,350 Og så vil jeg brukernavn kolonnen, og Jeg vil ha det fra raden med ID to. 1246 01:00:09,350 --> 01:00:11,030 Det er en måte å gjøre en Velg. 1247 01:00:11,030 --> 01:00:14,180 >> Eller jeg kan si, gi meg hver enkelt brukernavn. 1248 01:00:14,180 --> 01:00:18,200 Eller jeg kan si, gi meg en hel rad fra denne tabellen, der 1249 01:00:18,200 --> 01:00:19,460 brukernavnet er en. 1250 01:00:19,460 --> 01:00:22,300 Så det finnes et par forskjellige måter å gjøre Velg spørringer, avhengig av hvordan 1251 01:00:22,300 --> 01:00:24,130 mye informasjon du vil ha, 1252 01:00:24,130 --> 01:00:29,410 >> Du kan alltid bare velge alt fra det spesifikke bord og deretter sløyfe 1253 01:00:29,410 --> 01:00:31,320 gjennom den, plukke ut de tingene du ønsker. 1254 01:00:31,320 --> 01:00:33,940 Men husk, hvis du velger en masse ting fra en tabell, og du 1255 01:00:33,940 --> 01:00:37,400 har et virkelig stort bord, vil det ta litt tid, så best å bare velge 1256 01:00:37,400 --> 01:00:40,000 ting som du kommer å ende opp med å bruke. 1257 01:00:40,000 --> 01:00:43,580 >> Også med Select og med alle av disse andre SQL-kommandoer i tillegg, er jeg 1258 01:00:43,580 --> 01:00:45,760 noe som gir deg bare-bones versjon. 1259 01:00:45,760 --> 01:00:51,600 Men si, jeg velger brukere, og jeg ønsker å skrive dem ut alfabetisk, 1260 01:00:51,600 --> 01:00:56,710 Jeg kunne velge alle brukere, og deretter sortere dem alfabetisk i koden min. 1261 01:00:56,710 --> 01:01:01,990 >> Eller er det en måte å skrive på velg spørring, velger at ting i en 1262 01:01:01,990 --> 01:01:06,580 alfabetisk mote, basert off av en bestemt kolonne, enten stigende eller 1263 01:01:06,580 --> 01:01:07,490 synkende. 1264 01:01:07,490 --> 01:01:11,660 Så husk at mye av det du ønsker å gjøre kan trolig gjøres i 1265 01:01:11,660 --> 01:01:15,070 spørringen gjennom en ekstra attributt. 1266 01:01:15,070 --> 01:01:19,120 Så se opp disse søkene på nettet eller de andre tingene du kan gjøre med disse 1267 01:01:19,120 --> 01:01:21,410 spørsmål for å utvide dem. 1268 01:01:21,410 --> 01:01:25,020 >> Til slutt, er det siste du ønsker å gjøre er ikke sett noe eller slette 1269 01:01:25,020 --> 01:01:26,700 noe, men heller oppdatere noe. 1270 01:01:26,700 --> 01:01:30,380 Og det er gjort med oppdateringen spørring, og igjen, hva tabellen. 1271 01:01:30,380 --> 01:01:32,530 Og hva endringen ønsker jeg å gjøre? 1272 01:01:32,530 --> 01:01:35,915 Og til hvilken rad eller posten gjøre Jeg ønsker å gjøre denne endringen? 1273 01:01:35,915 --> 01:01:38,720 1274 01:01:38,720 --> 01:01:40,300 Eventuelle spørsmå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 ca 15 minutter. 1278 01:01:49,080 --> 01:01:51,460 Og dette er det siste lysbildet jeg har. 1279 01:01:51,460 --> 01:01:55,380 Og forhåpentligvis er dette siste lysbildet en god naturlig overgang inn i oppgavesettet, 1280 01:01:55,380 --> 01:01:58,820 fordi forståelse der vi ønsker å sette inn poster, slette dem, velger du 1281 01:01:58,820 --> 01:02:03,420 dem, og oppdatere dem vil hjelpe oss forstå større logikk og strømme 1282 01:02:03,420 --> 01:02:05,570 Problem Set 7. 1283 01:02:05,570 --> 01:02:08,330 >> Så jeg vet alle svarene på disse spørsmålene. 1284 01:02:08,330 --> 01:02:10,570 Jeg kommer ikke til å fortelle deg alle svarene. 1285 01:02:10,570 --> 01:02:15,530 Men hvis noen andre ønsker å presentere et spørsmål til gruppen eller en 1286 01:02:15,530 --> 01:02:18,700 svarer til en av disse spørsmål, kan vi bruke den som hopping av punkt til 1287 01:02:18,700 --> 01:02:20,311 snakke om problemet sett. 1288 01:02:20,311 --> 01:02:24,159 1289 01:02:24,159 --> 01:02:27,260 Eller hvis noen har en mer generell spørsmål av problemet sett, føler 1290 01:02:27,260 --> 01:02:28,210 fritt til å be om at også. 1291 01:02:28,210 --> 01:02:29,460 Og vi kan begynne der. 1292 01:02:29,460 --> 01:02:32,840 1293 01:02:32,840 --> 01:02:35,973 Husk at du blir taus sårer alle. 1294 01:02:35,973 --> 01:02:36,376 Yeah. 1295 01:02:36,376 --> 01:02:39,540 >> PUBLIKUM: Så er den eneste måten å passere variabler til og fra forskjellige web 1296 01:02:39,540 --> 01:02:44,532 sider, eller den mest praktiske måte, ved hjelp av POST eller GET? 1297 01:02:44,532 --> 01:02:52,380 >> JASON Hirschhorn: Så ja, er at mest praktiske måten å si - når 1298 01:02:52,380 --> 01:02:53,970 noen fyller ut et skjema - 1299 01:02:53,970 --> 01:02:57,540 få informasjon på en annen nettside side, ved hjelp av GET-eller POST. 1300 01:02:57,540 --> 01:03:00,400 1301 01:03:00,400 --> 01:03:04,320 På grunn av rammeverket vi bruker i dette problemet sett, vil du legge merke til 1302 01:03:04,320 --> 01:03:08,630 det, mange ganger, vi gjengi en annen side. 1303 01:03:08,630 --> 01:03:12,420 vi Eller vi gjengi en annen fil, ikke nødvendigvis en annen 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 gjør en HTML-side, ved hjelp 1306 01:03:16,400 --> 01:03:18,220 informasjon fra den variabelen. 1307 01:03:18,220 --> 01:03:20,790 Det er ikke teknisk passerer informasjon mellom 1308 01:03:20,790 --> 01:03:21,910 forskjellige nettsider. 1309 01:03:21,910 --> 01:03:24,600 Som passerer informasjon mellom forskjellige filer. 1310 01:03:24,600 --> 01:03:26,710 >> Og så kan vi bruke noen variabel til å gjøre det. 1311 01:03:26,710 --> 01:03:33,230 Men ja, hvis vi ønsket å passere informasjon fra en bestemt side til 1312 01:03:33,230 --> 01:03:36,850 en annen side, GET og POST ville være måten å gjøre det. 1313 01:03:36,850 --> 01:03:43,060 1314 01:03:43,060 --> 01:03:45,765 Eventuelle andre spørsmål om oppgavesettet? 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 La oss gå gjennom, da, en bestemt en del av problemet definert. 1318 01:03:53,660 --> 01:04:00,260 Du kommer til å trenge til, på ett punkt, vise noen portefølje på 1319 01:04:00,260 --> 01:04:01,710 skjermen. 1320 01:04:01,710 --> 01:04:06,454 Hva gjør jeg mener når jeg sier portefølje, i sammenheng med dette problemet satt? 1321 01:04:06,454 --> 01:04:11,350 >> PUBLIKUM: Det er som de aksjer som de har how, mange aksjer de eier, 1322 01:04:11,350 --> 01:04:13,760 prisen, og hvor mye penger de har igjen. 1323 01:04:13,760 --> 01:04:15,235 >> JASON Hirschhorn: Det høres flott ut. 1324 01:04:15,235 --> 01:04:19,640 Så jeg ønsker å vise alle aksjene de eier for hver aksje selskapets 1325 01:04:19,640 --> 01:04:23,770 aksjer og sannsynligvis hvor mye det er verdt, og deretter en egen variabel, 1326 01:04:23,770 --> 01:04:25,960 hvor mye penger de eier. 1327 01:04:25,960 --> 01:04:27,150 Så sier jeg ønsker å beskrive det. 1328 01:04:27,150 --> 01:04:29,660 La oss begynne å snakke om hvordan jeg kunne gå om du gjør det, hva tabeller jeg er 1329 01:04:29,660 --> 01:04:31,210 kommer til å trenge å måtte være i stand til å gjøre det. 1330 01:04:31,210 --> 01:04:34,070 1331 01:04:34,070 --> 01:04:34,460 Yeah - 1332 01:04:34,460 --> 01:04:37,970 >> PUBLIKUM: Vel brukere, og da antar jeg du kan lage en tabell kalt 1333 01:04:37,970 --> 01:04:41,920 Aksjer eller noe sånt, som vil være hvor mange de har kjøpt. 1334 01:04:41,920 --> 01:04:42,660 >> JASON Hirschhorn: OK. 1335 01:04:42,660 --> 01:04:46,530 Så jeg kommer til å trenge en tabell kalt Brukere, som holder orden på 1336 01:04:46,530 --> 01:04:50,640 brukernavn, formodentlig, sannsynligvis noen ID, sannsynligvis en persons passord. 1337 01:04:50,640 --> 01:04:52,850 Hva er noe annet som du sa det er forbundet? 1338 01:04:52,850 --> 01:04:55,510 Noen foruten Michael, hva er noe annet som er forbundet med 1339 01:04:55,510 --> 01:04:58,270 hver bruker, unik 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 hva er en annen ting som vi er sannsynligvis kommer til å ønske å 1343 01:05:03,540 --> 01:05:05,685 vise på denne siden? 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 - hva er en annen ting relatert til dette 1346 01:05:10,550 --> 01:05:11,420 spesielt problem satt? 1347 01:05:11,420 --> 01:05:14,110 >> PUBLIKUM: Hva aksjer de eier - 1348 01:05:14,110 --> 01:05:16,650 >> JASON Hirschhorn: Det kommer til å være mye av hva aksjer de eier. 1349 01:05:16,650 --> 01:05:19,670 Hva er en spesifikk verdi skjønt, at de kommer til å ha 1350 01:05:19,670 --> 01:05:22,640 assosiert med dem? 1351 01:05:22,640 --> 01:05:25,709 Hvordan de kommer til å kjøpe og selge sine aksjer? 1352 01:05:25,709 --> 01:05:26,595 >> PUBLIKUM: Cash. 1353 01:05:26,595 --> 01:05:28,100 >> JASON Hirschhorn: De er kommer til å ha kontanter. 1354 01:05:28,100 --> 01:05:31,020 Slik at hver bruker skal ha en verdi for kontanter. 1355 01:05:31,020 --> 01:05:32,360 Og det kommer til å bli unik for hver bruker. 1356 01:05:32,360 --> 01:05:35,040 Så i brukerens tabellen, gjør det fornuftig å sette i kontanter. 1357 01:05:35,040 --> 01:05:39,100 >> Du kan selvfølgelig lage en annen tabell som har bruker-IDer og deres 1358 01:05:39,100 --> 01:05:40,200 Verdien av kontanter. 1359 01:05:40,200 --> 01:05:41,070 Men det gir ikke mening. 1360 01:05:41,070 --> 01:05:43,410 Det er fornuftig å bare sette alt dette i én tabell. 1361 01:05:43,410 --> 01:05:46,860 >> Så vi kommer til å ha en tabell med denne informasjonen. 1362 01:05:46,860 --> 01:05:48,360 Og så, hva er den andre tabellen vi kommer til å ha? 1363 01:05:48,360 --> 01:05:49,430 Du sa en Stocks tabellen. 1364 01:05:49,430 --> 01:05:50,680 Hva skal vi sette i Aksjer-bordet? 1365 01:05:50,680 --> 01:05:55,860 1366 01:05:55,860 --> 01:05:57,530 Hvem som helst, ideer - 1367 01:05:57,530 --> 01:05:58,796 >> PUBLIKUM: Selskapet. 1368 01:05:58,796 --> 01:06:00,020 >> JASON Hirschhorn: Vi skal å sette i navnet på 1369 01:06:00,020 --> 01:06:03,620 selskap, så AAPL for Apple. 1370 01:06:03,620 --> 01:06:04,050 Yeah. 1371 01:06:04,050 --> 01:06:05,390 >> PUBLIKUM: Hvor mange aksjer og hvor mye de er verdt. 1372 01:06:05,390 --> 01:06:08,590 >> JASON Hirschhorn: Hvor mange aksjer, hvor mye de er verdt - 1373 01:06:08,590 --> 01:06:10,630 hva er noe annet vi trenger i det bordet? 1374 01:06:10,630 --> 01:06:12,770 >> PUBLIKUM: En bruker-ID for å indeksere den. 1375 01:06:12,770 --> 01:06:14,000 >> JASON Hirschhorn: En bruker-ID. 1376 01:06:14,000 --> 01:06:16,070 Så i denne tabellen, vil vi sannsynligvis har - 1377 01:06:16,070 --> 01:06:18,610 la oss si, hvis det er noen som eier tre aksjer, tre rader, hver med 1378 01:06:18,610 --> 01:06:23,730 som bruker-ID eller som individuelle bruker ID, men et annet firmanavn, en 1379 01:06:23,730 --> 01:06:28,570 forskjellig antall aksjer formodentlig, og en annen pris verdi for hver 1380 01:06:28,570 --> 01:06:29,820 av disse aksjene. 1381 01:06:29,820 --> 01:06:34,690 1382 01:06:34,690 --> 01:06:37,130 Igjen, hva jeg sier nå er ikke nødvendigvis gjennomføringen, 1383 01:06:37,130 --> 01:06:39,150 fordi du innser at det er litt mer effektive måter å gjennomføre det. 1384 01:06:39,150 --> 01:06:41,020 Men dette er et bra sted å starte. 1385 01:06:41,020 --> 01:06:41,430 >> OK. 1386 01:06:41,430 --> 01:06:42,830 Så de er de to tabellene vi har. 1387 01:06:42,830 --> 01:06:44,470 Nå ønsker vi å vise denne siden. 1388 01:06:44,470 --> 01:06:48,510 Hva er den første type spørring vi trenger å gjøre. 1389 01:06:48,510 --> 01:06:52,190 På hver side, forutsatt at en bruker er logget inn, har vi deres bruker-ID. 1390 01:06:52,190 --> 01:06:55,480 Så hva er den første typen spørring vi trenger å gjøre? 1391 01:06:55,480 --> 01:06:55,910 Yeah. 1392 01:06:55,910 --> 01:06:56,936 >> PUBLIKUM: Deres bruker-ID. 1393 01:06:56,936 --> 01:07:00,090 >> JASON Hirschhorn: Vi har sin bruker-ID, når vi begynner å kode på 1394 01:07:00,090 --> 01:07:01,340 begynnelsen av vår side. 1395 01:07:01,340 --> 01:07:03,880 1396 01:07:03,880 --> 01:07:06,470 Så hva er den første type spørring vi trenger å gjøre, gitt en brukers ID? 1397 01:07:06,470 --> 01:07:09,580 1398 01:07:09,580 --> 01:07:10,530 Vi gikk over de fire typene. 1399 01:07:10,530 --> 01:07:11,860 Det er bare fire mulige svar. 1400 01:07:11,860 --> 01:07:13,230 >> PUBLIKUM: Det er å velge en rekord. 1401 01:07:13,230 --> 01:07:14,710 >> JASON Hirschhorn: A Select - 1402 01:07:14,710 --> 01:07:19,110 vi ønsker å velge fra brukerens bordet for å få, la oss si, 1403 01:07:19,110 --> 01:07:20,040 deres mengde kontanter. 1404 01:07:20,040 --> 01:07:22,450 Og vi kan skrive ut hvor mye kontanter på toppen av skjermen. 1405 01:07:22,450 --> 01:07:22,720 OK. 1406 01:07:22,720 --> 01:07:24,210 Hva er neste type spørring vi ønsker å gjøre? 1407 01:07:24,210 --> 01:07:34,650 1408 01:07:34,650 --> 01:07:36,160 >> Vi har noen andre ting vi trenger å vise. 1409 01:07:36,160 --> 01:07:37,480 De lagres i en annen tabell. 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 velger for dem. 1412 01:07:40,106 --> 01:07:42,490 >> JASON Hirschhorn: En Select - igjen, det er bare fire alternativer. 1413 01:07:42,490 --> 01:07:44,180 Velg sannsynligvis lyder som den rette. 1414 01:07:44,180 --> 01:07:47,510 Så vi trenger å gjøre en annen utvalgsspørring, igjen ved hjelp av denne bruker-IDen. 1415 01:07:47,510 --> 01:07:50,370 Og nå, ønsker vi å returnere ikke bare én rad, bu alle rader som oppfyller våre 1416 01:07:50,370 --> 01:07:53,200 kriterier, der bruker-ID er lik en. 1417 01:07:53,200 --> 01:07:56,790 >> Og så kan vi gå og la en løkke bare skrive ut alle dem ut på skjermen, 1418 01:07:56,790 --> 01:07:59,250 kanskje skrive ut selskapet fra hver av de på skjermen. 1419 01:07:59,250 --> 01:08:02,430 Flott, det høres ut som det er viser en portefølje, ikke mye mer 1420 01:08:02,430 --> 01:08:03,810 komplisert enn det. 1421 01:08:03,810 --> 01:08:07,460 >> OK, så bestemmer brukeren om at de har rikelig med penger til overs. 1422 01:08:07,460 --> 01:08:09,900 Og de ønsker å kjøpe noen flere aksjer i et lager. 1423 01:08:09,900 --> 01:08:12,580 La oss si, de som allerede eier dette selskapets aksjer 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 innspill selskapets navn. 1426 01:08:16,830 --> 01:08:20,380 Hva er spørringen, etter innspill Selskapets navn, som du trenger for å 1427 01:08:20,380 --> 01:08:22,819 utføre neste? 1428 01:08:22,819 --> 01:08:23,180 Yeah. 1429 01:08:23,180 --> 01:08:23,960 >> PUBLIKUM: Update. 1430 01:08:23,960 --> 01:08:26,670 >> JASON Hirschhorn: Update - og hva tabellen vil du oppdatere? 1431 01:08:26,670 --> 01:08:29,018 >> PUBLIKUM: Deres tabell, basert på deres ID-nummer? 1432 01:08:29,018 --> 01:08:31,880 >> JASON Hirschhorn: Så oppdaterer ikke brukerens tabellen - 1433 01:08:31,880 --> 01:08:36,029 1434 01:08:36,029 --> 01:08:40,899 så oppdatere lagret tabell, hvor bruker-ID ikke bare kamper, men 1435 01:08:40,899 --> 01:08:43,160 lager navn samsvarer også. 1436 01:08:43,160 --> 01:08:45,660 Du får noen verdi. 1437 01:08:45,660 --> 01:08:48,270 Og så, vil du ønsker å ta denne verdien og legger imidlertid mange aksjer de 1438 01:08:48,270 --> 01:08:49,890 ønsker å kjøpe den. 1439 01:08:49,890 --> 01:08:53,420 >> Så du ikke ønsker å blindt overskrive denne verdien. 1440 01:08:53,420 --> 01:08:56,330 Men du kan faktisk ta det første verdsetter og bare oppdatere den. 1441 01:08:56,330 --> 01:09:00,790 Du kan gjøre som et pluss er lik, snarere enn bare et likhets. 1442 01:09:00,790 --> 01:09:03,689 >> Hva er noe selv - hvis vi er tenker om dette, og vi ønsker å være 1443 01:09:03,689 --> 01:09:08,090 så robuste som mulig - vi bør gjøre før vi kjører at oppdateringsspørring? 1444 01:09:08,090 --> 01:09:09,859 De ønsker å kjøpe fem år for Apple. 1445 01:09:09,859 --> 01:09:11,030 Hver aksje i Apple er 200 dollar. 1446 01:09:11,030 --> 01:09:12,762 >> PUBLIKUM: Vi bør sjekke penger først. 1447 01:09:12,762 --> 01:09:15,130 >> JASON Hirschhorn: Vi bør sjekk penger først. 1448 01:09:15,130 --> 01:09:16,680 Vi bør sørge for at de har nok penger. 1449 01:09:16,680 --> 01:09:20,766 Hva slags spørring kan vi kjøre til sørge for at de har nok penger? 1450 01:09:20,766 --> 01:09:22,143 >> PUBLIKUM: Another Velg. 1451 01:09:22,143 --> 01:09:23,680 >> JASON Hirschhorn: A Select - 1452 01:09:23,680 --> 01:09:26,580 vi velger basert på deres bruker-ID, å få sin verdi av kontanter. 1453 01:09:26,580 --> 01:09:27,620 Gjør noen raske matematikk. 1454 01:09:27,620 --> 01:09:30,279 Og hvis det går mønstre, de har nok kontanter. 1455 01:09:30,279 --> 01:09:31,580 Da kan vi kjøre vårt oppdatering. 1456 01:09:31,580 --> 01:09:33,850 Eller kanskje, hvis ikke, går vi da. 1457 01:09:33,850 --> 01:09:35,370 Vi gir dem en advarsel. 1458 01:09:35,370 --> 01:09:35,710 >> OK. 1459 01:09:35,710 --> 01:09:36,560 Sier de ikke har et selskap. 1460 01:09:36,560 --> 01:09:37,310 De kjøper et nytt selskap. 1461 01:09:37,310 --> 01:09:39,910 De kjøper Microsoft. 1462 01:09:39,910 --> 01:09:41,910 Hva slags spørsmål er det vi ønsker å gjøre, hvis de ønsker å kjøpe Microsoft? 1463 01:09:41,910 --> 01:09:43,350 Og de ikke eier noe Microsoft. 1464 01:09:43,350 --> 01:09:47,520 Ikke Manu, noen andre, noen foruten Marcus? 1465 01:09:47,520 --> 01:09:48,229 Carlos - 1466 01:09:48,229 --> 01:09:50,870 >> PUBLIKUM: En Select, for å være sikker de har nok penger. 1467 01:09:50,870 --> 01:09:51,770 >> JASON Hirschhorn: Høres bra ut. 1468 01:09:51,770 --> 01:09:54,815 >> PUBLIKUM: Og da du setter inn på [uhørbart]. 1469 01:09:54,815 --> 01:09:56,500 >> JASON Hirschhorn: Akkurat, er vi kommer til å ønske å sette inn 1470 01:09:56,500 --> 01:09:57,800 inn i lagret tabell. 1471 01:09:57,800 --> 01:09:59,370 Og vi kommer til å ønske å sette inn. 1472 01:09:59,370 --> 01:10:02,510 Vi kan sette inn sin bruker-ID, navn av selskapet, og hvor mange aksjer 1473 01:10:02,510 --> 01:10:03,940 de ønsker å kjøpe. 1474 01:10:03,940 --> 01:10:08,040 >> Hva er noen andre operasjoner som er sider eller funksjonaliteten du er 1475 01:10:08,040 --> 01:10:10,420 nødt til å implementere i P-Set 7, at vi bør gå over? 1476 01:10:10,420 --> 01:10:12,160 >> PUBLIKUM: Egentlig, jeg slags har et spørsmål om dette. 1477 01:10:12,160 --> 01:10:18,000 Før du vise porteføljen, bør du sjekker Yahoo hjemmeside for å 1478 01:10:18,000 --> 01:10:19,920 sørge for at aksjekursene har ikke forandret seg? 1479 01:10:19,920 --> 01:10:21,660 >> JASON Hirschhorn: Det er lyder som en god idé. 1480 01:10:21,660 --> 01:10:27,260 Så hva Marcus sier er, OK, lager Prisene er i stadig endring. 1481 01:10:27,260 --> 01:10:32,840 I de aksjer som de eier bordet, vår tabell som kalles Stocks, kan vi lagre 1482 01:10:32,840 --> 01:10:35,360 prisen på aksjen de kjøpte den på. 1483 01:10:35,360 --> 01:10:37,990 >> Men det ser ikke ut som robust, fordi prisen på aksjen er 1484 01:10:37,990 --> 01:10:39,490 stadig kommer til å endre. 1485 01:10:39,490 --> 01:10:41,990 Så faktisk, har du sannsynligvis ikke trenger å redde prisen på aksjen. 1486 01:10:41,990 --> 01:10:45,230 Men hver gang du viser deres portefølje, du oppdatere eller oppdatere 1487 01:10:45,230 --> 01:10:46,280 prisen på aksjen. 1488 01:10:46,280 --> 01:10:48,720 >> Og hvis du har - og du har allerede. 1489 01:10:48,720 --> 01:10:51,330 Jeg vet at du har alle sett i oppgavesett tilbake allerede. 1490 01:10:51,330 --> 01:10:55,410 Du har innsett at vi har skrevet noen kode for deg som vil tillate deg 1491 01:10:55,410 --> 01:10:57,650 å få prisen på en aksje, gitt et selskaps navn. 1492 01:10:57,650 --> 01:10:59,620 >> Så ja, sannsynligvis lyder som litt mer robust. 1493 01:10:59,620 --> 01:11:04,260 Men at tabellen ikke nødvendigvis trenger å redde prisen på aksjen. 1494 01:11:04,260 --> 01:11:04,720 OK. 1495 01:11:04,720 --> 01:11:07,590 Hva er noen andre funksjonene du trenger for å implementere denne uken at 1496 01:11:07,590 --> 01:11:10,340 vi kan snakke om? 1497 01:11:10,340 --> 01:11:11,590 Jeg ønsker å snakke om dem. 1498 01:11:11,590 --> 01:11:14,342 1499 01:11:14,342 --> 01:11:16,516 >> Hva har du lyst til å snakke 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 bla ned til bunnen av spec og spør meg det første ordet 1502 01:11:20,600 --> 01:11:21,850 du ser som ikke gir mening. 1503 01:11:21,850 --> 01:11:55,130 1504 01:11:55,130 --> 01:11:56,960 En annen funksjonalitet - 1505 01:11:56,960 --> 01:11:57,840 la oss snakke om en. 1506 01:11:57,840 --> 01:12:00,775 Vi begynner der. 1507 01:12:00,775 --> 01:12:02,065 >> PUBLIKUM: Opptak historiene. 1508 01:12:02,065 --> 01:12:03,960 >> JASON Hirschhorn: Recording historie, stor en. 1509 01:12:03,960 --> 01:12:06,920 Så du er nødt til å holde oversikt av en historie av transaksjoner. 1510 01:12:06,920 --> 01:12:10,840 1511 01:12:10,840 --> 01:12:14,270 Så du ønsker å holde styr på hver gang de kjøpe eller selge en aksje. 1512 01:12:14,270 --> 01:12:15,160 >> Jeg kjøpte min lager. 1513 01:12:15,160 --> 01:12:18,580 Vi sa bare, er det sannsynligvis fornuftig å inkludere en Select, for å få deres 1514 01:12:18,580 --> 01:12:20,220 Mengden av kontanter og sjekk tilbake. 1515 01:12:20,220 --> 01:12:25,270 Det er trolig smart deretter å inkludere en sette inn eller en oppdatering, avhengig av 1516 01:12:25,270 --> 01:12:27,720 hvorvidt de eier det lager. 1517 01:12:27,720 --> 01:12:32,740 Hvis vi ønsker også å holde styr på en historie, hvordan kan vi gjøre det? 1518 01:12:32,740 --> 01:12:37,530 1519 01:12:37,530 --> 01:12:38,720 Betyr det gå i Stocks tabellen? 1520 01:12:38,720 --> 01:12:39,822 >> PUBLIKUM: Nei. 1521 01:12:39,822 --> 01:12:42,130 >> JASON Hirschhorn: Nei det sannsynligvis går i en annen tabell. 1522 01:12:42,130 --> 01:12:44,040 Fordi si du kjøper 10 aksjer i Apple. 1523 01:12:44,040 --> 01:12:45,370 Så du kjøper ytterligere 10 aksjer. 1524 01:12:45,370 --> 01:12:46,610 Du vil taue egne poster. 1525 01:12:46,610 --> 01:12:47,610 De er to separate transaksjoner. 1526 01:12:47,610 --> 01:12:50,510 >> Så vi har en annen tabell, en historie bord. 1527 01:12:50,510 --> 01:12:51,880 Så igjen, vi kjøper. 1528 01:12:51,880 --> 01:12:54,080 Vi utfører en Select, deretter et innlegg eller en oppdatering. 1529 01:12:54,080 --> 01:12:56,410 Hva gjør vi nå? 1530 01:12:56,410 --> 01:13:00,410 Hva er det neste spørring vi utfører når vi kjøper noe? 1531 01:13:00,410 --> 01:13:01,430 Vi ønsker å holde oversikt over historien. 1532 01:13:01,430 --> 01:13:01,570 Yeah. 1533 01:13:01,570 --> 01:13:05,195 >> PUBLIKUM: Du ønsker å holde oversikt mislykkede transaksjoner også. 1534 01:13:05,195 --> 01:13:07,700 >> JASON Hirschhorn: Vel, før vi si hvilken type transaksjon, 1535 01:13:07,700 --> 01:13:11,080 hva gjør vi ønsker å - 1536 01:13:11,080 --> 01:13:13,910 Hvilken type spørring, Carlos, ville tillate oss å holde styr 1537 01:13:13,910 --> 01:13:16,216 av ting generelt? 1538 01:13:16,216 --> 01:13:17,860 Du har fire gjetninger. 1539 01:13:17,860 --> 01:13:18,660 Hvilken tror du? 1540 01:13:18,660 --> 01:13:20,835 >> PUBLIKUM: Oppdatering. 1541 01:13:20,835 --> 01:13:22,400 >> JASON Hirschhorn: Ikke oppdater. 1542 01:13:22,400 --> 01:13:25,250 Hva er din andre gjette? 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 å holde sporet av noe, har du sannsynligvis vil 1545 01:13:30,020 --> 01:13:33,310 å skrive det ned et sted eller lagre den til senere. 1546 01:13:33,310 --> 01:13:37,054 Så hvis ikke oppdatere, da - 1547 01:13:37,054 --> 01:13:38,310 >> PUBLIKUM: Sett det. 1548 01:13:38,310 --> 01:13:39,553 >> JASON Hirschhorn: Sett inn, der vi går. 1549 01:13:39,553 --> 01:13:44,230 Ja, så du velge hvor mye av penger de har, høres flott ut. 1550 01:13:44,230 --> 01:13:45,320 De har ikke nok kontanter. 1551 01:13:45,320 --> 01:13:46,720 At transaksjonen er ikke til å fungere. 1552 01:13:46,720 --> 01:13:49,440 Nei, du trenger ikke å holde styr på en transaksjon hvis det ikke fungerer. 1553 01:13:49,440 --> 01:13:52,280 Eller du kan, hvis du vil gi dem en vanskelig tid. 1554 01:13:52,280 --> 01:13:53,430 Men du trenger ikke å. 1555 01:13:53,430 --> 01:13:55,820 >> Så, du setter inn eller oppdatering i deres Aksjer tabellen. 1556 01:13:55,820 --> 01:13:57,260 Og nå har du den andre tabellen. 1557 01:13:57,260 --> 01:13:59,790 Du har din historie bord eller hva du vil kalle det. 1558 01:13:59,790 --> 01:14:02,920 Og i det bordet, du kommer å sette inn en ny rad. 1559 01:14:02,920 --> 01:14:04,205 >> Det kommer sannsynligvis til å har brukerens ID. 1560 01:14:04,205 --> 01:14:05,840 Det er trolig kommer til å ha navnet på lager. 1561 01:14:05,840 --> 01:14:08,760 Det er trolig kommer til å ha en gang at de gjorde det. 1562 01:14:08,760 --> 01:14:11,500 Og i dette tilfellet, vil du sannsynligvis ønsker å sette prisen. 1563 01:14:11,500 --> 01:14:13,960 Fordi for en historie, gjør du ikke bryr seg hva dagens pris er. 1564 01:14:13,960 --> 01:14:17,140 Du bryr deg hva prisen er når de kjøpte eller solgte noe. 1565 01:14:17,140 --> 01:14:21,530 >> Så det høres ut som, for å gjennomføre kjøp fullt innebærer en rekke forskjellige 1566 01:14:21,530 --> 01:14:25,530 SQL-spørringer, men ærlig talt, ikke at mye kode generelle. 1567 01:14:25,530 --> 01:14:26,330 OK. 1568 01:14:26,330 --> 01:14:28,840 Og som tar vare på historien. 1569 01:14:28,840 --> 01:14:30,450 >> La oss si at vi ønsker å vise vår historie. 1570 01:14:30,450 --> 01:14:31,670 Vi snakket om å vise vår portefølje. 1571 01:14:31,670 --> 01:14:33,902 Hvordan ville vi vise vår historie? 1572 01:14:33,902 --> 01:14:36,312 >> PUBLIKUM: Antagelig kronologisk. 1573 01:14:36,312 --> 01:14:37,920 >> JASON Hirschhorn: Antagelig kronologisk - 1574 01:14:37,920 --> 01:14:39,400 hva spørring tror du vi vil bruke? 1575 01:14:39,400 --> 01:14:40,675 >> PUBLIKUM: En utvalgt. 1576 01:14:40,675 --> 01:14:41,840 >> JASON Hirschhorn: En utvalgt - 1577 01:14:41,840 --> 01:14:46,590 velger kanskje alle rader fra tabellen som samsvarer med bruker-ID og deretter 1578 01:14:46,590 --> 01:14:49,510 vise dem kronologisk, høres bra ut. 1579 01:14:49,510 --> 01:14:52,590 Trenger vi å skrive kode for å sortere gjennom den listen? 1580 01:14:52,590 --> 01:14:55,084 >> PUBLIKUM: Nei, fordi du fortalte oss at det er en stigende 1581 01:14:55,084 --> 01:14:57,320 og synkende ting. 1582 01:14:57,320 --> 01:14:58,230 >> JASON Hirschhorn: Thing? 1583 01:14:58,230 --> 01:14:59,190 >> PUBLIKUM: Yeah. 1584 01:14:59,190 --> 01:15:01,270 >> JASON Hirschhorn: Yeah. 1585 01:15:01,270 --> 01:15:09,300 OK, ikke slå i kode til meg, at sorterer manuelt gjennom dine spørsmål, 1586 01:15:09,300 --> 01:15:09,820 å sortere dem. 1587 01:15:09,820 --> 01:15:12,480 At koden er allerede gitt. 1588 01:15:12,480 --> 01:15:15,310 Du kan skrive en utvalgsspørring som sorterer ting. 1589 01:15:15,310 --> 01:15:18,900 Sortere dem på forhånd og deretter skrive dem ut. 1590 01:15:18,900 --> 01:15:22,070 Det gjør så mye mer fornuftig å gjøre det på den måten, enn den andre veien. 1591 01:15:22,070 --> 01:15:22,375 Ja. 1592 01:15:22,375 --> 01:15:23,925 >> PUBLIKUM: Trenger vi å sortere dem på forhånd? 1593 01:15:23,925 --> 01:15:25,976 Betyr det at du liksom dem i databasen? 1594 01:15:25,976 --> 01:15:30,510 >> JASON Hirschhorn: Vinduet Velg spørring returnerer dem til deg sortert. 1595 01:15:30,510 --> 01:15:34,990 Så gjør det, heller enn å bare ha dem tilbake til deg i en tilfeldig rekkefølge og 1596 01:15:34,990 --> 01:15:36,150 deretter sortere dem selv. 1597 01:15:36,150 --> 01:15:36,405 Yeah. 1598 01:15:36,405 --> 01:15:39,925 >> PUBLIKUM: Er det en måte å holde det sorteres i databasen i seg selv, slik at 1599 01:15:39,925 --> 01:15:41,355 du trenger ikke å sortere det hver gang du - 1600 01:15:41,355 --> 01:15:43,065 >> PUBLIKUM: Kan du sette det sorterte? 1601 01:15:43,065 --> 01:15:45,740 >> JASON Hirschhorn: Spørsmål - 1602 01:15:45,740 --> 01:15:49,796 gjør det noe at ting er sortert i databasen? 1603 01:15:49,796 --> 01:15:50,700 >> PUBLIKUM: Nei. 1604 01:15:50,700 --> 01:15:52,240 >> JASON Hirschhorn: Vel, de er sortert. 1605 01:15:52,240 --> 01:15:53,100 De er sortert kronologisk. 1606 01:15:53,100 --> 01:15:55,060 Men la oss anta at ting er sortert 1607 01:15:55,060 --> 01:15:57,640 kronologisk, fra topp til bunn. 1608 01:15:57,640 --> 01:15:58,930 Vi har en Google-skjema. 1609 01:15:58,930 --> 01:16:01,400 Når noen svarer på vår Google form, det bare blir satt i 1610 01:16:01,400 --> 01:16:02,480 bunnen av tabellen. 1611 01:16:02,480 --> 01:16:07,318 Spiller det noen rolle at ting er sorteres ikke kronologisk? 1612 01:16:07,318 --> 01:16:11,290 >> PUBLIKUM: Hvis det ikke er kronologisk, du trenger ikke å sortere det hver gang 1613 01:16:11,290 --> 01:16:12,920 du tar info ut. 1614 01:16:12,920 --> 01:16:16,730 Men hvis det er allerede sortert, kan ikke du ikke å gjøre det ekstra 1615 01:16:16,730 --> 01:16:17,570 funksjonskallet? 1616 01:16:17,570 --> 01:16:20,690 >> JASON Hirschhorn: Så det er faktisk et godt poeng. 1617 01:16:20,690 --> 01:16:23,690 For oss som programmerere, det kanskje ingen rolle. 1618 01:16:23,690 --> 01:16:26,190 Og vi ønsker kanskje å finne en database som ikke sortere ting 1619 01:16:26,190 --> 01:16:26,900 kronologisk. 1620 01:16:26,900 --> 01:16:30,100 Eller sette opp vår database, så det holder ting sortert etter bruker-ID. 1621 01:16:30,100 --> 01:16:34,060 >> Så på den måten, sier, har vi 1000 bruker-IDer. 1622 01:16:34,060 --> 01:16:36,690 Eller Facebook, har vi millioner av bruker-IDer. 1623 01:16:36,690 --> 01:16:39,560 Vi ønsker ikke vårt bord å bare være tilfeldig eller vår database for å være tilfeldig. 1624 01:16:39,560 --> 01:16:41,630 Det ville være fint om alle bruker-IDer ble sortert. 1625 01:16:41,630 --> 01:16:46,020 Så da kunne vi kjøre binære søk på vårt bord, og så bare finne den 1626 01:16:46,020 --> 01:16:47,050 spesifikk del. 1627 01:16:47,050 --> 01:16:50,640 >> Så ja, avhengig av - hvis vi skalert opp, vi ønsker kanskje å finne en database 1628 01:16:50,640 --> 01:16:53,370 Som holdt ting sortert i en annen måte, slik at disse søkene 1629 01:16:53,370 --> 01:16:54,140 ville ta kortere tid. 1630 01:16:54,140 --> 01:16:56,820 Og vi trengte ikke å gå gjennom vår hele databasen i hver enkelt rad i 1631 01:16:56,820 --> 01:16:58,260 en gitt tabell. 1632 01:16:58,260 --> 01:17:01,640 Men det nivået vi jobber på, vi trenger ikke å bekymre deg for å holde 1633 01:17:01,640 --> 01:17:02,270 ting ordnet. 1634 01:17:02,270 --> 01:17:06,100 Vi kan anta at den tiden det tar at spørringen til å kjøre kommer til å være 1635 01:17:06,100 --> 01:17:08,910 ubetydelig, gitt hva vi har med å gjøre. 1636 01:17:08,910 --> 01:17:13,550 Men ja, god idé - som vi skalere opp, det kan være fornuftig å designe vår 1637 01:17:13,550 --> 01:17:15,390 database i en bit av en annen måte. 1638 01:17:15,390 --> 01:17:18,520 >> En siste database design ting jeg ønsker å nevne også, fordi du vil 1639 01:17:18,520 --> 01:17:22,660 bli gradert, eller scoret heller, på utformingen av databasen. 1640 01:17:22,660 --> 01:17:24,160 Vi snakket om dette. 1641 01:17:24,160 --> 01:17:27,490 Cash er unik for hver bruker. 1642 01:17:27,490 --> 01:17:30,820 Så du har en tabell kalt cash som har sin bruker-ID og deres mengde 1643 01:17:30,820 --> 01:17:33,370 kontanter og deretter en tabell kalt brukere som har sin bruker 1644 01:17:33,370 --> 01:17:34,810 ID og deres brukernavn. 1645 01:17:34,810 --> 01:17:37,390 >> Disse tabellene kart på hver andre en-til-en. 1646 01:17:37,390 --> 01:17:39,520 Det gjør trolig fornuftig for at de skal være en tabell. 1647 01:17:39,520 --> 01:17:42,750 1648 01:17:42,750 --> 01:17:44,830 Så la oss anta at du har en bruker tabell som holder styr på 1649 01:17:44,830 --> 01:17:46,220 brukernavn og kontanter. 1650 01:17:46,220 --> 01:17:49,960 Du har nå en tabell som har den aksjer en person eier. 1651 01:17:49,960 --> 01:17:52,130 >> Og en person kan eie mer enn én bestand. 1652 01:17:52,130 --> 01:17:54,900 Så disse ikke kart på hverandre, en-til-en. 1653 01:17:54,900 --> 01:18:00,140 Det gir ikke mening å ha en gigantisk tabell som har 30 poster som 1654 01:18:00,140 --> 01:18:02,960 alt gjenta et brukernavn, som alle gjenta et passord, som alle 1655 01:18:02,960 --> 01:18:04,680 gjenta en rekke av kontanter. 1656 01:18:04,680 --> 01:18:08,360 Men hver har kanskje en annen lager navn eller en annen aksjekursen. 1657 01:18:08,360 --> 01:18:11,310 >> Det gir ikke mening å ha at mange store poster. 1658 01:18:11,310 --> 01:18:14,880 Vær smart om når du lager disse databaser, slik at du ikke gjør 1659 01:18:14,880 --> 01:18:20,050 noe dumt sånn, gjenta mye unødvendig informasjon. 1660 01:18:20,050 --> 01:18:20,570 >> OK. 1661 01:18:20,570 --> 01:18:22,570 Vi har to minutter igjen. 1662 01:18:22,570 --> 01:18:26,580 Folk utenfor er glade for å bli med oss eller sannsynligvis, formodentlig, 1663 01:18:26,580 --> 01:18:27,650 starte sin egen klasse. 1664 01:18:27,650 --> 01:18:30,110 Er det noen som har noen spørsmål før vi ender opp? 1665 01:18:30,110 --> 01:18:35,520 1666 01:18:35,520 --> 01:18:38,620 >> OK, dette var faktisk en virvelvind gjennom alt. 1667 01:18:38,620 --> 01:18:43,510 Jeg beklager at det måtte være så rask og at vi ikke kunne være så hands-on 1668 01:18:43,510 --> 01:18:46,640 denne uken som jeg ville har likt å ha vært. 1669 01:18:46,640 --> 01:18:50,610 Men hvis du har noen spørsmål om noe vi gikk over eller noe i 1670 01:18:50,610 --> 01:18:52,090 dette oppgavesettet - 1671 01:18:52,090 --> 01:18:54,900 Forutsatt at du har lest den og sette i en god tro innsats - 1672 01:18:54,900 --> 01:18:57,920 gjerne send meg eller kontakte meg. 1673 01:18:57,920 --> 01:19:00,960 Jeg er mer enn fornøyd med å arbeide gjennom koden din med deg eller svare på eventuelle 1674 01:19:00,960 --> 01:19:02,330 spørsmålene du har. 1675 01:19:02,330 --> 01:19:06,160 >> Husk at denne uken, mye tiden vil bli brukt til å lære den 1676 01:19:06,160 --> 01:19:10,730 ny syntaks og prøver å forstå hvordan å skrive SQL-spørringer eller PHP 1677 01:19:10,730 --> 01:19:14,280 funksjoner eller avtale med en MVC rammeverk. 1678 01:19:14,280 --> 01:19:17,290 Mye av tiden denne uken trolig vil ikke være å prøve å finne ut av 1679 01:19:17,290 --> 01:19:19,380 gal logikk at vi er ber deg om å gjøre. 1680 01:19:19,380 --> 01:19:23,820 Mye av det vi bare gikk over er relativt ukomplisert. 1681 01:19:23,820 --> 01:19:25,790 >> Så det betyr ikke vente til siste minutt. 1682 01:19:25,790 --> 01:19:29,710 Men det betyr justere hvordan du gjør din jobbe deretter, for å være sikker 1683 01:19:29,710 --> 01:19:30,970 du er forståelse og lære syntaks. 1684 01:19:30,970 --> 01:19:33,640 Så du er ikke, plutselig, å vite akkurat hva du vil gjøre, 1685 01:19:33,640 --> 01:19:37,200 men med ingen anelse om hvordan de skal akkurat skrive det. 1686 01:19:37,200 --> 01:19:38,450 OK, jeg ser deg neste uke. 1687 01:19:38,450 --> 01:19:40,438