1 00:00:00,000 --> 00:00:10,075 >> [MUSIC SPILLE] 2 00:00:10,075 --> 00:00:11,629 3 00:00:11,629 --> 00:00:14,420 ALLISON Buchholtz-AU: All right, alle, velkommen tilbake til seksjonen. 4 00:00:14,420 --> 00:00:17,420 Forhåpentligvis dere alle hadde en flott Halloween helg, eller Halloweekend, 5 00:00:17,420 --> 00:00:20,009 som jeg liker å si, all uthvilt og restituert. 6 00:00:20,009 --> 00:00:21,675 Og heldigvis er det ikke er snø lenger. 7 00:00:21,675 --> 00:00:23,230 Det er faktisk sol ute. 8 00:00:23,230 --> 00:00:25,040 Jeg var virkelig glad for det. 9 00:00:25,040 --> 00:00:28,420 Ikke klar til å dra ut mine vinterstøvler. 10 00:00:28,420 --> 00:00:31,820 Forhåpentligvis gikk pset6 ganske godt. 11 00:00:31,820 --> 00:00:35,040 >> Hvis du er lei av C, er jeg fornøyd å si at du er ferdig med C for nå. 12 00:00:35,040 --> 00:00:37,550 Vi har fullt overført i web-programmering, 13 00:00:37,550 --> 00:00:42,030 så du skal jobbe i HTML, PHP, kanskje litt av Javascript. 14 00:00:42,030 --> 00:00:44,650 Jeg vet ikke hva neste ukes PSet er, så jeg kan ikke garantere 15 00:00:44,650 --> 00:00:47,820 hva neste PSet vil være, men denne ukens PSet 16 00:00:47,820 --> 00:00:52,290 er CS50 Finance, som er utgangspunktet implementere slags web-side 17 00:00:52,290 --> 00:00:57,222 som lar deg kjøpe og selge lager, og holde styr på dem. 18 00:00:57,222 --> 00:00:59,930 Og det er ganske kult, fordi alle av det er dynamisk generert. 19 00:00:59,930 --> 00:01:02,320 Du kan ha ulike brukere som hver har sin egen informasjon, 20 00:01:02,320 --> 00:01:04,580 og du kommer til å være implementere alt dette. 21 00:01:04,580 --> 00:01:05,970 Det tar en stund. 22 00:01:05,970 --> 00:01:13,030 Jeg tror definitivt dette er lettere enn C psets, men det tar lengre tid. 23 00:01:13,030 --> 00:01:17,370 Du lærer et nytt språk, PHP, noe som er svært lik C, 24 00:01:17,370 --> 00:01:21,390 men selvfølgelig kommer til å kreve du kan slå opp syntaks og forstå 25 00:01:21,390 --> 00:01:23,360 hvordan du kan konvertere mellom språkene. 26 00:01:23,360 --> 00:01:27,960 >> Men jeg tror ikke det er noe super konseptuelt hardt om dette PSet. 27 00:01:27,960 --> 00:01:30,087 Det er bare å lære nytt språk og får 28 00:01:30,087 --> 00:01:31,420 gjennom alle disse små stykker. 29 00:01:31,420 --> 00:01:34,850 Hvis dere har lest gjennom spec, det er ganske lang. 30 00:01:34,850 --> 00:01:38,200 Jeg tror dette er som 21 sider, hvis jeg husker riktig. 31 00:01:38,200 --> 00:01:40,130 Det er en lang spec. 32 00:01:40,130 --> 00:01:42,218 Så hvis du ikke har lest it-- 22. 33 00:01:42,218 --> 00:01:43,520 32. 34 00:01:43,520 --> 00:01:44,410 >> Wow. 35 00:01:44,410 --> 00:01:46,280 Så var jeg av med 50% der. 36 00:01:46,280 --> 00:01:48,550 Så, 32 sider. 37 00:01:48,550 --> 00:01:49,820 Så det er lenge. 38 00:01:49,820 --> 00:01:54,070 Det er mange brikker, men ingen av bitene bør være så ille. 39 00:01:54,070 --> 00:01:55,650 Det er bare mye. 40 00:01:55,650 --> 00:02:00,310 Så definitivt komme i gang tidlig hvis det er mulig, i henhold til vanlig, 41 00:02:00,310 --> 00:02:05,480 men jeg tror det skal føles litt finere enn spesielt psets som 42 00:02:05,480 --> 00:02:10,250 gjenopprette og endre størrelse som er bare svært vanskelig å vikle hodet rundt. 43 00:02:10,250 --> 00:02:12,550 >> Så med det, kommer vi til å dykke i. 44 00:02:12,550 --> 00:02:14,840 Jeg har ikke din agenda skyv i dag, men vi er 45 00:02:14,840 --> 00:02:17,920 kommer til å bli snakket om PHP. 46 00:02:17,920 --> 00:02:20,790 Jeg skal gi deg en slags lynkurs på noen ting 47 00:02:20,790 --> 00:02:23,040 som du kanskje ønsker å vite om PHP. 48 00:02:23,040 --> 00:02:26,470 Ulike syntaks ting, ting å se opp for. 49 00:02:26,470 --> 00:02:29,400 Vi kommer til å snakke litt om SQL. 50 00:02:29,400 --> 00:02:33,020 Bare veldig enkle ting der, og da også MVC 51 00:02:33,020 --> 00:02:36,380 er Model View Controller, som Slik kan din PSet er satt opp, 52 00:02:36,380 --> 00:02:39,801 så det å forstå hvordan det arbeidene vil være super nyttig. 53 00:02:39,801 --> 00:02:40,300 OK. 54 00:02:40,300 --> 00:02:42,030 Så PHP. 55 00:02:42,030 --> 00:02:45,050 Dere skulle ha gjort noe veldig, veldig enkel 56 00:02:45,050 --> 00:02:48,680 med PHP, som er Dette bunn ting her, 57 00:02:48,680 --> 00:02:53,700 der du har sendt inn noen form på toppen her som hadde noen navn som du 58 00:02:53,700 --> 00:02:58,860 inngang, og det vil si at hei, Ben, eller hallo, Allison, og det ville dukke opp. 59 00:02:58,860 --> 00:03:02,570 Så dette er faktisk hva det bør har så ut fra din PSet, 60 00:03:02,570 --> 00:03:06,040 i tilfelle dere ville vite eller ikke helt finne ut av det. 61 00:03:06,040 --> 00:03:14,520 >> Men vi har disse spørsmålstegn her som tyder på at dette er PHP. 62 00:03:14,520 --> 00:03:18,850 De pakker det, og deretter htmlspecialcharge, husk, er rettferdig, 63 00:03:18,850 --> 00:03:22,450 sørg for at du er trygg fra noen gale injeksjon angrep 64 00:03:22,450 --> 00:03:26,550 eller hvis noen forsøker å sette gale ondsinnede tegn 65 00:03:26,550 --> 00:03:30,780 inn i navnefeltet, det gjør det ikke liker opp din server eller whatnot. 66 00:03:30,780 --> 00:03:37,590 >> Og så hvis vi legger merke til, denne HTML formen hadde en fremgangsmåte for $ _GET, som, 67 00:03:37,590 --> 00:03:42,050 hvis vi husker våre superglobals fra PHP, $ _GET, $ _POST, 68 00:03:42,050 --> 00:03:44,530 vi kommer inn de i en liten bit. 69 00:03:44,530 --> 00:03:50,390 Men vi vet at vi har noen navn her som svarer til navnet 70 00:03:50,390 --> 00:03:51,920 at vi leverte. 71 00:03:51,920 --> 00:03:56,930 Så dette er bare typen som veldig enkel PHP HTML samarbeid 72 00:03:56,930 --> 00:04:00,080 at dere hadde fra PSet seks. 73 00:04:00,080 --> 00:04:02,410 >> Men det gjør egentlig ikke besvare hva PHP. 74 00:04:02,410 --> 00:04:04,850 Selvsagt er det et språk, men vi har ikke egentlig 75 00:04:04,850 --> 00:04:08,260 snakket om det i denne delen, så det er litt mer 76 00:04:08,260 --> 00:04:09,740 om hva PHP egentlig er. 77 00:04:09,740 --> 00:04:14,270 Så PHP er bare PHP Hypertext Preprocessor. 78 00:04:14,270 --> 00:04:16,399 >> Det er faktisk ansett et programmeringsspråk 79 00:04:16,399 --> 00:04:20,500 fordi den har logikk, mens hvis Vi husker snakker om HTML, 80 00:04:20,500 --> 00:04:24,980 vi kalte det et kodespråk versus et programmeringsspråk fordi HTML 81 00:04:24,980 --> 00:04:27,790 er strengt modifisere hvordan ting ser på siden. 82 00:04:27,790 --> 00:04:30,650 Det er bare å modifisere om noe er fet, 83 00:04:30,650 --> 00:04:35,280 eller om det er en form, element, eller noe sånt. 84 00:04:35,280 --> 00:04:36,750 Det har ikke noen logikk. 85 00:04:36,750 --> 00:04:38,770 Det har ikke sløyfer eller forhold. 86 00:04:38,770 --> 00:04:40,940 Du kan ikke feil sjekke ting. 87 00:04:40,940 --> 00:04:44,810 Du ville heller vise ting på en bestemt måte, eller spørre om ting 88 00:04:44,810 --> 00:04:45,490 fra brukeren. 89 00:04:45,490 --> 00:04:47,180 Det var det. 90 00:04:47,180 --> 00:04:51,780 >> Så med PHP, er det faktisk ikke tillate oss å gjøre alle disse mer logiske ting, 91 00:04:51,780 --> 00:04:56,840 som validerer input eller manipulere det på noen måte. 92 00:04:56,840 --> 00:05:02,570 Vi kan kombinere det med HTML, som vi bare så i den siste PSet og akkurat nå, 93 00:05:02,570 --> 00:05:05,280 og det tillater oss å lage disse dynamiske websider. 94 00:05:05,280 --> 00:05:08,900 Så hvis dere noensinne-- Jeg vet ikke om du var som meg, men i ungdomsskolen 95 00:05:08,900 --> 00:05:13,820 de hadde oss ta denne IT klasse der vi skapte bare HTML-nettsider, 96 00:05:13,820 --> 00:05:20,160 og de var statiske og klikke seg rundt til andre ting, men de har aldri endret seg. 97 00:05:20,160 --> 00:05:25,960 >> Med dynamiske seg, det vi kan gjøre er, i likhet med CS50 Finans, 98 00:05:25,960 --> 00:05:27,870 du kommer til å ha forskjellige brukere. 99 00:05:27,870 --> 00:05:30,992 Avhengig av disse brukernes preferanser, og hva de kjøper 100 00:05:30,992 --> 00:05:32,700 eller hva de selger for sine aksjer, 101 00:05:32,700 --> 00:05:35,050 du kommer til å vise forskjellige ting. 102 00:05:35,050 --> 00:05:38,110 Så hvis det er noen identifisere kjennetegn 103 00:05:38,110 --> 00:05:41,990 for brukeren ved hjelp av dette web side, kan vi dynamisk 104 00:05:41,990 --> 00:05:44,720 bestemmer hva som skal vises for dem. 105 00:05:44,720 --> 00:05:49,720 Det er ikke det samme for hver enkelt person, som om vi hadde bare HTML, 106 00:05:49,720 --> 00:05:52,400 siden vil være det samme for hver enkelt person som besøkte. 107 00:05:52,400 --> 00:05:55,790 PHP tillater oss å tilpasse sidene. 108 00:05:55,790 --> 00:06:01,670 >> Og da kan vi enten sette dem i den samme filen, som, som i tilfellet 109 00:06:01,670 --> 00:06:06,670 før her, så vi at vi har HTML alle her 110 00:06:06,670 --> 00:06:09,760 og så har vi denne lille bit av PHP. 111 00:06:09,760 --> 00:06:12,690 Vi kan gjøre sånn, eller med CS50 Finans, 112 00:06:12,690 --> 00:06:16,310 hvis dere har sett på files-- og vi bør ha tid 113 00:06:16,310 --> 00:06:19,541 å gå gjennom et par av dem sammen ved enden av den section-- vi 114 00:06:19,541 --> 00:06:21,540 kan se hvordan du kan faktisk holde dem atskilt, 115 00:06:21,540 --> 00:06:24,720 som faktisk er en bedre ting å gjøre. 116 00:06:24,720 --> 00:06:26,550 >> So. 117 00:06:26,550 --> 00:06:27,680 Lynkurs. 118 00:06:27,680 --> 00:06:32,860 Alle de raske enkle ting du trenger å vite for PHP. 119 00:06:32,860 --> 00:06:34,470 Erklærte variabler. 120 00:06:34,470 --> 00:06:37,970 At blått er litt irriterende, men forhåpentligvis dere kan se det. 121 00:06:37,970 --> 00:06:39,850 Hvis ikke, vil jeg skrive det på kritt bord. 122 00:06:39,850 --> 00:06:41,370 De erklærte variabler. 123 00:06:41,370 --> 00:06:46,710 En ting å vite er at, i motsetning til C, PHP er løst eller dynamisk skrevet, 124 00:06:46,710 --> 00:06:50,870 noe som betyr at du ikke trenger å fortelle en variabel hvilken type det er. 125 00:06:50,870 --> 00:06:55,710 Du kan bare rett og slett si noe variabel er lik hva du vil ha det til, 126 00:06:55,710 --> 00:07:00,440 og det vil bestemme den type den variabelen under kjøring for deg. 127 00:07:00,440 --> 00:07:05,410 >> Som du ser, kan dette skape noen svært interessante ting. 128 00:07:05,410 --> 00:07:09,130 Men for de fleste formål, du trenger ikke å spesifisere type. 129 00:07:09,130 --> 00:07:12,580 Du kan, og du kan skrive kaste ting som du normalt 130 00:07:12,580 --> 00:07:15,900 ville ikke se om du ønsker å tvinge det til å være en bestemt type, 131 00:07:15,900 --> 00:07:17,090 men du trenger ikke å. 132 00:07:17,090 --> 00:07:19,810 Det kommer ikke til å kjefte på deg hvis du bare erklære en variabel 133 00:07:19,810 --> 00:07:21,910 og ikke angir en type for det. 134 00:07:21,910 --> 00:07:25,199 >> Så i tilfelle du ikke kan lese dette-- Jeg vet det ikke er den beste. 135 00:07:25,199 --> 00:07:28,490 Jeg trodde det ville dukke opp better-- den måten du initialisere en variabel er bare 136 00:07:28,490 --> 00:07:31,270 med et dollartegn, hva du vil at det skal bli kalt, 137 00:07:31,270 --> 00:07:33,240 og deretter hva du tilordne den. 138 00:07:33,240 --> 00:07:36,520 Så i dette tilfellet, er dette noen $ var = 3. 139 00:07:36,520 --> 00:07:40,450 Så hvis vi noen gang bruke $ var et sted, vil det bare 140 00:07:40,450 --> 00:07:42,760 være det samme som å sette 3 der. 141 00:07:42,760 --> 00:07:43,650 OK? 142 00:07:43,650 --> 00:07:46,480 >> Så, noen variabel, bare dollartegn, uansett 143 00:07:46,480 --> 00:07:50,210 du ønsker å ringe til variabel, og hva du vil den skal like. 144 00:07:50,210 --> 00:07:51,430 Litt kjøligere. 145 00:07:51,430 --> 00:07:56,156 Mindre å skrive for initialisering en variabel, ikke sant? 146 00:07:56,156 --> 00:07:57,530 Betyr det fornuftig for alle? 147 00:07:57,530 --> 00:08:02,280 Bare rask syntaks forskjell mellom C og PHP. 148 00:08:02,280 --> 00:08:06,440 >> Arrays er mye kulere i PHP. 149 00:08:06,440 --> 00:08:09,620 Vi kan gi dem nøklene. 150 00:08:09,620 --> 00:08:13,180 Så måten å tenke på det er at, hvis vi noen gang 151 00:08:13,180 --> 00:08:16,610 ønsket å få tilgang til en element i en matrise, 152 00:08:16,610 --> 00:08:19,290 vi trengte å vite indeks over det, ikke sant? 153 00:08:19,290 --> 00:08:24,290 Så vi vet at med C, vi kunne få tilgang til det første elementet 154 00:08:24,290 --> 00:08:28,650 ved å gjøre matrise brakett null, eller hvis vi vil det første elementet, array brakett 155 00:08:28,650 --> 00:08:29,360 en. 156 00:08:29,360 --> 00:08:31,910 Og hvis vi ønsket noe der inne, kanskje vi bare 157 00:08:31,910 --> 00:08:35,850 nødt til å iterere gjennom, med mindre vi faktisk visste indeksen. 158 00:08:35,850 --> 00:08:38,320 >> En ting som er virkelig kult med PHP arrays 159 00:08:38,320 --> 00:08:40,850 er at de er hva vi kaller assosiativ. 160 00:08:40,850 --> 00:08:44,970 Så vi kan assosiere noen nøkkel til en viss verdi, 161 00:08:44,970 --> 00:08:47,340 og vi blir faktisk kommer to-- Jeg vil vise deg 162 00:08:47,340 --> 00:08:50,370 hvordan vi kan bruke dette i et sekund. 163 00:08:50,370 --> 00:08:54,330 Men i utgangspunktet, hvis du noen gang ønsker å initialisere en matrise sånn, 164 00:08:54,330 --> 00:08:56,020 du har noen $ array. 165 00:08:56,020 --> 00:08:59,622 >> Så på samme måte, det er bare noen variabel som vi skaper. 166 00:08:59,622 --> 00:09:01,330 Dette kan kalles uansett hva du ville. 167 00:09:01,330 --> 00:09:03,310 Dette kan være $ eksempel. 168 00:09:03,310 --> 00:09:04,930 Bare en annen variabel. 169 00:09:04,930 --> 00:09:09,510 Hva gjør det en matrise er brakett syntaks som vi har her. 170 00:09:09,510 --> 00:09:14,560 Akkurat som vanlig C. Og vi har noen nøkkel til noen verdi. 171 00:09:14,560 --> 00:09:19,480 Så pinne 1 går til verdi1, NØKKEL2 to går til verdi2. 172 00:09:19,480 --> 00:09:25,080 Disse parene er adskilt med en komma, akkurat som vanlige arrays. 173 00:09:25,080 --> 00:09:25,810 >> Men. 174 00:09:25,810 --> 00:09:26,520 Stor en. 175 00:09:26,520 --> 00:09:27,270 Keys er valgfrie. 176 00:09:27,270 --> 00:09:28,510 Du trenger ikke å bruke dem. 177 00:09:28,510 --> 00:09:30,850 Og hvis du ikke gjør det, så er det bare normalt. 178 00:09:30,850 --> 00:09:32,030 Spørsmål? 179 00:09:32,030 --> 00:09:33,540 Eller, oh. 180 00:09:33,540 --> 00:09:37,829 >> PUBLIKUM: Vel, om retten. 181 00:09:37,829 --> 00:09:39,120 Hvor er minnet kommer fra? 182 00:09:39,120 --> 00:09:43,425 Det kan også være det samme som å [Uhørbart] og fra bunken? 183 00:09:43,425 --> 00:09:45,277 Er det også å bruke PHP? 184 00:09:45,277 --> 00:09:46,485 Som når vi knytter dem? 185 00:09:46,485 --> 00:09:49,070 >> ALLISON Buchholtz-AU: Med PHP, Vi pleier 186 00:09:49,070 --> 00:09:52,670 å bekymre seg for hvor vår minnet kommer fra. 187 00:09:52,670 --> 00:09:54,670 Vi trenger ikke bruke mye tid på å snakke om det, 188 00:09:54,670 --> 00:09:58,450 så det er egentlig ikke noe du trenger å bekymre seg for. 189 00:09:58,450 --> 00:10:00,620 Så tastene er valgfritt. 190 00:10:00,620 --> 00:10:04,780 På samme måte, hvis du ikke gjør det ønsker å gjøre dette forbundet, 191 00:10:04,780 --> 00:10:09,910 du bare vil ha en normal matrise der matrise null er det første elementet 192 00:10:09,910 --> 00:10:13,190 og rekke en er den andre element, kan du gjøre det akkurat 193 00:10:13,190 --> 00:10:17,886 som du ville i C. Du har noen variable som kommer til å være din array, 194 00:10:17,886 --> 00:10:20,110 og det tilsvarer disse beslagene her. 195 00:10:20,110 --> 00:10:20,610 Ja. 196 00:10:20,610 --> 00:10:22,693 >> PUBLIKUM: Betyr det har samme punkt til notasjon. 197 00:10:22,693 --> 00:10:26,250 Som, jeg kan gjøre som en rekke ++, og som peker til den andre. 198 00:10:26,250 --> 00:10:30,260 >> ALLISON Buchholtz-AU: Du kan do-- Vel, kan du ha litt iterator, i, 199 00:10:30,260 --> 00:10:34,300 at du kan gjøre i ++ og gjøre en matrise av I på samme måte. 200 00:10:34,300 --> 00:10:35,680 Men det er det. 201 00:10:35,680 --> 00:10:39,630 Så, som i dette tilfellet rekke en ville tilsvare 20. 202 00:10:39,630 --> 00:10:42,530 Samme slags indeksering notasjon. 203 00:10:42,530 --> 00:10:51,330 Dette er i utgangspunktet bare en implisitt ting her, hvor det står null, null til 10, 204 00:10:51,330 --> 00:10:54,640 til 1 til 20, 2 til 30. 205 00:10:54,640 --> 00:10:56,760 Det er bare implisitte nøkler for det. 206 00:10:56,760 --> 00:10:59,990 Hvilke endringer med PHP er at du nå har makt 207 00:10:59,990 --> 00:11:02,660 å overføre disse nøklene til gjøre hva du vil. 208 00:11:02,660 --> 00:11:13,820 >> Så en ting er her. 209 00:11:13,820 --> 00:11:18,230 Så jeg har bare noen eksempler her at jeg skrev opp for dere 210 00:11:18,230 --> 00:11:22,010 fordi jeg føler meg som eksempler alltid bidra mer enn bare det abstrakte. 211 00:11:22,010 --> 00:11:26,590 Så, i dette tilfellet her, vi har noen assosiativ array 212 00:11:26,590 --> 00:11:31,990 det er mitt fornavn, mitt etternavn, og jeg 213 00:11:31,990 --> 00:11:35,390 er sammen, som er bare for alle formål her 214 00:11:35,390 --> 00:11:38,500 kommer til å skrive ut til utgangen her. 215 00:11:38,500 --> 00:11:39,300 >> Og den sier, OK. 216 00:11:39,300 --> 00:11:46,680 Skriv ut verdien som tilsvarer matrise på nøkkelen Allison. 217 00:11:46,680 --> 00:11:50,860 Og jeg kan også sende dere all denne koden etter klasse. 218 00:11:50,860 --> 00:11:53,700 Så, når vi kjører dette, hva gjør du tror kommer til å skje? 219 00:11:53,700 --> 00:11:56,239 Hva kommer til å skrive ut? 220 00:11:56,239 --> 00:11:57,280 PUBLIKUM: Ditt etternavn. 221 00:11:57,280 --> 00:11:58,738 ALLISON Buchholtz-AU: Mitt etternavn. 222 00:11:58,738 --> 00:12:00,000 Det gjør. 223 00:12:00,000 --> 00:12:00,960 Akkurat her. 224 00:12:00,960 --> 00:12:02,400 Skrive ut. 225 00:12:02,400 --> 00:12:07,000 Så hvis vi skulle endre på dette, og vi skulle legge til noen andre til vår list-- 226 00:12:07,000 --> 00:12:11,919 Så la oss si vi har Emma her, og vi forbinder din siste name-- 227 00:12:11,919 --> 00:12:13,252 La oss se om jeg stave denne retten. 228 00:12:13,252 --> 00:12:13,714 >> PUBLIKUM: Yeah. 229 00:12:13,714 --> 00:12:14,640 >> ALLISON Buchholtz-AU: Ja. 230 00:12:14,640 --> 00:12:15,010 >> PUBLIKUM: God jobb. 231 00:12:15,010 --> 00:12:16,218 >> ALLISON Buchholtz-AU: Lovely. 232 00:12:16,218 --> 00:12:25,370 Så nå hvis vi har dette her og Vi ønsket å finne ditt etternavn, 233 00:12:25,370 --> 00:12:26,290 du har det der. 234 00:12:26,290 --> 00:12:31,270 Så du kan bare tenke på det som å erstatte denne nøkkelen her. 235 00:12:31,270 --> 00:12:33,190 Du bare erstatte indeksen. 236 00:12:33,190 --> 00:12:36,845 Så det kan du bare søke gjennom en matrise mye enklere. 237 00:12:36,845 --> 00:12:38,220 Du trenger ikke å vite indeksen. 238 00:12:38,220 --> 00:12:43,470 Så lenge denne tasten som du leter etter eksisterer et sted i tabellen, 239 00:12:43,470 --> 00:12:47,660 PHP vil finne det, og det vil returnere verdien knyttet til den. 240 00:12:47,660 --> 00:12:49,840 Så det gir deg mye mer makt med dine arrays. 241 00:12:49,840 --> 00:12:50,340 Ja. 242 00:12:50,340 --> 00:12:53,131 >> PUBLIKUM: Hvis du har to tastene samme, vil det gi deg en feil? 243 00:12:53,131 --> 00:12:55,830 ALLISON Buchholtz-AU: Det burde gi deg en feil, ja. 244 00:12:55,830 --> 00:12:58,520 Betyr det gjøre litt mer fornuftig for dere? 245 00:12:58,520 --> 00:13:07,640 Og på samme måte, har vi en rekke her som ikke har noen av tastene. 246 00:13:07,640 --> 00:13:10,910 Også dette er en syntaks som du kanskje ønsker 247 00:13:10,910 --> 00:13:13,550 å være klar over, fordi du vil nødt til å bruke dette i din PSet. 248 00:13:13,550 --> 00:13:17,317 >> Når du gjør en ekko, har du disse sitatene, 249 00:13:17,317 --> 00:13:19,400 og når du henviser til en del av en matrise, 250 00:13:19,400 --> 00:13:22,180 du må ha disse klammeparentes rundt dem. 251 00:13:22,180 --> 00:13:25,630 Det er litt irriterende, men du må bare gjøre det. 252 00:13:25,630 --> 00:13:28,010 Så bare noe å huske på. 253 00:13:28,010 --> 00:13:31,490 Hvis du kjører inn i feil av, Jeg vet at dette finnes i mitt utvalg 254 00:13:31,490 --> 00:13:34,523 men det er å kaste feil på meg, prøve å sette tannregulering rundt det 255 00:13:34,523 --> 00:13:37,180 og det skal fungere. 256 00:13:37,180 --> 00:13:40,810 >> Så i dette tilfellet er her, er dette en normal C matrise som vi er vant til. 257 00:13:40,810 --> 00:13:45,810 Har tre, fem og seks, og vi bare ønsker å skrive ut det første elementet, 258 00:13:45,810 --> 00:13:47,850 så dette bør skrive ut tre. 259 00:13:47,850 --> 00:13:51,830 Og det gjorde jeg kjøre alle disse, så forhåpentligvis ingenting forandret. 260 00:13:51,830 --> 00:13:54,460 Vi ser nederst her, den skriver bare ut tre. 261 00:13:54,460 --> 00:13:57,050 262 00:13:57,050 --> 00:13:58,040 Cool. 263 00:13:58,040 --> 00:14:00,000 Det fornuftig for alle? 264 00:14:00,000 --> 00:14:01,280 Assosiative arrays. 265 00:14:01,280 --> 00:14:03,150 Mye kulere enn vanlige arrays. 266 00:14:03,150 --> 00:14:09,640 >> Dette er why-- Visste David vise deg PHP-implementeringen av pset6 267 00:14:09,640 --> 00:14:11,751 under forelesning i det hele tatt? 268 00:14:11,751 --> 00:14:12,250 OK. 269 00:14:12,250 --> 00:14:13,300 Så, skal jeg vise deg. 270 00:14:13,300 --> 00:14:13,770 Jeg vet ikke den av t-- 271 00:14:13,770 --> 00:14:14,680 >> PUBLIKUM: Han gjorde i forrige uke. 272 00:14:14,680 --> 00:14:15,560 >> ALLISON Buchholtz-AU: Var det i forrige uke? 273 00:14:15,560 --> 00:14:15,870 >> PUBLIKUM: Yeah. 274 00:14:15,870 --> 00:14:16,995 >> ALLISON Buchholtz-AU: Yeah. 275 00:14:16,995 --> 00:14:20,800 Så stave kan gjøres i like seks linjer med PHP, og en del av kraften i det 276 00:14:20,800 --> 00:14:25,640 dette er assosiativ array der du kan bare laste hvert ord i, 277 00:14:25,640 --> 00:14:28,290 og du har det lik sant eller usant. 278 00:14:28,290 --> 00:14:31,410 Og så du kan si, oh. 279 00:14:31,410 --> 00:14:39,130 Returnere ordbok på noen ord, og hvis det er det, vil det returnere true. 280 00:14:39,130 --> 00:14:42,130 Ellers vil det ikke finne det, og det vil return false. 281 00:14:42,130 --> 00:14:45,810 Så snilt av en kul liten ting. 282 00:14:45,810 --> 00:14:46,750 >> OK. 283 00:14:46,750 --> 00:14:48,990 Så de er assosiative arrays. 284 00:14:48,990 --> 00:14:50,150 De er ganske kult. 285 00:14:50,150 --> 00:14:51,830 Jeg liker dem. 286 00:14:51,830 --> 00:14:55,340 Og selvsagt dette-- Ah. 287 00:14:55,340 --> 00:14:56,290 OK. 288 00:14:56,290 --> 00:14:57,880 Nå er det å jobbe. 289 00:14:57,880 --> 00:15:00,700 Kanskje. 290 00:15:00,700 --> 00:15:01,537 OK. 291 00:15:01,537 --> 00:15:02,120 En annen ting. 292 00:15:02,120 --> 00:15:07,680 Så, med likestilling, bare en kul ting å huske på. 293 00:15:07,680 --> 00:15:12,140 Med PHP, fordi det er dynamisk skrevet, 294 00:15:12,140 --> 00:15:16,110 typen kan endres avhengig av når du kjører den, hvordan du kjører den. 295 00:15:16,110 --> 00:15:19,890 Jeg har faktisk noen kule eksempler som jeg skal vise dere. 296 00:15:19,890 --> 00:15:23,350 >> Men == sjekker bare for likestilling etter typen sjonglering. 297 00:15:23,350 --> 00:15:28,890 Så hvis du har noe som er lignende karakter 1 og nummer 1, 298 00:15:28,890 --> 00:15:31,890 PHP vil fortelle deg at disse er like fordi det 299 00:15:31,890 --> 00:15:35,990 kan sjonglere typer av to av dem før det er like, 300 00:15:35,990 --> 00:15:38,480 som kanskje for ditt tilfelle er fine. 301 00:15:38,480 --> 00:15:44,170 >> Hvis du trenger for å se om de er samme slags verdi, og den samme type, 302 00:15:44,170 --> 00:15:45,305 du vil at denne ===. 303 00:15:45,305 --> 00:15:48,150 Og jeg tror ikke du har noen tilfelle hvor du trenger å bruke det 304 00:15:48,150 --> 00:15:52,570 i PSet, men for mange dere som vil gå på å gjøre web-sider 305 00:15:52,570 --> 00:15:57,340 for den endelige prosjekter og ting, er det en god ting å vite at == og === 306 00:15:57,340 --> 00:16:01,690 er forskjellige, og det er en god skille å forstå. 307 00:16:01,690 --> 00:16:02,400 >> OK. 308 00:16:02,400 --> 00:16:02,980 So. 309 00:16:02,980 --> 00:16:04,460 Foreach løkker. 310 00:16:04,460 --> 00:16:07,920 De er en måte å iterere gjennom en matrise. 311 00:16:07,920 --> 00:16:11,714 Så, akkurat som arrays ble så mye kjøligere i PHP, 312 00:16:11,714 --> 00:16:13,630 din måte å iterere gjennom en matrise, tror jeg, 313 00:16:13,630 --> 00:16:16,250 blir også mye kulere og mye kraftigere. 314 00:16:16,250 --> 00:16:22,710 Så i stedet for å måtte lage noen for jeg er lik 0, og hva, 315 00:16:22,710 --> 00:16:24,890 og deretter oppdatere at Jeg som du går gjennom, 316 00:16:24,890 --> 00:16:27,730 vi har denne awesome foreach loop. 317 00:16:27,730 --> 00:16:36,340 >> Så her er standarden generelt Strukturen av disse to. 318 00:16:36,340 --> 00:16:41,180 Slik at du enten har foreach noen matrise som verdien du ønsker å iterere as. 319 00:16:41,180 --> 00:16:46,750 Så dette er navnet på tabellen variabelen som du vil referere til, 320 00:16:46,750 --> 00:16:50,600 og dette er hva du vil å kalle det i sløyfen. 321 00:16:50,600 --> 00:16:51,420 OK? 322 00:16:51,420 --> 00:16:56,810 Så dette tilsvarer hvert element i matrisen, 323 00:16:56,810 --> 00:16:59,500 og du bruker denne verdien innen denne sløyfen. 324 00:16:59,500 --> 00:17:00,675 >> Jeg har et eksempel. 325 00:17:00,675 --> 00:17:02,930 Jeg vet eksempler er så mye bedre. 326 00:17:02,930 --> 00:17:05,119 Og så dette er hvis det er ingen nøkler, så dette er som 327 00:17:05,119 --> 00:17:11,170 hvis vi bare har ett hvor tastene er de vanlige indeksene for din array. 328 00:17:11,170 --> 00:17:14,770 Eller dette er også i det tilfelle når du har ikke bruk for nøklene. 329 00:17:14,770 --> 00:17:16,690 Hvis du ikke bryr deg om nøklene og du bare 330 00:17:16,690 --> 00:17:20,260 ønsker å iterere gjennom med verdiene for hver av de i hvilken rekkefølge, 331 00:17:20,260 --> 00:17:20,950 det er fint. 332 00:17:20,950 --> 00:17:22,609 >> Du kan bruke strukturen. 333 00:17:22,609 --> 00:17:28,640 Ellers, hvis det er nøkler, vår $ Verdi bare endrer til $ nøkkelverdien. 334 00:17:28,640 --> 00:17:30,660 Så det bare endres til en nøkkelverdi par. 335 00:17:30,660 --> 00:17:34,780 Og så kan vi henvise til $ nøkkelen og $ verdi innenfor vår loop. 336 00:17:34,780 --> 00:17:35,900 OK? 337 00:17:35,900 --> 00:17:36,660 So. 338 00:17:36,660 --> 00:17:37,810 Eksempel. 339 00:17:37,810 --> 00:17:38,610 Gjør det bedre. 340 00:17:38,610 --> 00:17:48,910 341 00:17:48,910 --> 00:17:49,410 OK. 342 00:17:49,410 --> 00:17:56,780 >> Så vi har denne ene her, som vi har noen 343 00:17:56,780 --> 00:18:01,460 are-- Du kan også lage en matrise som dette 344 00:18:01,460 --> 00:18:05,690 ved å ha noen variable lik til array med parenteser, 345 00:18:05,690 --> 00:18:08,340 eller du kan bare gjøre brakett. 346 00:18:08,340 --> 00:18:11,890 Du bør gjøre braketten, men Dette er en annen måte å gjøre det på. 347 00:18:11,890 --> 00:18:16,220 Så her har vi noen utvalg av tre elementer av en, to og tre, 348 00:18:16,220 --> 00:18:18,300 og vi har vår foreach. 349 00:18:18,300 --> 00:18:23,510 >> Legg merke til dette svarer til den matrise som vi itera over, 350 00:18:23,510 --> 00:18:28,330 og dette er hva vi kaller hver ting i vårt utvalg. 351 00:18:28,330 --> 00:18:32,670 Og alt dette gjør er at det er kommer til å skrive ut hver verdi. 352 00:18:32,670 --> 00:18:45,590 Så hvis vi kjører den, vi ser at vi har verdi en, verdien to, verdi tre. 353 00:18:45,590 --> 00:18:54,080 >> Og på samme måte som vanligvis arrays trenger å være av en type, 354 00:18:54,080 --> 00:18:57,570 arrays trenger ikke å all være av samme type her. 355 00:18:57,570 --> 00:18:58,690 Så nå har vi noen int. 356 00:18:58,690 --> 00:19:00,910 Vi har to strenger. 357 00:19:00,910 --> 00:19:05,332 Så dine arrays kan får mye kraftigere 358 00:19:05,332 --> 00:19:07,040 og kanskje litt litt Messier, avhengig 359 00:19:07,040 --> 00:19:08,500 på den måten du ønsker å se på det. 360 00:19:08,500 --> 00:19:10,970 Så vi kan endre dette til hva vi ønsker. 361 00:19:10,970 --> 00:19:12,860 Vi bruker verdi. 362 00:19:12,860 --> 00:19:14,630 Det er bare standard ting vi bruker. 363 00:19:14,630 --> 00:19:19,650 Men, bare viktig å vite at vi kan kaller dette som teller hvis vi ønsket. 364 00:19:19,650 --> 00:19:25,070 Og så lenge de samsvarer, åpenbart alle er glade. 365 00:19:25,070 --> 00:19:30,600 Hvis du noen gang ønsker å kjøre en PHP kjøre noe sånt som denne kommandoen 366 00:19:30,600 --> 00:19:33,800 linjen du vet dette her, du bare gjør PHP, 367 00:19:33,800 --> 00:19:36,090 og deretter hva filen du vil kjøre. 368 00:19:36,090 --> 00:19:39,130 >> Så hvis du ønsker å rote rundt med PHP, og mer logikk 369 00:19:39,130 --> 00:19:42,710 og du egentlig ikke trenger å se ut som i en nettleser, 370 00:19:42,710 --> 00:19:44,830 du kan bare kjøre den i kommandolinjen sånn 371 00:19:44,830 --> 00:19:48,290 og ekko vil skrive ut ut hva du liker. 372 00:19:48,290 --> 00:19:50,880 OK. 373 00:19:50,880 --> 00:20:00,640 Den andre måten som vi har er som dette. 374 00:20:00,640 --> 00:20:06,974 Så dette er en sak der kanskje du vil å bruke både nøkkelen og verdi, 375 00:20:06,974 --> 00:20:08,890 Jeg vet dette er liksom super contrived eksempler 376 00:20:08,890 --> 00:20:11,950 men jeg håper de gjør det litt klarere. 377 00:20:11,950 --> 00:20:14,940 Så her har vi noen matrise igjen, men denne gangen 378 00:20:14,940 --> 00:20:19,450 i stedet for bare å ha du vet det er ingen nøkkel. 379 00:20:19,450 --> 00:20:20,870 Vi har taster for hver av disse. 380 00:20:20,870 --> 00:20:24,670 Så en skal bli en, vil b tilsvare til to, og c vil tilsvare tre. 381 00:20:24,670 --> 00:20:27,030 Og i dette tilfellet, hvis vi skriver det på denne måten, 382 00:20:27,030 --> 00:20:31,580 Vi har tilgang til både nøkkelen og verdien for hver av disse. 383 00:20:31,580 --> 00:20:36,570 >> Så når vi kjøre dette, vi får hver av dem. 384 00:20:36,570 --> 00:20:41,530 Så det skrives ut våre nøkler og tilsvarende verdier. 385 00:20:41,530 --> 00:20:46,940 En annen kul ting er at, og jeg vet sa at dette ikke har nøkler, 386 00:20:46,940 --> 00:20:51,540 men det er alltid implisitt har en nøkkel fordi hvis du ikke delegere 387 00:20:51,540 --> 00:20:54,050 en nøkkel, selvfølgelig, din tastene er bare dine indekser 388 00:20:54,050 --> 00:20:59,230 eller indekser slik at vi kunne alltid også gjøre dette. 389 00:20:59,230 --> 00:20:59,730 Som dette. 390 00:20:59,730 --> 00:21:02,500 391 00:21:02,500 --> 00:21:03,400 Jeg vil skrive ut. 392 00:21:03,400 --> 00:21:09,240 393 00:21:09,240 --> 00:21:13,420 Så i dette tilfellet, hvis du legger merke til, vi har våre implisitte nøkler 394 00:21:13,420 --> 00:21:15,930 på null, ett og to her. 395 00:21:15,930 --> 00:21:20,020 396 00:21:20,020 --> 00:21:25,600 >> Og på samme måte med denne, du kan alltid bare si r som verdi, 397 00:21:25,600 --> 00:21:27,910 og du bare har tilgang til verdien. 398 00:21:27,910 --> 00:21:30,685 Du bryr deg ikke om din nøkler, selv om din har taster, 399 00:21:30,685 --> 00:21:32,810 hvis du ikke bryr deg om dem, trenger du ikke nødvendigvis 400 00:21:32,810 --> 00:21:35,970 trenger å sette dem i foreach loop. 401 00:21:35,970 --> 00:21:37,953 Betyr det er fornuftig for alle? 402 00:21:37,953 --> 00:21:39,764 >> PUBLIKUM: Kan du bare ringe nøklene, også? 403 00:21:39,764 --> 00:21:42,180 ALLISON Buchholtz-AU: Ja du kan helt gjøre det også. 404 00:21:42,180 --> 00:21:44,945 405 00:21:44,945 --> 00:21:45,570 Egentlig venter. 406 00:21:45,570 --> 00:21:45,840 Hold på. 407 00:21:45,840 --> 00:21:46,630 ville it No. 408 00:21:46,630 --> 00:21:49,663 Hvis du vil ha nøkkelen, deretter du trenger å gjøre nøkkelen til verdi. 409 00:21:49,663 --> 00:21:50,496 PUBLIKUM: Legg verdi. 410 00:21:50,496 --> 00:21:50,870 ALLISON Buchholtz-AU: Yeah. 411 00:21:50,870 --> 00:21:52,530 Og du bare aldri bruke verdien er tatt. 412 00:21:52,530 --> 00:21:53,236 >> PUBLIKUM: OK. 413 00:21:53,236 --> 00:21:55,610 ALLISON Buchholtz-AU: Hvis du bare sette en ting der inne, 414 00:21:55,610 --> 00:22:00,010 det kommer til å anta at du er snakker om verdi, ikke nøkkelen. 415 00:22:00,010 --> 00:22:02,070 Stort spørsmål. 416 00:22:02,070 --> 00:22:02,600 OK. 417 00:22:02,600 --> 00:22:06,390 418 00:22:06,390 --> 00:22:08,170 Cool. 419 00:22:08,170 --> 00:22:09,032 Egentlig holde på. 420 00:22:09,032 --> 00:22:09,990 La meg se hva jeg har. 421 00:22:09,990 --> 00:22:13,600 422 00:22:13,600 --> 00:22:18,260 Så før vi kommer inn i innlegget og få, jeg vil bare vise dere en liten bit 423 00:22:18,260 --> 00:22:23,680 om hvordan det er dynamisk skrevet, noe som er litt kult. 424 00:22:23,680 --> 00:22:24,450 Jeg har alle disse. 425 00:22:24,450 --> 00:22:28,160 Jeg har som fire eksempler her oppe, og jeg vil sende deg all denne koden 426 00:22:28,160 --> 00:22:30,580 etter klasse. 427 00:22:30,580 --> 00:22:34,440 >> Så her har vi litt variabel a. 428 00:22:34,440 --> 00:22:36,500 Det er bare en pluss en, ikke sant? 429 00:22:36,500 --> 00:22:40,930 Og vi kommer til å skrive ut hva det er lik, og da har vi noen type. 430 00:22:40,930 --> 00:22:46,066 Og noen som har noen gjetninger om hvilken type det kommer til å bli? 431 00:22:46,066 --> 00:22:46,890 >> PUBLIKUM: En int. 432 00:22:46,890 --> 00:22:48,560 >> ALLISON Buchholtz-AU: Ja, det er en int. 433 00:22:48,560 --> 00:22:49,890 Så det legger bare dem sammen. 434 00:22:49,890 --> 00:22:51,671 Det er en int. 435 00:22:51,671 --> 00:22:52,170 All good. 436 00:22:52,170 --> 00:22:56,440 437 00:22:56,440 --> 00:23:05,590 Så dette neste, har vi hva ligne strenger. 438 00:23:05,590 --> 00:23:11,000 Når vi kjører dette, synes det, oh. 439 00:23:11,000 --> 00:23:13,720 Du faktisk prøver å bare legge ting. 440 00:23:13,720 --> 00:23:15,140 Du fikk bare forvirret. 441 00:23:15,140 --> 00:23:17,410 Så jeg bare kommer til å fikse det for deg. 442 00:23:17,410 --> 00:23:18,090 Du mente int. 443 00:23:18,090 --> 00:23:19,160 Jeg vet du mente int. 444 00:23:19,160 --> 00:23:25,190 >> Så dette er en av måtene du kan se, har PHP en tanke på egen hånd. 445 00:23:25,190 --> 00:23:28,800 Selv om vi eksplisitt sagt, se, disse som er strenger. 446 00:23:28,800 --> 00:23:30,120 Jeg mener strengen en. 447 00:23:30,120 --> 00:23:32,160 Men den sier, oh, men du prøver å legge dem, 448 00:23:32,160 --> 00:23:34,460 så du må bety det er et heltall. 449 00:23:34,460 --> 00:23:35,950 Bare stole på meg på dette. 450 00:23:35,950 --> 00:23:38,920 Så det sier det er et heltall, og det legger dem ut som normalt. 451 00:23:38,920 --> 00:23:42,460 Så litt kult hvis du skal å få lat med dine ting, 452 00:23:42,460 --> 00:23:45,470 eller du ønsker å legge til noe. 453 00:23:45,470 --> 00:23:48,690 >> En flott ting er at hvis du tenker tilbake til pset2, 454 00:23:48,690 --> 00:23:51,840 noe som var bruker inputted, ikke sant, at vi tror 455 00:23:51,840 --> 00:23:54,010 er en røye eller en streng i begynnelsen. 456 00:23:54,010 --> 00:23:57,950 Nå vi ikke har eksplisitt si, oh, gjør dette til en int. 457 00:23:57,950 --> 00:23:59,790 PHP ville bare være som, oh yeah. 458 00:23:59,790 --> 00:24:01,215 Jeg vet at du mente en int. 459 00:24:01,215 --> 00:24:01,830 Silly deg. 460 00:24:01,830 --> 00:24:04,640 Du mente ikke en streng. 461 00:24:04,640 --> 00:24:12,596 >> Så i dette tilfellet, nå at vi har dette, hva 462 00:24:12,596 --> 00:24:14,330 tror dere det kommer til å gjøre her? 463 00:24:14,330 --> 00:24:17,220 464 00:24:17,220 --> 00:24:20,495 Vi har en streng og en int nå. 465 00:24:20,495 --> 00:24:21,980 >> PUBLIKUM: Det er fortsatt en int. 466 00:24:21,980 --> 00:24:24,040 >> ALLISON Buchholtz-AU: Det er fortsatt en int. 467 00:24:24,040 --> 00:24:26,790 Og grunnen er-- jeg ville sette flere eksempler, men dette er gøy. 468 00:24:26,790 --> 00:24:30,110 Grunnen til at det gjør det er fordi det er som du prøver å legge til ting. 469 00:24:30,110 --> 00:24:33,310 Så hvis du prøver å legge til ting, kommer jeg til å anta, 470 00:24:33,310 --> 00:24:36,030 rimelig, har du noe rimelig at du kan legge til. 471 00:24:36,030 --> 00:24:40,032 Jeg kommer bare til å gjøre det en int, og vi bare kommer til å legge det, som vanlig. 472 00:24:40,032 --> 00:24:42,240 Og deretter på samme måte, I tror dere skjønner poenget. 473 00:24:42,240 --> 00:24:47,400 Vi har også denne her, som er bare tegn, og det gjør det samme. 474 00:24:47,400 --> 00:24:49,210 Det er som, du dum bruker. 475 00:24:49,210 --> 00:24:51,400 du vet at du vil ha en int. 476 00:24:51,400 --> 00:24:54,491 >> PUBLIKUM: Hvis vi setter et brev, vil det gjør [uhørbart] verdi eller ikke? 477 00:24:54,491 --> 00:24:56,532 ALLISON Buchholtz-AU: Oh, det er et godt spørsmål. 478 00:24:56,532 --> 00:24:57,518 La oss se. 479 00:24:57,518 --> 00:25:00,480 480 00:25:00,480 --> 00:25:03,430 Nope, er fortsatt en int. 481 00:25:03,430 --> 00:25:06,700 Så det er litt gal. 482 00:25:06,700 --> 00:25:12,170 Dette er bare slags vise deg PHP kan noen ganger oppfører seg i irrational-- Ikke 483 00:25:12,170 --> 00:25:16,670 helt irrasjonelt, men det kan oppføre seg på måter som du ikke egentlig forventer. 484 00:25:16,670 --> 00:25:18,970 Så, når du er i tvil, sjekk hvilke typer ting. 485 00:25:18,970 --> 00:25:22,570 Denne funksjonen getType kan være super nyttig. 486 00:25:22,570 --> 00:25:26,930 >> Vanligvis hvis du gjør noe med plusses eller noen matematiske operatorer, 487 00:25:26,930 --> 00:25:32,010 det kommer til å anta noe fornuftig er bare en int. 488 00:25:32,010 --> 00:25:36,530 Så har du røye en, eller en strengen 1, eller de faktiske int 1, 489 00:25:36,530 --> 00:25:38,200 det kommer til å anta at. 490 00:25:38,200 --> 00:25:41,410 Hvis du ønsker å typecast noe, du helt kan. 491 00:25:41,410 --> 00:25:46,540 Du kan gjøre noe sånt doble her, tror jeg. 492 00:25:46,540 --> 00:25:50,370 493 00:25:50,370 --> 00:25:53,420 Og i så fall, det kommer til å si, oh. 494 00:25:53,420 --> 00:25:56,550 Jeg skal gjøre dette en dobbel fordi du eksplisitt sa det er en dobbel. 495 00:25:56,550 --> 00:26:00,370 Du kan alltid eksplisitt lage PHP gjøre noe, men. 496 00:26:00,370 --> 00:26:02,174 >> PUBLIKUM: Vent, hvorfor er et pluss 1 er det? 497 00:26:02,174 --> 00:26:03,215 >> ALLISON Buchholtz-AU: Oh. 498 00:26:03,215 --> 00:26:06,512 499 00:26:06,512 --> 00:26:07,490 There. 500 00:26:07,490 --> 00:26:08,400 Det var bare et ekko. 501 00:26:08,400 --> 00:26:10,820 Det var min feil. 502 00:26:10,820 --> 00:26:14,240 Så kan du eksplisitt fortelle det til lage noe av en viss type, 503 00:26:14,240 --> 00:26:17,980 men mesteparten av tiden, kommer det til å dynamisk bestemme at under kjøring. 504 00:26:17,980 --> 00:26:20,730 Så det kommer til å holde det gående gjennom og det kommer til å være som, OK. 505 00:26:20,730 --> 00:26:23,229 Hva gjør mest sans for at dette skal bli? 506 00:26:23,229 --> 00:26:24,520 Skulle det faktisk være en streng? 507 00:26:24,520 --> 00:26:25,090 Skal det være en int? 508 00:26:25,090 --> 00:26:25,770 Skal det være en flåte? 509 00:26:25,770 --> 00:26:26,810 Skal det være en dobbel? 510 00:26:26,810 --> 00:26:29,456 Og det vil avgjøre det for deg. 511 00:26:29,456 --> 00:26:31,980 >> Du kan tvinge den til å gjøre hva du vil, men-- 512 00:26:31,980 --> 00:26:35,032 >> PUBLIKUM: Betyr det gjør det tregere? 513 00:26:35,032 --> 00:26:37,365 ALLISON Buchholtz-AU: Vel, Jeg mener, er C svært effektiv. 514 00:26:37,365 --> 00:26:41,760 Jeg tror det er definitivt tregere fordi den har til prosessen som det kommer. 515 00:26:41,760 --> 00:26:45,200 C, jeg er nesten sikker på er raskere. 516 00:26:45,200 --> 00:26:47,620 Men selvsagt er det en mange kule ting i her 517 00:26:47,620 --> 00:26:49,190 at vi ikke trenger å bekymre seg for. 518 00:26:49,190 --> 00:26:50,981 Så, hvis vi søker gjennom en matrise, vi 519 00:26:50,981 --> 00:26:54,290 trenger ikke å faktisk lage noen søk gjennom rekke. 520 00:26:54,290 --> 00:26:56,920 Vi kan bare be om nøkkelen og PHP vil ta vare på den. 521 00:26:56,920 --> 00:26:59,510 522 00:26:59,510 --> 00:27:00,630 >> Cool. 523 00:27:00,630 --> 00:27:01,130 Awesome. 524 00:27:01,130 --> 00:27:03,937 Ser ut som slutten av mine eksempler. 525 00:27:03,937 --> 00:27:05,770 Dere kommer aldri å glemme det nå. 526 00:27:05,770 --> 00:27:08,450 Du kommer til å være som, oh, er PHP bare sånn mor som er som nei, nei, nei. 527 00:27:08,450 --> 00:27:09,325 Jeg vet hva du mener. 528 00:27:09,325 --> 00:27:11,000 Jeg vet hva du vil. 529 00:27:11,000 --> 00:27:11,580 OK. 530 00:27:11,580 --> 00:27:15,040 Så dette er forhåpentligvis nyttig for din PSet, i hvert fall i begynnelsen, 531 00:27:15,040 --> 00:27:20,290 fordi du er alt om å håndtere med skjemaer og ting fra brukeren. 532 00:27:20,290 --> 00:27:24,460 >> Så det er to måter som vi pass rundt info med PHP og HTML 533 00:27:24,460 --> 00:27:26,700 når vi passerer mellom de to tingene. 534 00:27:26,700 --> 00:27:32,330 Så vi har $ _GET, som er passert gjennom URL, og vi har $ _POST, 535 00:27:32,330 --> 00:27:36,600 som føres i meldingen kroppen, og så vi anser det skjult. 536 00:27:36,600 --> 00:27:41,660 Men én ting å forstå er at ingen av disse er ansett som sikker. 537 00:27:41,660 --> 00:27:45,580 >> Hvis du har noen som er avskjære meldingene går 538 00:27:45,580 --> 00:27:49,180 frem og tilbake mellom deg og server, kan de likevel få disse dataene. 539 00:27:49,180 --> 00:27:50,810 De må bare se litt hardere. 540 00:27:50,810 --> 00:27:54,690 Det er egentlig ikke at-- det er bare skjult fra nettadressen. 541 00:27:54,690 --> 00:27:58,820 Det er fortsatt i meldingsteksten, skjønt, så hvis de har tilgang til det, 542 00:27:58,820 --> 00:27:59,920 det er egentlig bare like-- 543 00:27:59,920 --> 00:28:01,710 >> Det er som forskjellen mellom noe 544 00:28:01,710 --> 00:28:05,010 blir skrevet på utsiden av en konvolutt og noe vesen 545 00:28:05,010 --> 00:28:06,980 skrevet på et stykke papir inni. 546 00:28:06,980 --> 00:28:10,270 Det er ikke så vanskelig å åpne konvolutten og få stykke papir inni. 547 00:28:10,270 --> 00:28:12,414 Riktignok vil det være mye lettere bare lese utsiden. 548 00:28:12,414 --> 00:28:14,330 Men det er hvordan du kan slags tenker på disse. 549 00:28:14,330 --> 00:28:16,940 Ingen av disse er virkelig vurdert sikker. 550 00:28:16,940 --> 00:28:17,790 OK? 551 00:28:17,790 --> 00:28:19,750 >> Gitt, ikke egentlig rolle for din PSet 552 00:28:19,750 --> 00:28:22,050 fordi du ikke arbeider med forretningshemmeligheter, 553 00:28:22,050 --> 00:28:25,850 men det er vanligvis en ting som vi virkelig 554 00:28:25,850 --> 00:28:29,260 liker å understreke fordi folk tror, ​​oh, vel, det er skjult. 555 00:28:29,260 --> 00:28:30,610 Det må være super sikker. 556 00:28:30,610 --> 00:28:31,140 Nei. 557 00:28:31,140 --> 00:28:32,570 Det er ikke sikker. 558 00:28:32,570 --> 00:28:35,808 Det er bare litt mindre usikker, antar jeg. 559 00:28:35,808 --> 00:28:38,500 Eller usikkert. 560 00:28:38,500 --> 00:28:41,625 >> Slik at vi faktisk har et eksempel. 561 00:28:41,625 --> 00:28:43,500 Som du vet, jeg elsker lærer mer med eksempler. 562 00:28:43,500 --> 00:28:45,070 Jeg føler at dette hjelper bedre. 563 00:28:45,070 --> 00:28:49,590 Så har vi noen enkle skjema her som faktisk, hvis dere noen gang 564 00:28:49,590 --> 00:28:51,940 forvirret om PHP, dette er virkelig liten, 565 00:28:51,940 --> 00:28:55,630 men php.net er faktisk virkelig god dokumentasjon. 566 00:28:55,630 --> 00:28:56,500 Jeg liker det. 567 00:28:56,500 --> 00:29:02,900 Jeg brukte den til å forberede seg på dette delen, så jeg kan veterinæren det for deg. 568 00:29:02,900 --> 00:29:07,760 >> Dette er et eksempel fra dem om hvordan $ _POST og $ _GET arbeid. 569 00:29:07,760 --> 00:29:09,970 Den eneste forskjellen mellom to av disse, 570 00:29:09,970 --> 00:29:13,285 foruten hvor informasjonen er vises, enten det er i URL 571 00:29:13,285 --> 00:29:16,430 eller i kroppen, er også hva metoden er. 572 00:29:16,430 --> 00:29:21,350 Så i skjemaet for HTML-- Dette er en veldig enkel HTML-skjema. 573 00:29:21,350 --> 00:29:22,760 Kan noen fortelle meg hva det gjør? 574 00:29:22,760 --> 00:29:29,471 575 00:29:29,471 --> 00:29:30,970 PUBLIKUM: Be om navn og alder. 576 00:29:30,970 --> 00:29:31,230 ALLISON Buchholtz-AU: Nettopp. 577 00:29:31,230 --> 00:29:33,330 Så vi har noen form handlinger. 578 00:29:33,330 --> 00:29:36,260 Som lar oss få vite at det er noen handle skjemaet. 579 00:29:36,260 --> 00:29:39,330 Og hva kommer til å skje er, når vi treffer Send inn, 580 00:29:39,330 --> 00:29:44,280 det kommer til å ringe action.php, som er hva dette er, 581 00:29:44,280 --> 00:29:47,180 og det kommer til å kalle det med en fremgangsmåte for $ _POST. 582 00:29:47,180 --> 00:29:51,340 Så i dette tilfellet din informasjon er skjult. 583 00:29:51,340 --> 00:29:57,020 og det er bare ditt navn, noen inngangstype kalt navn, noen alder, 584 00:29:57,020 --> 00:30:01,270 input type = "text" som vi også kaller alder. 585 00:30:01,270 --> 00:30:05,110 Og så hvis vi treffer Send inn, Send inn vil kalle action.php. 586 00:30:05,110 --> 00:30:09,800 >> Så når vi faktisk traff Send inn, vi vet at det har lagt ut, per se, 587 00:30:09,800 --> 00:30:15,290 og vi vil faktisk se dette i oppgavesettet som forhåpentligvis vil vi 588 00:30:15,290 --> 00:30:16,760 kommer til å gå gjennom en liten bit. 589 00:30:16,760 --> 00:30:21,690 Og alt det gjør her er POST er noen superglobal variabel 590 00:30:21,690 --> 00:30:23,300 som vi snakket om under foredraget. 591 00:30:23,300 --> 00:30:30,170 Og hvordan du kan tenke på $ _POST er at det er bare en assosiativ array. 592 00:30:30,170 --> 00:30:30,960 OK? 593 00:30:30,960 --> 00:30:35,930 Så dette er noen nøkkel, dette er noen viktige, og hva 594 00:30:35,930 --> 00:30:39,270 brukerundersøkelser blir en verdi for hver av dem. 595 00:30:39,270 --> 00:30:39,960 OK? 596 00:30:39,960 --> 00:30:47,240 >> Så hvis vi skulle skrive hva denne tabellen faktisk så ut rett etter at vi 597 00:30:47,240 --> 00:30:56,000 sendt inn skjemaet, ville vi har, dette er vår $ _POST, 598 00:30:56,000 --> 00:31:04,380 og noen matrise der vi har noen navn. 599 00:31:04,380 --> 00:31:17,670 La oss bare si at vi skal gjøre mitt navn, og så har vi noen alder, 21. 600 00:31:17,670 --> 00:31:19,420 Woo. 601 00:31:19,420 --> 00:31:23,550 Så dette er alt $ _POST er. $ _POST er bare en assosiativ array, OK? 602 00:31:23,550 --> 00:31:24,807 >> Den sier bare, OK. 603 00:31:24,807 --> 00:31:26,890 Hva er de tingene vi har bedt om fra brukeren? 604 00:31:26,890 --> 00:31:28,889 Hva er variabler at vi kjører rundt 605 00:31:28,889 --> 00:31:30,730 at vi har bedt om i dette skjemaet? 606 00:31:30,730 --> 00:31:33,830 Og hva er de verdier knyttet til det? 607 00:31:33,830 --> 00:31:38,750 Så i dette tilfellet, hvis jeg sendte den med et navn på alliert og en alder av 21, 608 00:31:38,750 --> 00:31:40,890 dette er hva $ _POST ser ut. 609 00:31:40,890 --> 00:31:41,570 OK? 610 00:31:41,570 --> 00:31:45,150 Og dette er hva dette PHP-filen har tilgang til. 611 00:31:45,150 --> 00:31:46,680 All right? 612 00:31:46,680 --> 00:31:51,730 >> Så i dette tilfellet, er dette akkurat som får noen andre ting fra vår array. 613 00:31:51,730 --> 00:31:55,370 I stedet for en indeks i vårt array, har vi noen nøkkel. 614 00:31:55,370 --> 00:32:00,790 Så dette kommer til å gi meg verdien på nøkkelnavn. 615 00:32:00,790 --> 00:32:05,400 Så dette kommer til å være alliert, og dette her kommer til å gi meg 616 00:32:05,400 --> 00:32:08,840 verdien på $ _POST der Nøkkelen er alder, som vil være 21. 617 00:32:08,840 --> 00:32:12,541 618 00:32:12,541 --> 00:32:14,290 Du kommer til å være gjør dette ganske mye. 619 00:32:14,290 --> 00:32:18,920 620 00:32:18,920 --> 00:32:21,590 Ja, fra hvilken del? 621 00:32:21,590 --> 00:32:24,235 >> PUBLIKUM: Da du var peker mot bunndelen. 622 00:32:24,235 --> 00:32:25,860 ALLISON Buchholtz-AU: Denne nederste delen? 623 00:32:25,860 --> 00:32:26,359 OK. 624 00:32:26,359 --> 00:32:31,897 Så du forstår at dette er vår HTML form, og vi har noen metode $ _POST, 625 00:32:31,897 --> 00:32:32,480 som teller. 626 00:32:32,480 --> 00:32:35,410 Dette kan også være $ _GET, men for dette formål 627 00:32:35,410 --> 00:32:36,910 vi bare kommer til å si at det er $ _POST. 628 00:32:36,910 --> 00:32:42,700 Når vi sender inn dette skjemaet, er dette del av en PHP-fil som heter. 629 00:32:42,700 --> 00:32:48,530 Så dette PHP-filen er nå kommer til å utføre gitt informasjon fra vår HTML 630 00:32:48,530 --> 00:32:49,840 form. 631 00:32:49,840 --> 00:32:52,670 >> Så hva det gjør er, når vi treffer Send på vår HTML-skjema, 632 00:32:52,670 --> 00:32:59,220 det passerer du dette superglobal, som er bare en assosiativ array. 633 00:32:59,220 --> 00:33:00,306 Det er denne. 634 00:33:00,306 --> 00:33:02,840 Det er akkurat som passerer som til filen. 635 00:33:02,840 --> 00:33:04,540 Og hva den sier er, OK, her er $ _POST. 636 00:33:04,540 --> 00:33:05,706 Det er din assosiativ array. 637 00:33:05,706 --> 00:33:07,000 Gjøre med det hva du vil. 638 00:33:07,000 --> 00:33:08,980 Og vi sier, OK. 639 00:33:08,980 --> 00:33:13,620 Gi meg verdien på navn, og gi meg verdien på alder. 640 00:33:13,620 --> 00:33:18,150 >> Så dette er bare nøkler, og dette er vår array. 641 00:33:18,150 --> 00:33:19,190 Betyr det fornuftig? 642 00:33:19,190 --> 00:33:19,815 >> PUBLIKUM: Mhmm. 643 00:33:19,815 --> 00:33:21,266 ALLISON Buchholtz-AU: Awesome. 644 00:33:21,266 --> 00:33:24,432 PUBLIKUM: Hvis du må sende inn den skjemaet betyr det bare skrive over dataene? 645 00:33:24,432 --> 00:33:25,557 ALLISON Buchholtz-AU: Yeah. 646 00:33:25,557 --> 00:33:26,160 Mhmm? 647 00:33:26,160 --> 00:33:30,300 >> PUBLIKUM: Hvorfor har dere å presisere at det er en int? 648 00:33:30,300 --> 00:33:34,950 >> ALLISON Buchholtz-AU: I dette tilfellet, brukeren er bare å tvinge den til å være en int. 649 00:33:34,950 --> 00:33:35,749 >> PUBLIKUM: OK. 650 00:33:35,749 --> 00:33:38,540 ALLISON Buchholtz-AU: Jeg vet ikke hvis du faktisk trenger det, 651 00:33:38,540 --> 00:33:43,850 men for sine formål, bestemte de seg at de ønsket å være en int. 652 00:33:43,850 --> 00:33:45,590 De er bare typecasting det. 653 00:33:45,590 --> 00:33:47,760 Kanskje de bruker det som noe annet senere. 654 00:33:47,760 --> 00:33:49,872 Dette er bare ett tekstutdrag. 655 00:33:49,872 --> 00:33:50,372 Ja? 656 00:33:50,372 --> 00:33:57,246 >> PUBLIKUM: Hva om de skrev 12, T-V-E-L-V-E, for alder? 657 00:33:57,246 --> 00:33:59,704 ALLISON Buchholtz-AU: Hvis de prøvde å skrive det som en int? 658 00:33:59,704 --> 00:34:00,160 PUBLIKUM: Yeah. 659 00:34:00,160 --> 00:34:02,076 ALLISON Buchholtz-AU: I glemmer hva som gjør. 660 00:34:02,076 --> 00:34:05,540 Jeg tror det kan prøve å konvertere det første tegnet til en int, 661 00:34:05,540 --> 00:34:11,360 eller ta verdien og konvertere det, men jeg glemmer nøyaktig hva det. 662 00:34:11,360 --> 00:34:14,570 Være en morsom ting å skrive et program og prøve. 663 00:34:14,570 --> 00:34:16,389 Gjør et par linjer. 664 00:34:16,389 --> 00:34:21,310 OK, slik at dette er en av de viktigste ting som du kommer til å gjøre. 665 00:34:21,310 --> 00:34:23,969 Jeg skal forhåpentligvis gå gjennom et par av filer 666 00:34:23,969 --> 00:34:25,260 fra PSet med dere. 667 00:34:25,260 --> 00:34:28,850 Det ser ut som vi kommer til å har tid, slik at vi kan gjøre det. 668 00:34:28,850 --> 00:34:31,190 >> Men du kommer til å være gjør en masse ting 669 00:34:31,190 --> 00:34:36,130 som dette, hvor du passerer ting fra et HTML-skjema 670 00:34:36,130 --> 00:34:42,130 inn i denne PHP form som vil da utføre noen sett med instruksjoner 671 00:34:42,130 --> 00:34:44,460 på data som ble levert. 672 00:34:44,460 --> 00:34:46,864 Det er bokstavelig talt kjerne av din PSet. 673 00:34:46,864 --> 00:34:48,130 Yeah. 674 00:34:48,130 --> 00:34:52,040 >> PUBLIKUM: Den type = "submit", som gjør en knapp på HTML-skjema. 675 00:34:52,040 --> 00:34:54,280 Er det måten å ringe den knappen noe? 676 00:34:54,280 --> 00:34:56,040 Så du ville være som name = "submit"? 677 00:34:56,040 --> 00:34:59,170 Eller er den knappen bare skal være tømme akkurat nå, fordi du bare 678 00:34:59,170 --> 00:35:00,970 ga det en type, ikke et navn. 679 00:35:00,970 --> 00:35:03,803 >> ALLISON Buchholtz-AU: Jeg tror det er bare kommer til å være tom akkurat nå. 680 00:35:03,803 --> 00:35:07,320 Vi kan definitivt se på PSet, fordi vi vil definitivt 681 00:35:07,320 --> 00:35:10,265 være å se på registrere type ting. 682 00:35:10,265 --> 00:35:14,610 Men ja, kan du definitivt spesifisere teksten du vil ha på knappen. 683 00:35:14,610 --> 00:35:17,560 OK, så SQL. 684 00:35:17,560 --> 00:35:21,880 >> Når du kjøpe og selge aksjer, du trenger for å holde styr på dem. 685 00:35:21,880 --> 00:35:25,760 Så måten vi kommer til å gjøre det på er med SQL, som er bare en database. 686 00:35:25,760 --> 00:35:29,200 Tenk på det som en tabell der du holder all denne informasjonen 687 00:35:29,200 --> 00:35:30,649 om dine forskjellige brukere. 688 00:35:30,649 --> 00:35:32,940 Og dere er faktisk kommer til å lage en av disse. 689 00:35:32,940 --> 00:35:34,290 Det er ganske kult. 690 00:35:34,290 --> 00:35:38,470 >> Og det er bare fire viktigste tingene at du trenger å vite for denne PSet, 691 00:35:38,470 --> 00:35:43,120 og de er oppdatert, slik at du utgangspunktet oppdatere dataene. 692 00:35:43,120 --> 00:35:45,190 Det forutsetter at det allerede er der. 693 00:35:45,190 --> 00:35:48,320 Hvis den ikke er der, kommer det til å treffe deg med en feil, 694 00:35:48,320 --> 00:35:51,300 så kanskje du vil sjekke. 695 00:35:51,300 --> 00:35:55,882 Og du vil oppdatere on-- jeg bør faktisk-jeg har tid, 696 00:35:55,882 --> 00:35:57,090 Jeg skal skrive et par av disse. 697 00:35:57,090 --> 00:36:03,370 Jeg vil faktisk gi dere en par prøven, fulle SQL-kommandoer, 698 00:36:03,370 --> 00:36:06,530 fordi disse er bare hoved seg, men du kan bli med dem sammen. 699 00:36:06,530 --> 00:36:09,780 Så jeg skal gjøre det, og jeg skal sende det ut til deg med disse merknadene. 700 00:36:09,780 --> 00:36:14,580 >> Så hvis du ønsker å oppdatere noe, trenger å fortelle den hva du oppdaterer 701 00:36:14,580 --> 00:36:16,390 og hvor du oppdaterer den. 702 00:36:16,390 --> 00:36:27,770 Så en typisk SQL kommando ville være oppdatering ID der noe er lik noe. 703 00:36:27,770 --> 00:36:31,490 Eller som oppdatering adresse hvor ID er lik 3, 704 00:36:31,490 --> 00:36:37,040 og dette vil oppdatere adressefeltet av bruker som har en ID på tre. 705 00:36:37,040 --> 00:36:37,630 OK? 706 00:36:37,630 --> 00:36:44,300 >> Så hvis du går til SQL og W3Schools, De har awesome eksempler. 707 00:36:44,300 --> 00:36:46,880 Faktisk kan jeg trekke noen opp i en liten bit. 708 00:36:46,880 --> 00:36:49,810 Og deretter sette inn, du er bare setter visse verdier der. 709 00:36:49,810 --> 00:36:56,810 Så hvis du prøver å lage noen nye oppføring, slik at du oppretter en ny bruker, 710 00:36:56,810 --> 00:37:00,970 du kunne gjøre innsatsen i hva databasen heter, 711 00:37:00,970 --> 00:37:03,540 og du ville ha alle disse verdiene. 712 00:37:03,540 --> 00:37:06,250 >> Da har du velger, velge verdier for å se. 713 00:37:06,250 --> 00:37:09,640 Så hvis du prøver å sjekke for å se om en bruker eksisterer eller er du 714 00:37:09,640 --> 00:37:12,030 prøver å hente spesifikke informasjon om en bruker 715 00:37:12,030 --> 00:37:13,790 du kommer til å bruke velger. 716 00:37:13,790 --> 00:37:17,564 Og deretter slette, tror jeg, er ganske enkel der. 717 00:37:17,564 --> 00:37:19,480 Du bare slette noe fra bordet. 718 00:37:19,480 --> 00:37:25,960 Og faktisk, la meg faktisk trekke opp noen eksempler for dere. 719 00:37:25,960 --> 00:37:29,350 Å se, det er min 61-siden. 720 00:37:29,350 --> 00:37:32,940 >> Så hvis vi går til W3Schools, forhåpentligvis er det opp igjen. 721 00:37:32,940 --> 00:37:35,640 Ja, elsker det. 722 00:37:35,640 --> 00:37:37,680 Vi går til SQL. 723 00:37:37,680 --> 00:37:39,160 Så, dette er noe her. 724 00:37:39,160 --> 00:37:42,548 Så dette er en veldig enkel SELECT. 725 00:37:42,548 --> 00:37:45,620 Man, jeg elsker denne funksjonen. 726 00:37:45,620 --> 00:37:50,030 Så kan du ha SELECT enkelte felt fra kunder. 727 00:37:50,030 --> 00:37:55,340 I dette tilfellet refererer til kundene online database som du bruker, 728 00:37:55,340 --> 00:38:00,480 så uansett hva tabellen kalles, og stjerners betyr bare velge alt. 729 00:38:00,480 --> 00:38:01,710 Gi meg hver eneste en. 730 00:38:01,710 --> 00:38:05,810 731 00:38:05,810 --> 00:38:10,720 >> Så, jeg vil bare gi dere en par eksempler på hvor dette er. 732 00:38:10,720 --> 00:38:15,570 733 00:38:15,570 --> 00:38:17,960 Så vi har SELECT, UPDATE. 734 00:38:17,960 --> 00:38:21,460 735 00:38:21,460 --> 00:38:25,420 Så her er litt av den generelle syntaksen. 736 00:38:25,420 --> 00:38:31,080 Så OPPDATERE, uansett Tabellnavnet er, og deretter SET 737 00:38:31,080 --> 00:38:35,060 er der du faktisk kommer å være hvilke data du bytter. 738 00:38:35,060 --> 00:38:38,340 Så dette kan be-- Let meg gjøre et eksempel her. 739 00:38:38,340 --> 00:38:44,146 740 00:38:44,146 --> 00:38:45,145 Så dette kommer til å be-- 741 00:38:45,145 --> 00:39:10,250 742 00:39:10,250 --> 00:39:10,750 >> OK. 743 00:39:10,750 --> 00:39:13,585 Så jeg laget en liten database for oss. 744 00:39:13,585 --> 00:39:16,260 Vi kommer til å ha noen ID, noen år, og noen navngitt. 745 00:39:16,260 --> 00:39:23,022 Så ID en kommer til å være året '15, og vi bare kommer til å gjøre det meg. 746 00:39:23,022 --> 00:39:24,980 Hvem ønsker å være den nest person i vårt bord? 747 00:39:24,980 --> 00:39:25,480 Noen. 748 00:39:25,480 --> 00:39:28,192 749 00:39:28,192 --> 00:39:30,525 Jeg bare kommer til å velge Emma fordi navnet ditt raskt. 750 00:39:30,525 --> 00:39:32,220 Emma, ​​hvilket år er du? 751 00:39:32,220 --> 00:39:33,180 >> PUBLIKUM: Hvilket år? 752 00:39:33,180 --> 00:39:33,600 >> ALLISON Buchholtz-AU: Yeah. 753 00:39:33,600 --> 00:39:34,183 >> PUBLIKUM: '16. 754 00:39:34,183 --> 00:39:35,780 ALLISON Buchholtz-AU: '16. 755 00:39:35,780 --> 00:39:37,920 Du bare kommer til å være mitt marsvin for i dag. 756 00:39:37,920 --> 00:39:40,490 OK, så vi har disse to menneskene. 757 00:39:40,490 --> 00:39:42,194 Egentlig, la meg gjøre dette. 758 00:39:42,194 --> 00:39:45,110 La oss si at jeg hørte henne galt, og jeg faktisk sa hun er et år yngre. 759 00:39:45,110 --> 00:39:46,980 Hun er '17. 760 00:39:46,980 --> 00:39:50,790 Det vi ønsker å gjøre her, hvis vi ønsket å oppdatere Emmas år 761 00:39:50,790 --> 00:39:57,480 å være korrekt å bruke det, hva vi ville gjøre er at vi vil si UPDATE data over her. 762 00:39:57,480 --> 00:40:05,140 763 00:40:05,140 --> 00:40:09,130 >> Og dette kan alle være på en linje, men siden jeg er komprimert for plass her, 764 00:40:09,130 --> 00:40:11,450 Jeg kommer til å skrive her. 765 00:40:11,450 --> 00:40:12,740 Og vi ønsker å sette. 766 00:40:12,740 --> 00:40:16,770 Så dette er tabellen vi oppdaterer. 767 00:40:16,770 --> 00:40:21,600 SET kommer til å være hva kolonne eller hvilke data som vi faktisk endring. 768 00:40:21,600 --> 00:40:30,670 Det vi endrer er året, så vi kommer til å si SET år = 16, 769 00:40:30,670 --> 00:40:39,470 og deretter HVOR forteller oss hvilken bruker eller hva rad er vi faktisk å oppdatere denne. 770 00:40:39,470 --> 00:40:40,980 >> Så hvor? 771 00:40:40,980 --> 00:40:42,600 Vi har to alternativer her. 772 00:40:42,600 --> 00:40:43,450 Hva er de to? 773 00:40:43,450 --> 00:40:44,580 Disse er unike, ikke sant? 774 00:40:44,580 --> 00:40:47,150 Så navnene våre er unike og vår ID er unik, 775 00:40:47,150 --> 00:40:50,880 så hva er de to alternativene for hvor vi kunne gjøre dette? 776 00:40:50,880 --> 00:40:51,970 Jeg skal gi deg en. 777 00:40:51,970 --> 00:40:57,450 Vi kunne gjøre WHERE ID = 2, eller vi kunne gjøre hva 778 00:40:57,450 --> 00:41:00,920 hvis vi skal av dette paradigmet her. 779 00:41:00,920 --> 00:41:02,180 >> PUBLIKUM: [uhørlig]. 780 00:41:02,180 --> 00:41:03,430 ALLISON Buchholtz-AU: Nettopp. 781 00:41:03,430 --> 00:41:07,300 Så kunne vi også gjøre name = Emma. 782 00:41:07,300 --> 00:41:10,189 783 00:41:10,189 --> 00:41:11,480 Og en av disse ville fungere. 784 00:41:11,480 --> 00:41:14,040 Og vi kjørte dette, ville det være som, OK. 785 00:41:14,040 --> 00:41:15,300 Vi kommer til å endre det. 786 00:41:15,300 --> 00:41:17,680 Du er faktisk 16, så nå er du til høyre igjen. 787 00:41:17,680 --> 00:41:21,410 OK, slik at dette ville bli super nyttig i din PSet 788 00:41:21,410 --> 00:41:25,157 der kanskje noen bestemte å kjøpe 100 aksjer i Apple, 789 00:41:25,157 --> 00:41:26,740 og da de var like, bare tuller. 790 00:41:26,740 --> 00:41:28,320 Jeg vil bare ha 90 aksjer. 791 00:41:28,320 --> 00:41:33,630 Og så de selger 10 av dem, slik at du må oppdatere mengden av aksjer 792 00:41:33,630 --> 00:41:34,330 at de har. 793 00:41:34,330 --> 00:41:39,050 Så, oppdatering aksjer, oppdatere tabellen. 794 00:41:39,050 --> 00:41:39,950 >> OK. 795 00:41:39,950 --> 00:41:42,710 Så det er ett eksempel der. 796 00:41:42,710 --> 00:41:45,131 Det er oppdateringen syntaks. 797 00:41:45,131 --> 00:41:45,630 SLETT. 798 00:41:45,630 --> 00:41:50,391 799 00:41:50,391 --> 00:41:50,890 Oh. 800 00:41:50,890 --> 00:41:53,580 Sett inn er vårt andre. 801 00:41:53,580 --> 00:41:57,950 Så dette er en her veldig like. 802 00:41:57,950 --> 00:42:00,430 Vi kunne bare si, i denne saken la oss legge til noen. 803 00:42:00,430 --> 00:42:02,310 Vi kan legge til Ben denne gangen. 804 00:42:02,310 --> 00:42:13,300 Vi INSERT INTO, og vi ønsker navnet på vårt bord. 805 00:42:13,300 --> 00:42:16,580 I dette tilfelle er det data. 806 00:42:16,580 --> 00:42:25,790 >> Og da har vi bare vil, du kommer til sier VERDIER, og hva du skal gjøre 807 00:42:25,790 --> 00:42:29,147 er du faktisk trenger for å være sikker at du har noe for hver rad 808 00:42:29,147 --> 00:42:29,730 som du ønsker. 809 00:42:29,730 --> 00:42:31,090 Du bare sette dem i rekkefølge. 810 00:42:31,090 --> 00:42:33,920 Så i dette tilfellet, ville vi si tre. 811 00:42:33,920 --> 00:42:35,280 Du er 18, ikke sant Ben? 812 00:42:35,280 --> 00:42:36,439 >> PUBLIKUM: 19. 813 00:42:36,439 --> 00:42:37,480 ALLISON Buchholtz-AU: 19? 814 00:42:37,480 --> 00:42:38,360 PUBLIKUM: 19. 815 00:42:38,360 --> 00:42:39,943 ALLISON Buchholtz-AU: Din årets '19? 816 00:42:39,943 --> 00:42:41,459 Du oppgraderer i '18, ikke sant? 817 00:42:41,459 --> 00:42:42,000 PUBLIKUM: Oh. 818 00:42:42,000 --> 00:42:42,870 ALLISON Buchholtz-AU: Graduation år. 819 00:42:42,870 --> 00:42:43,842 PUBLIKUM: OK. 820 00:42:43,842 --> 00:42:46,070 ALLISON Buchholtz-AU: Jeg var som, er du 821 00:42:46,070 --> 00:42:48,550 allerede planlegger å ta et friår her? 822 00:42:48,550 --> 00:42:52,590 Så, '18, har vi Ben. 823 00:42:52,590 --> 00:43:01,950 Så i dette tilfelle, ville det gå gjennom, det ville opprette en ny oppføring her. 824 00:43:01,950 --> 00:43:04,520 825 00:43:04,520 --> 00:43:05,750 Cool. 826 00:43:05,750 --> 00:43:07,570 Ikke så ille, ikke sant? 827 00:43:07,570 --> 00:43:09,850 Mye av dette kommer til å være syntaks for dere. 828 00:43:09,850 --> 00:43:13,280 Konsepter bør komme, forhåpentligvis, relativt lett. 829 00:43:13,280 --> 00:43:17,270 Syntaksen er den eneste som kan være litt vanskelig. 830 00:43:17,270 --> 00:43:20,590 >> Og da er vår siste er DELETE, og som du legger merke til, 831 00:43:20,590 --> 00:43:22,260 Jeg anbefaler denne nettsiden. 832 00:43:22,260 --> 00:43:24,110 Det er flott. 833 00:43:24,110 --> 00:43:25,620 Det er massevis av ting. 834 00:43:25,620 --> 00:43:30,550 Derfor, på samme måte som vi hadde noen UPDATE, DELETE er veldig lik. 835 00:43:30,550 --> 00:43:33,800 I stedet har vi Slett fra data. 836 00:43:33,800 --> 00:43:37,506 Så i dette tilfellet vår siste jeg skal skrive ned her. 837 00:43:37,506 --> 00:43:38,880 La oss si at vi ønsket å slette meg. 838 00:43:38,880 --> 00:43:44,670 839 00:43:44,670 --> 00:43:48,750 Jeg kan ikke skrive i dag. 840 00:43:48,750 --> 00:43:51,720 SLETT fra uansett tabellen vi er i, data. 841 00:43:51,720 --> 00:43:56,160 842 00:43:56,160 --> 00:44:02,128 Og det er faktisk tre måter vi kunne velge å slette meg. 843 00:44:02,128 --> 00:44:06,040 844 00:44:06,040 --> 00:44:09,780 >> Kan dere fortelle meg hva de tre måter er, hvordan du kan slette meg? 845 00:44:09,780 --> 00:44:12,880 846 00:44:12,880 --> 00:44:15,400 ID er lik 1, hvor ID er lik 1. 847 00:44:15,400 --> 00:44:19,470 Vi kunne gjøre der året lik 15, eller der Navnet tilsvarer Allison. 848 00:44:19,470 --> 00:44:21,540 selvfølgelig, det er bare tre forskjellige måter, 849 00:44:21,540 --> 00:44:24,570 fordi disse er alle unike. 850 00:44:24,570 --> 00:44:28,000 Vanligvis i tabellen, og spesielt i din PSet, 851 00:44:28,000 --> 00:44:32,105 du kommer til å sette en av disse kolonnene for å være unike. 852 00:44:32,105 --> 00:44:36,252 >> Det er trolig kommer til å være noen unike ID nummer, fordi hvis du have-- faktisk, 853 00:44:36,252 --> 00:44:37,710 det kan faktisk la deg ha to. 854 00:44:37,710 --> 00:44:40,520 Jeg kan ikke huske om det vil la du har to av samme ting. 855 00:44:40,520 --> 00:44:42,000 >> PUBLIKUM: Så det ville endre sin atferd. 856 00:44:42,000 --> 00:44:43,291 >> ALLISON Buchholtz-AU: Det ville. 857 00:44:43,291 --> 00:44:46,280 Det vil føre til atferd som er uventet, at du ikke kan egentlig forutse. 858 00:44:46,280 --> 00:44:53,040 Så du vil definitivt ha en kolonne i databasen som vil være unikt, 859 00:44:53,040 --> 00:44:55,760 og det er vanligvis kan du angi det slik at det er som en unik ID, 860 00:44:55,760 --> 00:44:59,884 og det vil bare oppdatere hver gang du setter inn i tabellen. 861 00:44:59,884 --> 00:45:02,050 Hver gang du oppretter en ny rad, vil det automatisk 862 00:45:02,050 --> 00:45:04,190 øke og gi det litt unik ID. 863 00:45:04,190 --> 00:45:05,960 Så hint for din PSet. 864 00:45:05,960 --> 00:45:08,560 865 00:45:08,560 --> 00:45:09,160 OK. 866 00:45:09,160 --> 00:45:11,575 Så det er SQL. 867 00:45:11,575 --> 00:45:18,170 868 00:45:18,170 --> 00:45:22,140 >> Så nå skal vi snakke om den aller siste ting, noe som stemmer overens 869 00:45:22,140 --> 00:45:24,770 faktisk ganske godt med PSet, om det ville gå fremover. 870 00:45:24,770 --> 00:45:28,210 Så MVC, modell view controller. 871 00:45:28,210 --> 00:45:32,480 Dette er egentlig bare en måte å holde ting organisert. 872 00:45:32,480 --> 00:45:36,910 På samme måte med C ber vi dere å lage funksjoner og separate ting 873 00:45:36,910 --> 00:45:42,350 ut, er dette bare en måte å skille ut koden når du gjør webutvikling. 874 00:45:42,350 --> 00:45:46,850 >> Så det gjør ting mye mer elegant og forenklet, 875 00:45:46,850 --> 00:45:49,310 og dette er faktisk den måten at PSet er faktisk 876 00:45:49,310 --> 00:45:52,460 satt opp, så om du liker det eller ikke, du kommer til å lære det, 877 00:45:52,460 --> 00:45:54,251 selv om du ikke tror du lærer det. 878 00:45:54,251 --> 00:45:56,580 879 00:45:56,580 --> 00:46:01,950 Og en ting er, det kan du også gjøre mye mer som en brukersamarbeid. 880 00:46:01,950 --> 00:46:05,770 >> Så da jeg tok CS50, gjorde jeg en webside for mitt siste prosjekt, 881 00:46:05,770 --> 00:46:09,190 og jeg var som, vil jeg håndtere databasen ting. 882 00:46:09,190 --> 00:46:12,450 Jeg skal gjøre bakenden ting, og min romkamerat som jeg tok med seg 883 00:46:12,450 --> 00:46:14,270 var veldig fancy. 884 00:46:14,270 --> 00:46:17,370 Hun gjør scenografi, og hun ønsket å gjøre det hele pen. 885 00:46:17,370 --> 00:46:18,435 Så jeg er liksom, OK. 886 00:46:18,435 --> 00:46:20,310 Du kan ta vare på alle foran slutten ting. 887 00:46:20,310 --> 00:46:22,660 >> Og ting er, som vi får se veldig snart, 888 00:46:22,660 --> 00:46:26,130 at modellen visning kontrolleren lar deg helt skille at koden slik 889 00:46:26,130 --> 00:46:29,260 at jeg kan jobbe på implementere våre sider, 890 00:46:29,260 --> 00:46:31,266 og manipulere informasjon i våre databaser, 891 00:46:31,266 --> 00:46:34,140 og hun kunne bare gjøre ting pen, og vi var begge veldig fornøyd, 892 00:46:34,140 --> 00:46:36,750 fordi vi fikk gjøre hva vi begge ønsket, og vi 893 00:46:36,750 --> 00:46:38,400 trengte ikke å forholde seg til den andre. 894 00:46:38,400 --> 00:46:40,377 >> Så vi hang ut sammen. 895 00:46:40,377 --> 00:46:41,210 Vi liker å henge ut. 896 00:46:41,210 --> 00:46:45,649 Jeg bare ikke ønsker å forholde seg til all CSS og HTML ting. 897 00:46:45,649 --> 00:46:46,940 Jeg var like, gjør du det pen. 898 00:46:46,940 --> 00:46:49,420 Jeg skal forholde seg til databasen. 899 00:46:49,420 --> 00:46:52,620 Så vi har dette virkelig kjølig, flott lite bord. 900 00:46:52,620 --> 00:46:55,440 Jeg elsker tabeller. 901 00:46:55,440 --> 00:46:59,680 Og i utgangspunktet, den modellen du kan tenker på er bare databasen. 902 00:46:59,680 --> 00:47:03,630 >> Jeg var modell person for prosjektet mitt. 903 00:47:03,630 --> 00:47:06,800 Det handler om lagring av informasjon og organisere dataene. 904 00:47:06,800 --> 00:47:09,790 Så det er det vi liker å kalle bakenden. 905 00:47:09,790 --> 00:47:13,260 Så dere skal håndtere SQL-databasen og datafiler. 906 00:47:13,260 --> 00:47:14,650 Det er din modell. 907 00:47:14,650 --> 00:47:17,800 >> Ditt syn, som du kanskje tenker, hva slags er fornuftig, 908 00:47:17,800 --> 00:47:20,610 er hva brukeren faktisk ser. 909 00:47:20,610 --> 00:47:22,110 Det er brukergrensesnittet. 910 00:47:22,110 --> 00:47:24,359 Det er den fronten vendt komponent. 911 00:47:24,359 --> 00:47:26,650 Så det er hva min romkamerat fikk jobbe med hele tiden. 912 00:47:26,650 --> 00:47:27,660 Hun var super fornøyd. 913 00:47:27,660 --> 00:47:31,580 Så det er all HTML, og det er veldig lite PHP. 914 00:47:31,580 --> 00:47:34,420 >> Hvis du bare snakker om hva som blir vist til brukeren, 915 00:47:34,420 --> 00:47:36,576 vi snakker om hypertekst. 916 00:47:36,576 --> 00:47:37,950 Vi snakker om hvordan det ser ut. 917 00:47:37,950 --> 00:47:41,400 Vi snakker ikke om logikk, eller betingelser, eller whatnot. 918 00:47:41,400 --> 00:47:45,620 Alle som blir håndtert av kontrolleren, OK? 919 00:47:45,620 --> 00:47:49,470 Så som håndterer brukeren ber om og får informasjonen. 920 00:47:49,470 --> 00:47:54,750 >> Så en ting du bør vite om din PSet er at i dine synspunkter, 921 00:47:54,750 --> 00:47:57,650 noe som faktisk er visning av informasjon 922 00:47:57,650 --> 00:48:00,530 bør aldri være å gjøre samtaler til din modell. 923 00:48:00,530 --> 00:48:02,570 Alt dette blir håndtert i kontrolleren. 924 00:48:02,570 --> 00:48:06,950 Kontrolleren er en formidler mellom disse to. 925 00:48:06,950 --> 00:48:10,280 Det vil spørre modellen for visse typer informasjon. 926 00:48:10,280 --> 00:48:12,610 Det kan iterere over at informasjon, finne ut 927 00:48:12,610 --> 00:48:15,110 hva du faktisk trenger fra det, hva du skal gjøre med det, 928 00:48:15,110 --> 00:48:17,860 og da vil det gå på akkurat den informasjonen du 929 00:48:17,860 --> 00:48:24,670 trenger til visning for deg å skrive den ut ut eller vise det til brukeren, OK? 930 00:48:24,670 --> 00:48:28,690 >> Fordi vi se utsikten som hva som vender mot brukeren, 931 00:48:28,690 --> 00:48:31,340 så det vil være mye enklere for dem å finne ut, 932 00:48:31,340 --> 00:48:34,980 oh, hvis du gjør noen kaller til din modell 933 00:48:34,980 --> 00:48:39,152 og du ber for alle brukere som starter med bokstaven A, 934 00:48:39,152 --> 00:48:41,985 og du gjør det i ditt syn, noen som kan se din nettside 935 00:48:41,985 --> 00:48:43,350 potensielt kan få tilgang til det. 936 00:48:43,350 --> 00:48:44,740 >> Du trenger ikke nødvendigvis ønsker det. 937 00:48:44,740 --> 00:48:48,560 Du ønsker ikke at folk skal se mer inn i databasen enn hva 938 00:48:48,560 --> 00:48:49,800 de bør se. 939 00:48:49,800 --> 00:48:51,560 Bare sine spesifikke preferanser. 940 00:48:51,560 --> 00:48:53,840 Så kontrolleren håndterer alt dette. 941 00:48:53,840 --> 00:48:59,800 Så alle dine Php filer som vi får se du kan vurdere dine kontroller filer. 942 00:48:59,800 --> 00:49:02,710 Og det er der du er virkelig kommer til å være 943 00:49:02,710 --> 00:49:06,500 ber om ting fra databasen, og itera eller manipulere 944 00:49:06,500 --> 00:49:10,670 det som nødvendig før passerer den på å bli sett. 945 00:49:10,670 --> 00:49:12,830 >> Det er en veldig kul PSet, etter min mening. 946 00:49:12,830 --> 00:49:15,580 Jeg tror det er litt mer som øyeblikkelig tilfredsstillelse, 947 00:49:15,580 --> 00:49:17,990 fordi du implementere en mange små små ting, 948 00:49:17,990 --> 00:49:20,250 og hver ting skal fungere på egen hånd. 949 00:49:20,250 --> 00:49:24,180 Ikke liker, gjør alt og deretter se om det fungerer. 950 00:49:24,180 --> 00:49:26,570 Som med programvare hvor du er som jeg er 951 00:49:26,570 --> 00:49:28,910 egentlig håper dette er rett, fordi hvis det ikke er det, 952 00:49:28,910 --> 00:49:30,743 det er mange av plasserer det kunne være galt. 953 00:49:30,743 --> 00:49:34,220 954 00:49:34,220 --> 00:49:35,110 >> OK. 955 00:49:35,110 --> 00:49:39,744 Bare pass på at jeg sa alt jeg trengte å si om MVC. 956 00:49:39,744 --> 00:49:40,680 Yeah. 957 00:49:40,680 --> 00:49:41,347 Cool. 958 00:49:41,347 --> 00:49:47,340 >> Så i CS50 Finance, har vi vår modell, som jeg sa nettopp her. 959 00:49:47,340 --> 00:49:51,810 Det kommer til å bli MySQL og phpMyAdmin. 960 00:49:51,810 --> 00:49:55,130 Jeg kan definitivt trekke dem opp slik dere får en sjanse til å se på det. 961 00:49:55,130 --> 00:49:59,250 Som jeg sa tidligere, det er din SQL database fungerer som din modell, 962 00:49:59,250 --> 00:50:03,600 og du kan sende det vi kaller spørringer, som er bare disse slags ting. 963 00:50:03,600 --> 00:50:04,914 Disse kalles en spørring. 964 00:50:04,914 --> 00:50:07,830 Dette er en spørring, der du bare spør databasen for noe, 965 00:50:07,830 --> 00:50:09,810 eller du endrer din database på en eller annen måte. 966 00:50:09,810 --> 00:50:11,470 Det er alt det er. 967 00:50:11,470 --> 00:50:16,040 Og du gjør det med funksjonene vi har gitt deg her. 968 00:50:16,040 --> 00:50:20,500 >> Du kan også manipulere dem for hånd via phpMyAdmin, 969 00:50:20,500 --> 00:50:22,170 som vi kan definitivt ta en titt på. 970 00:50:22,170 --> 00:50:25,160 Jeg skal lage en prøve database med dere. 971 00:50:25,160 --> 00:50:25,660 OK. 972 00:50:25,660 --> 00:50:26,680 Så, controller. 973 00:50:26,680 --> 00:50:30,730 Så i dette tilfellet, hvis du varsel, er dette alt PHP. 974 00:50:30,730 --> 00:50:33,430 Legg merke til at er slags din viktigste av kontrolleren 975 00:50:33,430 --> 00:50:35,410 er at det skal være stort sett PHP. 976 00:50:35,410 --> 00:50:39,590 Hvis du har HTML i kontrolleren, ikke helt sikker på hva som skjer der. 977 00:50:39,590 --> 00:50:42,495 På samme måte som jeg sa, hvis du klarer å [uhørbart] med HTML, 978 00:50:42,495 --> 00:50:43,810 Jeg er ekte interessert. 979 00:50:43,810 --> 00:50:49,150 >> Så det vi har her er du har noen spørsmål. 980 00:50:49,150 --> 00:50:53,700 Spørring er en funksjon som vi bygget for dere. 981 00:50:53,700 --> 00:50:56,935 Det er som en wrapper for å gjøre spørringer til databasen litt enklere. 982 00:50:56,935 --> 00:51:01,441 Hvis du ikke har det, syntaksen for faktisk snakke med din SQL database 983 00:51:01,441 --> 00:51:03,690 ville være annerledes, så vi bare levere det for dere. 984 00:51:03,690 --> 00:51:05,490 Vi liker å gjøre livet enkelt. 985 00:51:05,490 --> 00:51:09,050 >> Så i dette tilfellet, kan dere fortelle meg hva denne linjen gjør? 986 00:51:09,050 --> 00:51:11,860 987 00:51:11,860 --> 00:51:13,487 SELECT * fra noen bord. 988 00:51:13,487 --> 00:51:15,320 PUBLIKUM: Velg alt fra denne tabellen. 989 00:51:15,320 --> 00:51:16,570 ALLISON Buchholtz-AU: Nettopp. 990 00:51:16,570 --> 00:51:18,750 Så det er å si, gi meg alt fra denne tabellen. 991 00:51:18,750 --> 00:51:22,430 Og det er å lagre den i noen variable resultat. 992 00:51:22,430 --> 00:51:27,720 Og dette sier, hvis resultatet er ikke lik til false, så vi gjør hver enkelt av dette. 993 00:51:27,720 --> 00:51:32,390 Så hvis det er ingenting her, hvis din tabellens tomt eller det bare ikke finnes, 994 00:51:32,390 --> 00:51:33,640 det kommer til å returnere falsk. 995 00:51:33,640 --> 00:51:36,431 Så i dette tilfellet, vi bare gjør sikker på at noe var faktisk 996 00:51:36,431 --> 00:51:37,520 returneres til oss. 997 00:51:37,520 --> 00:51:40,070 >> Og så her har vi vår store foreach løkke 998 00:51:40,070 --> 00:51:44,380 at vi itera over vår resultat, og vi kaller det ro, 999 00:51:44,380 --> 00:51:51,080 og vi sier gjengi denne malen hvor dataene er dette resultatet. 1000 00:51:51,080 --> 00:51:52,170 OK? 1001 00:51:52,170 --> 00:51:54,440 Så det er bare å behandle raden av resultatet. 1002 00:51:54,440 --> 00:51:56,790 Ellers roper det. 1003 00:51:56,790 --> 00:51:59,770 Så, er dette et eksempel av kontrolleren. 1004 00:51:59,770 --> 00:52:02,842 Som du ser, er dette bare sted-- Ja, beklager? 1005 00:52:02,842 --> 00:52:04,960 >> PUBLIKUM: Hvorfor er det en tegnet før rad? 1006 00:52:04,960 --> 00:52:07,000 >> ALLISON Buchholtz-AU: En tegnet før rad. 1007 00:52:07,000 --> 00:52:11,000 Vi er bare itera. 1008 00:52:11,000 --> 00:52:13,490 Det er også en adresse of-- 1009 00:52:13,490 --> 00:52:16,400 >> PUBLIKUM: Så det er som C henvisning. 1010 00:52:16,400 --> 00:52:22,080 >> ALLISON Buchholtz-AU: Det er å sørge for at du faktisk er 1011 00:52:22,080 --> 00:52:24,730 endre den opprinnelige og ikke en kopi. 1012 00:52:24,730 --> 00:52:28,580 Det er på samme måte med C der vi passerer ved referanse her, bare 1013 00:52:28,580 --> 00:52:30,449 for å være sikker. 1014 00:52:30,449 --> 00:52:33,530 >> PUBLIKUM: Er det ikke == i stedet for å ikke = i PHP? 1015 00:52:33,530 --> 00:52:35,400 >> ALLISON Buchholtz-AU: Det er ikke ==. 1016 00:52:35,400 --> 00:52:37,240 >> PUBLIKUM: Fordi lik i C er just-- 1017 00:52:37,240 --> 00:52:37,970 >> ALLISON Buchholtz-AU: Det er bare ikke =. 1018 00:52:37,970 --> 00:52:38,470 Ja, nei. 1019 00:52:38,470 --> 00:52:39,656 Det er ikke ==. 1020 00:52:39,656 --> 00:52:45,610 Fordi == i PHP sjekker for likhet med veksling, gitt, 1021 00:52:45,610 --> 00:52:47,650 men ekstra kvalitet. 1022 00:52:47,650 --> 00:52:51,050 Så, det er ikke == i PHP. 1023 00:52:51,050 --> 00:52:53,025 Det er en av den lille syntaks forskjeller. 1024 00:52:53,025 --> 00:52:55,330 1025 00:52:55,330 --> 00:52:55,830 Yeah. 1026 00:52:55,830 --> 00:52:57,538 Så vi bare itera gjennom hver rad, 1027 00:52:57,538 --> 00:53:00,850 og gjengi, hvis dere lese gjennom din spec, 1028 00:53:00,850 --> 00:53:05,360 er bare noen annen funksjon som er faktisk kommer til å behandle all HTML 1029 00:53:05,360 --> 00:53:09,760 og vise den i din nettleser for deg. 1030 00:53:09,760 --> 00:53:10,610 >> OK. 1031 00:53:10,610 --> 00:53:15,360 Så, vi liker å tenke på dine kontrollerne som hva håndterer forretningslogikk. 1032 00:53:15,360 --> 00:53:18,550 Som du ser her, dette er hvor vi er tar våre data fra bordet, 1033 00:53:18,550 --> 00:53:23,530 vi behandler det på noen måte, og da vi passerer den av. 1034 00:53:23,530 --> 00:53:27,930 Når vi gjør gjengi noen mal, noen mal er vårt syn, 1035 00:53:27,930 --> 00:53:31,810 og vi passerer den bare dataene at det bør få. 1036 00:53:31,810 --> 00:53:33,340 Ikke alle data. 1037 00:53:33,340 --> 00:53:35,340 Bare de data som vi ønsker det å få. 1038 00:53:35,340 --> 00:53:37,520 OK? 1039 00:53:37,520 --> 00:53:40,270 I utgangspunktet dataene etter behandling. 1040 00:53:40,270 --> 00:53:44,780 >> Så dette er utsikten, dette er summen mal som vi har, 1041 00:53:44,780 --> 00:53:49,810 og alt dette gjør er, kan du har litt PHP i ditt syn. 1042 00:53:49,810 --> 00:53:52,620 Det er ikke som et nei PHP i sikte. 1043 00:53:52,620 --> 00:53:55,650 Du bør bare ha svært minimal PHP i sikte, 1044 00:53:55,650 --> 00:53:58,860 og du bør aldri være spørring i ditt syn. 1045 00:53:58,860 --> 00:54:01,580 Du bør aldri snakke til databasen i ditt syn. 1046 00:54:01,580 --> 00:54:02,760 Det er den store forskjellen. 1047 00:54:02,760 --> 00:54:07,886 >> Så hva er det som skjer her er at vi har PHP som er itera gjennom rad. 1048 00:54:07,886 --> 00:54:10,260 Slik at i dette tilfellet, siden vi itera gjennom hver rad 1049 00:54:10,260 --> 00:54:14,370 og gjengivelse noe, dette var sannsynligvis som en todimensjonal matrise 1050 00:54:14,370 --> 00:54:18,240 hvor vi har noen rad som er, i seg selv, en matrise, 1051 00:54:18,240 --> 00:54:20,520 fordi vi itera gjennom det igjen. 1052 00:54:20,520 --> 00:54:26,730 Og vi er bare å skrive ut navnet rad, og deretter avslutte den. 1053 00:54:26,730 --> 00:54:28,470 >> Du bør ikke trenger dette i foreach. 1054 00:54:28,470 --> 00:54:30,560 Jeg har aldri sett det før faktisk. 1055 00:54:30,560 --> 00:54:33,160 Jeg bare gjøre foreach. 1056 00:54:33,160 --> 00:54:35,140 OK, så det er utsikten. 1057 00:54:35,140 --> 00:54:40,170 La oss se om vi kan gå gjennom en liten bit av din PSet. 1058 00:54:40,170 --> 00:54:45,380 Vi har 15 minutter, så jeg er sikker på at du Gutta ønsker at mer enn bare 1059 00:54:45,380 --> 00:54:45,935 slutter tidlig. 1060 00:54:45,935 --> 00:54:48,980 1061 00:54:48,980 --> 00:54:52,680 La meg se om jeg kan ta dette opp. 1062 00:54:52,680 --> 00:54:57,130 >> Så jeg vet ikke hvor mange av dere har lastet det ned og whatnot ennå, 1063 00:54:57,130 --> 00:55:00,660 men vi har brukernavn her, og vi har noen passord. 1064 00:55:00,660 --> 00:55:05,310 Og dessverre, ikke sant Nå databasen er tom, 1065 00:55:05,310 --> 00:55:10,390 slik at vi faktisk trenger å opprette en database. 1066 00:55:10,390 --> 00:55:13,470 Vel, det er merkelig. 1067 00:55:13,470 --> 00:55:14,450 Forventet ikke det. 1068 00:55:14,450 --> 00:55:15,375 Tekniske feil. 1069 00:55:15,375 --> 00:55:17,139 Tekniske problemer. 1070 00:55:17,139 --> 00:55:17,930 Vi har noen pset7. 1071 00:55:17,930 --> 00:55:22,470 1072 00:55:22,470 --> 00:55:23,180 Cool. 1073 00:55:23,180 --> 00:55:29,660 >> Så, en ting du kan gjøre er, med en query-- Jeg skal lage en tabell. 1074 00:55:29,660 --> 00:55:38,570 Så dette kommer til å være users-- hva du kan gjøre her er, hvis vi har some-- 1075 00:55:38,570 --> 00:55:39,830 Egentlig nå? 1076 00:55:39,830 --> 00:55:40,330 OK. 1077 00:55:40,330 --> 00:55:44,510 Tydeligvis jeg ikke gjør så varmt. 1078 00:55:44,510 --> 00:55:45,010 Oh. 1079 00:55:45,010 --> 00:55:45,740 Jeg vet hvorfor. 1080 00:55:45,740 --> 00:55:49,070 Fordi jeg aldri opprettet mine faktiske tabeller. 1081 00:55:49,070 --> 00:55:52,400 Så når du først begynner med en database, du åpenbart 1082 00:55:52,400 --> 00:55:56,550 må bestemme hva som er den ting jeg trenger å ha her inne? 1083 00:55:56,550 --> 00:56:00,850 >> Så hvis vi bare gå av våre data tabell her, 1084 00:56:00,850 --> 00:56:06,410 vi hadde noen ID, som kan bare holde en int. 1085 00:56:06,410 --> 00:56:12,460 Og hvis vi ser over her, det er en kul ting at-- Så indeksen. 1086 00:56:12,460 --> 00:56:18,060 Hvis du gjør det primære, vil det gjøre det ting som tabellen er organisert av, 1087 00:56:18,060 --> 00:56:19,410 og det vil også gjøre den unik. 1088 00:56:19,410 --> 00:56:25,790 Så i dette tilfellet, vil vi gjøre det primære, og jeg kommer til å gjøre dette navnet, 1089 00:56:25,790 --> 00:56:34,500 så får vi bare gjøre det en varchar av som 26 bokstaver, fordi hvorfor ikke? 1090 00:56:34,500 --> 00:56:39,060 >> Og så kan du gå til Lagre, og deretter Hvis du ser, har vi noen brukere her. 1091 00:56:39,060 --> 00:56:42,950 Så hvis vi ønsket å gjøre en sette inn, vi kunne gjøre det 1092 00:56:42,950 --> 00:56:51,807 denne måten, eller hvis du ønsket praksis med queries-- Oh boy. 1093 00:56:51,807 --> 00:56:53,140 Jeg har ikke brukt dette i evig. 1094 00:56:53,140 --> 00:56:53,980 Jeg tar dette tilbake. 1095 00:56:53,980 --> 00:56:57,620 1096 00:56:57,620 --> 00:57:04,030 >> Du kan redigere dette på egen hånd enten bare ved å manuelt sette inn informasjon 1097 00:57:04,030 --> 00:57:08,270 med noe sånt, du kan endre noen av disse 1098 00:57:08,270 --> 00:57:13,730 hvis du ønsket å make-- Hvis du ønsker å plutselig kvitte seg med navn, kan du slippe, 1099 00:57:13,730 --> 00:57:15,220 du kan gjøre alle disse tingene. 1100 00:57:15,220 --> 00:57:17,560 Hvis du trenger å noensinne manuelt endre tabellen, 1101 00:57:17,560 --> 00:57:20,200 Jeg foreslår at du gjør det i phpMyAdmin versus prøver 1102 00:57:20,200 --> 00:57:24,475 å finne ut av SQL spørsmål generelt. 1103 00:57:24,475 --> 00:57:27,350 Når du først starter din PSet, du er nødt til å jobbe i her, 1104 00:57:27,350 --> 00:57:29,650 så bli vant til det. 1105 00:57:29,650 --> 00:57:35,650 Og så når du faktisk ønsker å sette ting inn i din table-- 1106 00:57:35,650 --> 00:57:38,310 Jeg lurer virkelig på hvor det er, fordi there's-- Her er det. 1107 00:57:38,310 --> 00:57:39,310 Det var det jeg ønsket. 1108 00:57:39,310 --> 00:57:44,320 Så hvis du går til SQL, kunne du faktisk ser, som vi ser her, 1109 00:57:44,320 --> 00:57:45,870 vi har SQL-spørringer. 1110 00:57:45,870 --> 00:57:54,100 >> Så hvis vi ønsket å velge noe eller hvis vi ønsket å sette inn noe, 1111 00:57:54,100 --> 00:58:00,320 vi kan gjøre innsatsen i brukerne, ikke sant? 1112 00:58:00,320 --> 00:58:04,460 1113 00:58:04,460 --> 00:58:07,230 Jeg tror du trenger backslash. 1114 00:58:07,230 --> 00:58:10,210 En ting å vite er, hvis du noen gang bruke dette, 1115 00:58:10,210 --> 00:58:14,800 du må bruke disse tilbake apostrofer, som er typisk, 1116 00:58:14,800 --> 00:58:16,790 hvis du er på en Mac, rett ovenfor kategorien. 1117 00:58:16,790 --> 00:58:17,840 Så en god ting å vite. 1118 00:58:17,840 --> 00:58:23,330 >> Du kan sette inn brukere, og vi har våre verdier, ikke sant? 1119 00:58:23,330 --> 00:58:29,700 Så vi har verdier, og våre verdier i dette tilfellet ville bare være, 1120 00:58:29,700 --> 00:58:33,910 vi har bare en ID så vi kunne gjøre en hvis vi ønsket. 1121 00:58:33,910 --> 00:58:35,320 Det er rart. 1122 00:58:35,320 --> 00:58:36,730 OK. 1123 00:58:36,730 --> 00:58:41,800 Så det er akkurat som en kortfattet liten ting med SQL, 1124 00:58:41,800 --> 00:58:48,300 men det kan være mer nyttig å faktisk se på noen av filene her. 1125 00:58:48,300 --> 00:58:50,985 >> Så gå til nedlastinger. 1126 00:58:50,985 --> 00:58:51,950 Oh, ikke-nedlastinger. 1127 00:58:51,950 --> 00:58:55,260 1128 00:58:55,260 --> 00:58:58,690 Så, bare en rask gjennomgang av hva som er i hver av disse mappene. 1129 00:58:58,690 --> 00:59:03,090 Det inkluderer, vi må bare ting at konfigurere nettleseren, 1130 00:59:03,090 --> 00:59:05,370 vi har disse konstanter, og vi har disse funksjoner. 1131 00:59:05,370 --> 00:59:10,470 Hvis du er interessert i noen av dem, Jeg anbefaler å se på funksjoner. 1132 00:59:10,470 --> 00:59:17,400 En av dem som er super nyttig, faktisk er dette en her, dump. 1133 00:59:17,400 --> 00:59:20,020 >> Så hvis du bruker denne, det vil faktisk bare 1134 00:59:20,020 --> 00:59:23,120 skrive ut uansett variabel at du liker det til. 1135 00:59:23,120 --> 00:59:29,000 Så hvis du har problemer med å finne ut hva denne tabellen ser ut, 1136 00:59:29,000 --> 00:59:31,920 eller hva disse dataene faktisk, hvordan den er formatert, 1137 00:59:31,920 --> 00:59:33,280 dette er en flott ting å bruke. 1138 00:59:33,280 --> 00:59:39,889 Spesielt når du har en brukeren med flere lager, 1139 00:59:39,889 --> 00:59:41,680 dette kommer til å være noe flott å bruke. 1140 00:59:41,680 --> 00:59:42,890 Fordi det kan være formatted-- 1141 00:59:42,890 --> 00:59:45,806 >> Jeg vet i hvert fall for meg når jeg gjorde Dette PSet, ble det formatert på en måte 1142 00:59:45,806 --> 00:59:47,210 at jeg ikke helt forventer. 1143 00:59:47,210 --> 00:59:49,960 Så jeg prøvde å iterere over det og prøver å manipulere den, 1144 00:59:49,960 --> 00:59:52,350 men jeg gjorde egentlig ikke forstå hva jeg gjorde. 1145 00:59:52,350 --> 00:59:56,830 Så hvis du bare dumpe det, vil det skrive det ut til leseren, 1146 00:59:56,830 --> 00:59:59,220 og du kan se nøyaktig hvordan den er formatert. 1147 00:59:59,220 --> 01:00:03,530 Det vil vanligvis skrive det ut som et matrise med sine nøkler og dens verdier. 1148 01:00:03,530 --> 01:00:04,637 Så det kan hjelpe der. 1149 01:00:04,637 --> 01:00:06,720 Det kan også bidra til å gjøre sikker på at du faktisk 1150 01:00:06,720 --> 01:00:09,070 gripe tak i data som du trodde du var. 1151 01:00:09,070 --> 01:00:12,950 Så hvis du var som, mitt bord definitivt sier det er en bruker med denne ID, 1152 01:00:12,950 --> 01:00:15,260 men når du går til dumpe variabel, er det ikke det, 1153 01:00:15,260 --> 01:00:17,551 du vet tydeligvis det er der en feil kommer til å bli. 1154 01:00:17,551 --> 01:00:22,180 Dette er en av de beste verktøyene for debugging, etter min mening. 1155 01:00:22,180 --> 01:00:24,480 Og så er det en par andre ting her, 1156 01:00:24,480 --> 01:00:27,660 men for det meste, det er det jeg ønsker å trekke oppmerksomheten din til, 1157 01:00:27,660 --> 01:00:31,060 fordi det er veldig nyttig. 1158 01:00:31,060 --> 01:00:35,800 >> Offentlig, hva vi har her er, dette er alle våre CSS ting. 1159 01:00:35,800 --> 01:00:40,520 Så CSS, skrifttyper, våre bilder, whatnot. 1160 01:00:40,520 --> 01:00:43,255 Dette er alle ting som du trenger ikke å endre. 1161 01:00:43,255 --> 01:00:46,070 1162 01:00:46,070 --> 01:00:50,080 Kan dere tenke på om dette har ting som CSS i skriftene, 1163 01:00:50,080 --> 01:00:54,039 ville dette være en modell, eller en visning, eller en kontroller? 1164 01:00:54,039 --> 01:00:54,914 PUBLIKUM: [uhørbart] 1165 01:00:54,914 --> 01:00:57,080 ALLISON Buchholtz-AU: Det ville være mer av en visning, ikke sant? 1166 01:00:57,080 --> 01:01:00,510 Dette håndterer alt ting, hvordan ting ser ut. 1167 01:01:00,510 --> 01:01:03,500 Så hvis vi åpner dette her, ser vi at alt som skjer her 1168 01:01:03,500 --> 01:01:05,060 er vi gjengi noe. 1169 01:01:05,060 --> 01:01:05,820 OK? 1170 01:01:05,820 --> 01:01:09,710 Så dette vil veldig mye kvalifisere som en visning for dette. 1171 01:01:09,710 --> 01:01:14,810 Så dette er bare å ta noen, det ringer noen portfolio.php 1172 01:01:14,810 --> 01:01:19,430 som vi har, og det er forbikjøring i tittel og portefølje. 1173 01:01:19,430 --> 01:01:20,696 Og det er bare å gjengi det. 1174 01:01:20,696 --> 01:01:21,820 Faktisk, jeg tar det tilbake. 1175 01:01:21,820 --> 01:01:27,890 Dette er en kontroller, fordi gjengi, huske, gjør utsikten. 1176 01:01:27,890 --> 01:01:30,832 Så portfolio.php i denne tilfellet ville være ditt syn. 1177 01:01:30,832 --> 01:01:32,480 Sorry, folkens. 1178 01:01:32,480 --> 01:01:36,160 Portfolio.php kommer til å være ditt syn, og dette ville bare 1179 01:01:36,160 --> 01:01:38,730 være kontrolleren for det. 1180 01:01:38,730 --> 01:01:43,120 Og hvis vi tar en titt på denne siste her, maler, 1181 01:01:43,120 --> 01:01:47,330 maler er alle dine synspunkter her. 1182 01:01:47,330 --> 01:01:52,420 Så hvis vi ser, selvsagt Vi ser mye av HTML her. 1183 01:01:52,420 --> 01:01:58,920 >> Så dette er bare viser deg hva påloggingssiden skal se ut. 1184 01:01:58,920 --> 01:02:04,810 Du merker vi har noen danne grupper, har send. 1185 01:02:04,810 --> 01:02:08,510 Her er hvordan du bestemmer deg for hva vises på det. 1186 01:02:08,510 --> 01:02:14,320 Du har noen knapp type = "submit", og da har du det du vil den 1187 01:02:14,320 --> 01:02:16,670 som skal vises i knappen. 1188 01:02:16,670 --> 01:02:19,860 Så det er slik du ville gjøre det vise seg som det du ønsker. 1189 01:02:19,860 --> 01:02:24,520 >> Og vi ser her har vi noen brukernavn, noen passord, 1190 01:02:24,520 --> 01:02:30,590 og når vi faktisk traff Send inn, det kommer til å være noen innlegg, 1191 01:02:30,590 --> 01:02:33,346 og det kommer til å legge til hva? 1192 01:02:33,346 --> 01:02:35,430 Hva er kontrolleren for dette synet? 1193 01:02:35,430 --> 01:02:38,040 1194 01:02:38,040 --> 01:02:40,940 Når vi treffer Send inn, hva som kommer til å bli kalt? 1195 01:02:40,940 --> 01:02:42,990 Vet vi? 1196 01:02:42,990 --> 01:02:45,560 Det er rett her, så login.php. 1197 01:02:45,560 --> 01:02:47,600 Noe dere er kommer til å implementere. 1198 01:02:47,600 --> 01:02:50,580 >> Så du kan alltid fortelle hva som kommer til å være 1199 01:02:50,580 --> 01:02:53,740 kalt etter at du treffer Send etter denne første linje her. 1200 01:02:53,740 --> 01:02:55,440 Hva skjemaet handlingen er. 1201 01:02:55,440 --> 01:02:58,350 Når dette skjemaet er sendt, hvilke tiltak tar vi? 1202 01:02:58,350 --> 01:03:01,440 Vi kaller login.php, og vi kaller det med denne metoden 1203 01:03:01,440 --> 01:03:05,500 av post, som har den skjult informasjon. 1204 01:03:05,500 --> 01:03:06,210 OK? 1205 01:03:06,210 --> 01:03:14,485 Så dette er ditt syn, og så åpenbart hvis vi gikk til login.php-- Har vi det 1206 01:03:14,485 --> 01:03:16,025 ennå? 1207 01:03:16,025 --> 01:03:17,970 Yeah. 1208 01:03:17,970 --> 01:03:21,950 >> Så som vi ser her, dette har mye mer logikk. 1209 01:03:21,950 --> 01:03:23,570 Det er all vår PHP her. 1210 01:03:23,570 --> 01:03:28,870 Vi prøver å se om det var $ _GET, hvis det var $ _POST, validering ting, 1211 01:03:28,870 --> 01:03:31,370 spørring, alt dette ting. 1212 01:03:31,370 --> 01:03:34,950 1213 01:03:34,950 --> 01:03:40,200 Så de er bare tre forskjellige ting her. 1214 01:03:40,200 --> 01:03:43,750 du trenger ikke å forandre på ting. 1215 01:03:43,750 --> 01:03:46,540 Du vil være å skape ting i malen, muligens, 1216 01:03:46,540 --> 01:03:51,350 men så langt som HTML eller styling av noe av dette går, 1217 01:03:51,350 --> 01:03:54,550 du kan la den være som vanlig eller så intrikat som du ønsker. 1218 01:03:54,550 --> 01:03:59,800 >> Noen mennesker får virkelig inn i det og gjøre noen ganske imponerende nettsteder. 1219 01:03:59,800 --> 01:04:00,940 Du trenger ikke å gjøre det. 1220 01:04:00,940 --> 01:04:03,750 Hvis du har tid, er det en veldig kul ting. 1221 01:04:03,750 --> 01:04:08,260 Du kan rote rundt med CSS og HTML og får en mye bedre følelse for det, 1222 01:04:08,260 --> 01:04:10,810 men ikke føler seg presset til. 1223 01:04:10,810 --> 01:04:14,760 Det er nok for deg å gjøre på bakenden med implementering logge inn, 1224 01:04:14,760 --> 01:04:17,170 og registrere, og alle disse tingene. 1225 01:04:17,170 --> 01:04:20,490 >> Så forhåpentligvis som hjelper litt. 1226 01:04:20,490 --> 01:04:23,430 gjør dere har noen spørsmål om noe vi har gått over, 1227 01:04:23,430 --> 01:04:25,690 eventuelle andre ressurser? 1228 01:04:25,690 --> 01:04:31,160 Jeg vil definitivt sende alle mitt eksempel PHP-koden til dere, 1229 01:04:31,160 --> 01:04:35,020 og da gjerne ta bilder eller whatnot av dette. 1230 01:04:35,020 --> 01:04:36,180 Også det er online. 1231 01:04:36,180 --> 01:04:39,010 Du kan alltid bare se på nytt. 1232 01:04:39,010 --> 01:04:42,190 Så hvis det er det, alle bra? 1233 01:04:42,190 --> 01:04:42,690 Ja. 1234 01:04:42,690 --> 01:04:44,523 >> PUBLIKUM: Jeg vil bare ha å bekrefte, når vi er 1235 01:04:44,523 --> 01:04:47,447 gjør velger i SQL, den stjerners betyr alt, ikke sant? 1236 01:04:47,447 --> 01:04:48,530 ALLISON Buchholtz-AU: Ja. 1237 01:04:48,530 --> 01:04:50,446 PUBLIKUM: Og så hvis du har ikke stjernen, 1238 01:04:50,446 --> 01:04:53,732 hvis du vil at det skal ta fra en bestemt rad, så du bare sette navnet of-- 1239 01:04:53,732 --> 01:04:55,440 ALLISON Buchholtz-AU: Navnet på rad 1240 01:04:55,440 --> 01:04:56,240 og hva du vil du vil verdien av. 1241 01:04:56,240 --> 01:04:57,577 >> PUBLIKUM: Og så datoen. 1242 01:04:57,577 --> 01:04:59,910 ALLISON Buchholtz-AU: Uansett du leter etter, ja. 1243 01:04:59,910 --> 01:05:05,100 På samme måte, hvis du gjør DELETE * fra noen tabell, vil den slette alt. 1244 01:05:05,100 --> 01:05:08,896 Så, * er bare en vill kort for alt. 1245 01:05:08,896 --> 01:05:09,788 >> PUBLIKUM: OK. 1246 01:05:09,788 --> 01:05:10,930 >> ALLISON Buchholtz-AU: Cool. 1247 01:05:10,930 --> 01:05:11,430 Awesome. 1248 01:05:11,430 --> 01:05:12,800 Vel, har en stor mandag, folkens. 1249 01:05:12,800 --> 01:05:13,760 Jeg ser deg neste uke. 1250 01:05:13,760 --> 01:05:15,530 Lykke til på din PSet. 1251 01:05:15,530 --> 01:05:16,992