>> [Zenelejátszó]
ALLISON Buchholtz-AU: Rendben, mindenki, szívesen vissza a szakasz.
Remélhetőleg mind volt egy nagy Halloween hétvége, vagy Halloweekend,
ahogy azt szeretném mondani, minden pihent és vissza.
És szerencsére ez nem havazik már.
Ez valójában napos kívül.
Én igazi boldog.
Még nem áll készen, hogy húzza ki a téli csizma.
Remélhetőleg pset6 elég jól ment.
>> Ha fáradt a C, boldog vagyok mondani, hogy kész a C most.
Mi teljes mértékben át a webes programozás,
így fogsz dolgozni HTML, PHP, talán egy kicsit a JavaScript.
Én nem tudom, mi a jövő heti PSET van, így nem tudom garantálni
mi lesz a következő PSET lehet, de az e heti PSET
a CS50 Finance, amely alapvetően végrehajtása a fajta weboldal
amely lehetővé teszi, hogy vásárolni és eladni készlet, és nyomon követni őket.
És ez nagyon jó, mert minden annak egy dinamikusan generált.
Akkor lehet a különböző felhasználók számára, akik megvannak a saját információs,
és te leszel végrehajtása minden adott.
Ez eltart egy ideig.
Meggyőződésem, hogy ez könnyebb mint C psets, de ez hosszabb időt vesz igénybe.
Te új nyelvet tanulni, A PHP, ami nagyon hasonlít a C,
de természetesen lesz szükség hogy felnéz szintaxis és megérteni
hogyan kell átalakítani a nyelvek között.
>> De nem hiszem, hogy bármi szuper fogalmilag nehéz erről PSET.
Ez csak a tanulás a új nyelvet, és egyre
az összes ezeket a kis darabokat.
Ha a srácok elolvasták a spec, ez elég hosszú.
Azt hiszem, ez az egyik olyan, mint a 21 oldal, ha jól emlékszem.
Ez egy hosszú spec.
Tehát, ha még nem olvastad it-- 22.
32.
>> Wow.
Szóval ki volt 50% -kal is.
Szóval, 32 oldal.
Tehát hosszú.
Sok darab, de egyik sem A darabok kell lennie, hogy rossz.
Ez csak egy csomó.
Tehát feltétlenül kezdéshez korai ha lehet, mint egy szokásos,
de azt hiszem, kell egy kicsit szebb, mint különösen a psets hasonló
gyógyulni és átméretezése, hogy csak nagyon nehéz tekerje a fejét.
>> Tehát, hogy mi megyünk merülni.
Nincs napirenden dia ma, de mi
lesz beszélni a PHP.
Én leszek így egyfajta gyorstalpaló néhány dolgot
amit érdemes tudni a PHP.
Különböző dolgok szintaxis, dolog, hogy néz ki.
Fogunk beszélni egy kicsit SQL.
Csak nagyon egyszerű dolgok ott, és akkor is MVC
az MVC, amely az, hogy a PSET van beállítva,
így megértjük, hogy hogyan művek lesz szuper hasznos.
Rendben van.
Így a PHP.
Srácok kellett volna valami nagyon, nagyon egyszerű
PHP, ami ez a dolog itt alul,
ahol be valamilyen formában az tetejére, hogy itt volt néhány név, amit
bemenet, és azt mondaná, mint a hello, Ben, vagy hello, Allison, és ez jelenik meg.
Tehát ez az, amit valójában kellett volna nézett ki, mint az Ön PSET,
abban az esetben, srácok akartam tudni vagy nem elég kitalálni.
>> De ezeket a kérdőjelek itt azt jelzik, hogy ez a PHP.
Ők csomagoljuk, majd htmlspecialcharge, emlékszem, csak,
győződjön meg arról, hogy biztonságban vagyunk minden őrült injekciós támadás
vagy ha valaki megpróbál tenni őrült rosszindulatú karaktereket
be nevét mezőbe, akkor nem tetszik fel a szerver vagy miegymás.
>> És aztán, ha azt vesszük észre, ez a HTML forma volt egy eljárás, $ _GET, amely,
ha arra gondolunk, a szuperglobális PHP $ _GET, $ _POST,
fogunk megy azok a kicsit.
De tudjuk, hogy van néhány név itt, amely megfelel a nevét
hogy mi benyújtani.
Szóval ez csak olyan, mint a nagyon egyszerű PHP HTML együttműködés
hogy a srácok már ettől PSET hat.
>> De ez nem igazán választ, ami a PHP.
Nyilvánvaló, hogy ez a nyelv, de mi nem igazán
beszélt, hogy ebben a szakaszban, így van egy kicsit
arról, hogy mi a PHP valójában.
Szóval csak PHP PHP hypertext előfeldolgozó.
>> Ez tulajdonképpen tekinthető egy programozási nyelv
mert logika, míg ha emlékszünk beszélünk HTML,
hívtunk, hogy a jelölőnyelv versus egy programozási nyelv, mert a HTML
szigorúan módosítása hogyan dolgok az oldalon.
Ez csak módosító hogy valami merész,
vagy hogy ez egy űrlap, elem, vagy valami ilyesmi.
Nem rendelkezik semmilyen logika.
Nem kell, hurkok és körülmények között.
Nem lehet hiba ellenőrizni a dolgokat.
Azt sem jelenik meg a dolgokat egy bizonyos módon, vagy kérjen dolgok
a felhasználó elől.
Ennyi.
>> A PHP, valójában azonban lehetővé teszi számunkra, hogy minden ilyen logikusabb dolgokat,
mint érvényesíti a bemenet vagy manipulálni valamilyen módon.
Mi lehet kombinálni HTML, ahogy csak látta a legutóbbi PSET és most,
és ez lehetővé teszi számunkra, hogy hozzon létre ezeket a dinamikus weboldalakat.
Tehát, ha a srácok ever-- én nem tudom, voltál, mint én, de a középiskolás
ők nekünk ezt az informatikai osztály, ahol hoztuk létre csak HTML weboldalakat,
és ők statikus és kattintson körül az más dolog, de ők soha nem változott.
>> A dinamikus is, amit tudunk tennie, mint a CS50 Finance,
fogsz, hogy a különböző felhasználók számára.
Attól függően, hogy azok a felhasználók " preferenciák, és mit vásárol
vagy mit árul azok a készletek,
fogsz megjeleníteni különböző dolog.
Tehát, ha van valami azonosító jellemző
a felhasználói ezzel a weboldal, tudjuk dinamikusan
eldönteni, mi jelenjen meg a számukra.
Ez nem ugyanaz, minden egyes személy, amely ha csak volt HTML,
Az oldal lenne ugyanaz Minden egyes ember, aki megnézte.
PHP lehetővé teszi, hogy személyre oldalakon.
>> És akkor mi is vagy tedd ugyanaz a fájl, amely, mint abban az esetben,
mielőtt itt láttuk, hogy van itt minden HTML
és akkor itt van ez a kis PHP.
Meg tudjuk csinálni, mint azt, vagy CS50 Finance,
ha ti nézett a files-- és mi kell idő
lépésre egy pár közülük együtt a végén a mi section--
Láthatjuk, hogy tudsz valójában igyekszünk elkülöníteni,
amely tulajdonképpen egy jobb dolog.
>> Szóval
Gyorstalpaló.
Minden gyors egyszerű dolgok amire szüksége lehet tudni a PHP.
Nyilvánító változók.
Ez a kék egy kicsit bosszantó, de remélhetőleg ti is látni.
Ha nem, akkor írja meg a kréta fórumon.
Az nyilvánító változók.
Egy dolog tudni, hogy, ellentétben a C, PHP lazán vagy dinamikusan típusos,
ami azt jelenti, hogy nem kell mondani egy változó az milyen típusú.
Akkor csak egyszerűen mondani néhány változó egyenlő, amit akarsz, hogy,
és azt dönti el, hogy milyen típusú hogy a változó futási időt.
>> Amint látni fogod, ez hozhat létre néhány nagyon érdekes dolgot.
De legtöbb esetben, akkor Nem kell, hogy adja meg a típusát.
Tudod, beírhatja öntött dolgokat, mint normálisan
nem látni, ha azt szeretné, hogy kényszeríteni, hogy egy bizonyos típusú,
de nem kell.
Ez nem fog kiabálni veled ha csak, hogy egy változót
és nem adja meg a típust is.
>> Tehát abban az esetben nem lehet olvasni this-- Tudom, hogy ez nem a legjobb.
Azt gondoltam, hogy megjelenik a better-- Így inicializálni bármilyen változó csak
egy dollár jel, mi azt szeretné, hogy hívják,
és akkor mit kiválasztotta.
Tehát ebben az esetben, ez valami $ var = 3.
Tehát, ha valaha is használni $ var valahol, akkor csak
lehet ugyanaz, mint a 3. üzembe ott.
OK?
>> Szóval, minden változó, csak dollár jel, bármi
szeretné felhívni a változó, és amit akarsz, hogy egyenlő.
Kicsit hűvösebb.
Kevesebb írni inicializáló a változó, ugye?
Van ennek értelme mindenki?
Csak gyors szintaxis különbség a C és a PHP.
>> A tömbök sokkal hűvösebb a PHP.
Adhatunk nekik kulcsokat.
Így a módja annak, hogy gondolni ez az, hogy ha valaha
szeretett volna hozzáférni egy eleme egy tömb,
tudnunk kell a index, igaz?
Tehát tudjuk, hogy C, mi hozzáférhessen az első elem
ezzel tömb tartó nulla, vagy ha szeretné, hogy az első elem, tömb tartó
egy.
És ha volna valami ott, lehet, hogy csak
kell halad végig, kivéve, ha valójában ismerte az index.
>> Az egyik dolog, ami igazán hűvös PHP tömbök
az, hogy ők mit hívjuk asszociatív.
Így tudunk társítani néhány kulcsfontosságú, hogy néhány érték,
és mi történt valójában to-- megmutatom neked
hogyan tudjuk használni ezt a második.
De alapvetően, ha valaha is szeretne inicializálni tömb így,
van néhány $ tömb.
>> Így azonos módon, ez csak néhány változót hozunk létre.
Ezt nevezhetnénk amit akart.
Ez lehet például $.
Csak egy változó.
Mi teszi, hogy egy tömb a konzol szintaxis hogy mi van itt.
Csakúgy, mint a normál C. És néhány kulcsfontosságú bizonyos értéket.
Így KEY1 megy érték1, KEY2 két megy value2.
Ezek a párok egymástól a vessző, mint a rendes tömbök.
>> Azonban.
Nagyot.
Keys opcionális.
Nem kell használni őket.
És ha nem, akkor ez csak a szokásos.
Kérdés?
Vagy, oh.
>> KÖZÖNSÉG: Nos, a jobb oldalon.
Hol van a memória jön?
Lehet ez is ugyanaz, mint a [Hallható] és a kéményből?
Ez is a PHP?
Mint amikor mi össze őket?
>> ALLISON Buchholtz-AU: A PHP, Mi nem hajlamosak
aggódni, ahol a memória van -bol.
Mi nem töltenek sok időt beszélünk, hogy
így nem igazán semmit akkor kell aggódni.
Tehát kulcsok választható.
Ugyanígy, ha nem szeretnénk, hogy ezt a kapcsolódó,
csak szeretne egy normális tömb, ahol a tömb nulla az első elem
és egy tömb a második elem, meg tudod csinálni pontosan
ahogy azt a C. Van néhány változó lesz a tömb,
és az egyenlő ezeket zárójelben itt.
Igen.
>> KÖZÖNSÉG: Van-e az ugyanazon a ponton a jelölést.
Mint, meg tudom csinálni, mint egy tömb ++, és rámutat arra, hogy a második.
>> ALLISON Buchholtz-AU: A do-- Nos, akkor van néhány iterátorral, i,
hogy meg tudod csinálni én ++, és nem a tömb i ugyanúgy.
De ennyi.
Így, mint ebben az esetben, tömb 1 lenne egyenlő 20.
Ugyanaz a fajta indexelés jelölés.
Ez alapvetően csak egy implicit dolog Itt, ahol azt mondja nulla, nulla és 10,
1 és 20 közötti, 2 és 30.
Ez csak implicit kulcsokat is.
Mi változik a PHP hogy most már a hatalom
átminősítése Ezen gombok csinálsz, amit akarsz.
>> Tehát az egyik dolog itt.
Szóval már csak néhány példa hogy itt írtam fel a srácok
mert úgy érzem, mindig példát segítségével több, mint az elvont.
Így, ebben az esetben itt, mi néhány asszociatív tömb
hogy az első név, az utolsó név, és én
am visszhangos, ami csak minden célra itt
majd nyomtassa ki a kimeneti itt.
>> És azt mondja, rendben van.
Nyomtassa ki az értéket, megfelel a tömbbel kulcsfontosságú Allison.
És én is küldeni srácok Mindezek kód óra után.
Tehát, ha fut ez, mit csinál Ön szerint fog történni?
Mi fog kinyomtatni?
KÖZÖNSÉG: Az utolsó név.
ALLISON Buchholtz-AU: Az utolsó név.
Ez nem.
Itt van.
Nyomtassa ki.
Tehát, ha mi voltunk, hogy ez megváltozzon, és kellett hozzá, hogy valaki másnak a mi list--
Mondjuk van itt Emma, és mi az utolsó társult name--
Lássuk, hogy én pontosan ezt a jogot.
>> KÖZÖNSÉG: Igen.
>> ALLISON Buchholtz-AU: Igen.
>> KÖZÖNSÉG: Szép munka.
>> ALLISON Buchholtz-AU: Lovely.
Tehát most, ha ezt itt és meg akartuk találni a vezetéknevét,
van ott.
Így csak belegondolok helyettesítéséről ez a kulcs itt.
Te csak az index cseréje.
Így lehetővé teszi, hogy csak a keresési a tömb sokkal könnyebb.
Önnek nem kell tudni, hogy az index.
Amíg ezt a kulcsot, amit keresel az létezik valahol a tömbben,
PHP fogja találni, és ez vissza fog térni az érték társul hozzá.
Tehát ez ad egy sokkal teljesítmény a tömbök.
Igen.
>> KÖZÖNSÉG: Ha két kulcs a ugyanaz, akkor azt kapsz egy hiba?
ALLISON Buchholtz-AU: ez kell adni egy hiba, igen.
Van ennek egy kis Több értelme van srácok?
És ugyanúgy, van egy tömb itt, amely nem rendelkezik semmilyen kulcsokat.
Szintén ez a szintaxis hogy érdemes
tisztában lenni, mert akkor kell használni ezt a PSET.
>> Ha csinálsz egy echo, akkor ilyen idézetek,
és amikor te hivatkozva hogy része egy tömb,
van, hogy ezeket kapcsos zárójelek körülöttük.
Elég bosszantó, de csak meg kell csinálni.
Szóval, csak valami, hogy tartsa szem előtt.
Ha fut a hibát, Tudom, hogy ez létezik, az én tömbben
de ez dobott hibákat rám próbáld meg úgy, fogszabályozó körül
és meg kell dolgozni.
>> Így ebben az esetben is, ez egy normál C tömb vagyunk használni.
Három, öt, hat, és mi csak szeretnénk kinyomtatni az első elem,
így ez jelenít meg három.
És én futtatni ezeket, így remélhetőleg semmi sem változott.
Látjuk az alján van, ez csak kinyomtat három.
Cool.
Hogy van értelme mindenki számára?
Asszociatív tömbök.
Sokkal hűvösebb, mint a normál tömbök.
>> Ez why-- Tudta David megmutatom A PHP végrehajtása pset6
közben előadás egyáltalán?
OK.
Szóval, én megmutatom.
Nem tudom, hogy ki a t--
>> KÖZÖNSÉG: Ő a múlt héten.
>> ALLISON Buchholtz-AU: Vajon a múlt héten?
>> KÖZÖNSÉG: Igen.
>> ALLISON Buchholtz-AU: Igen.
Így helyesírás lehet tenni, mint a hat sorban PHP, és egy részét a hatalom, hogy a
ez asszociatív tömb, ahol a ha csak tölteni minden szót,
és van ez azonos igaz vagy hamis.
És így mondani, ó.
Vissza szótár néhány szót, és ha ott van, akkor vissza igaz.
Ellenkező esetben nem fog találni ez és ez fog vissza hamis.
Így amolyan jó kis dolog.
>> Rendben van.
Tehát ezek asszociatív tömbök.
Ők elég jó.
Én nagyon szeretem őket.
És nyilvánvalóan this-- Ah.
OK.
Most már működik.
Talán.
OK.
A másik dolog.
Szóval, az egyenlőség, csak a jó dolog, hogy tartsa szem előtt.
A PHP, mert dinamikusan típusos,
a típus változhat attól függően, hogy mikor futtatja azt, hogyan futsz azt.
Igazából van néhány jó példák Megmutatom nektek.
>> De == csak ellenőrzi, egyenlőség után típus zsonglőrködés.
Tehát, ha van valami, ami mint a karakter 1 és 1-es szám,
PHP volna mondani, hogy ezek egyenlő mert
lehet zsonglőrködik a típusait ketten, amíg ez egyenlő,
amely talán az Ön esetében rendben van.
>> Ha meg kell, hogy ha a azonos típusú érték és az azonos típusú,
szeretné ezt ===.
És nem hiszem, hogy van valami Amennyiben ki kell használni, hogy a
a PSET, de a sok te, aki megy, hogy csinál weboldalakat
a projektek és a végső dolgok, ez Jó dolog tudni, hogy == és ===
különböző, és ez egy jó megkülönböztetés megérteni.
>> OK.
Szóval
Foreach hurok.
Ők egy módja annak, hogy halad végig egy tömböt.
Szóval, csak, mint a tömbök vált így sokkal hűvösebb PHP
az utat a iterálására a tömb, azt hiszem,
is lesz sokkal hűvösebb és sokkal erősebb.
Tehát ahelyett, hogy hozzon létre néhány i értéke 0 és bármi,
majd frissítse azt én ahogy megy keresztül,
mi ez a félelmetes foreach ciklus.
>> Tehát itt van a szokásos általános Ezek szerkezete kettő.
Szóval sem kell foreach néhány tömb mivel a kívánt értéket navigálhat a.
Szóval ez a neve a tömb változó kívánt hivatkozni,
és ez az, amit akar nevezni a hurok.
OK?
Szóval, ez megfelel minden egyes eleme a tömb,
és használja ezt az értéket ebben a hurok.
>> Van egy példa.
Tudom, hogy vannak példák sokkal jobb.
És ez, ha van nincs kulcs, így ez olyan, mint a
ha csak egy, ha a kulcs a rendes indexek a tömb.
Vagy ez abban az esetben is, ha Ön nem használják a kulcsokat.
Ha nem érdekel A gombok és a csak
szeretnénk, hogy halad végig az értékekkel minden egyes ilyen bármilyen sorrendben,
ez jó.
>> Használhatja a szerkezet.
Ellenkező esetben, ha vannak gombok, a mi $ Value csak változik a $ kulcs értékét.
Tehát csak átvált egy kulcs-érték párt.
És akkor lehet hivatkozni $ kulcs és $ value belül a hurok.
OK?
Szóval
Példa.
Legyen szebb.
OK.
>> Tehát ez egy itt, amit néhány
are-- Azt is létrehoz egy tömböt, mint ez
azáltal, hogy néhány változó egyenlő a tömb zárójeles
vagy ha csak nem konzol.
Meg kell csinálni a konzol, de ez egy másik módja annak, hogy csináld.
Tehát itt van néhány sor, három elemeit egy, kettő, három és,
és mi van a foreach.
>> Figyeljük meg ezt megfelel a tömb, hogy mi iterációjával át,
és ez az, amit mi hívás minden dolog a tömbben.
És mindez tesz, hogy a nyomdába ki minden értéket.
Tehát, ha futunk, mi észre, hogy mi van értéke egy, kettő érték, az érték három.
>> És ugyanúgy, amelyek jellemzően tömbök kell az egyik típus,
tömbök nem kell minden lehet az azonos típusú itt.
Tehát most van néhány int.
Van két húr.
Így a tömbök is hogy sokkal erősebb
és talán egy kicsit bit Messier, attól függően,
a kívánt módon, hogy nézd meg.
Így tudjuk változtatni ezt hogy amit akarunk.
Az általunk használt érték.
Ez csak a szokásos dolog, amit használni.
De, csak tudni kell, hogy mi is hívja ezt, mint a számláló, ha akartunk.
És mindaddig, amíg azok megegyeznek, Nyilvánvalóan mindenki boldog.
Ha valaha szeretné futtatni a PHP fut valami ilyesmi parancs
sor tudod ezt itt, akkor csak nem PHP,
és akkor bármit kívánt fájlt futtatni.
>> Tehát, ha azt szeretnénk, hogy szórakozni PHP, és még a logika
és akkor nem igazán kell látni, mint a böngésző,
akkor csak fuss azt A parancssor ilyesmi
és visszhang nyomtat ki, amit akarsz.
OK.
A másik út, hogy van ilyen.
Tehát ez egy olyan eset, amikor talán azt szeretné, használja mind a kulcsot és az értéket,
Tudom, hogy ezek olyanok, mint a szuper kiagyalt példák
de remélem, hogy egy kicsit világosabb.
Tehát itt van néhány tömb újra, de ez alkalommal,
ahelyett, csak úgy, tudod, hogy nincs kulcs.
Van kulcsok ezek mindegyikéhez.
Tehát nem lesz egy, b meg fog felelni két, és c meg fog felelni a három.
És ebben az esetben, ha írunk ezt így,
mi a két legfontosabb és értékét minden egyes ilyen.
>> Így, amikor futtatásához megkapjuk minden egyes ilyen.
Így kinyomtat a kulcsokat és a megfelelő értékeket.
A másik jó dolog az, hogy én tudom, és azt mondta, mint ez nem volt kulcs,
de mindig van egy implicit kulcs, mert ha nem ruházhatja át
kulcsfontosságú, persze, a gombok csak a mutatók
vagy indexek így tudnánk Mindig is megteheti ezt.
Mint ez.
Én kinyomtatni.
Tehát ebben az esetben, ha azt észleli, megvan a kulcs implicit
nulla, egy, kettő és itt.
>> És ugyanúgy ezzel egy, akkor mindig csak annyit, r, mint érték,
és csak hozzáférhet az értéket.
Nem érdekel a kulcsok, még akkor is, ha a kulcsok is,
ha nem érdekel őket, akkor nem feltétlenül
kell tenni őket a foreach hurok.
Van ennek értelme mindenki számára?
>> KÖZÖNSÉG: Tud csak hívja a kulcsokat is?
ALLISON Buchholtz-AU: Ja, ja, is teljesen erre is.
Igazából, várjon.
Várj.
Nem lenne it--
Ha szeretné, hogy a gombot, majd meg kell tennie a kulcs értékét.
KÖZÖNSÉG: Hozzáadott értéket.
ALLISON Buchholtz-AU: Igen.
És csak soha nem használja az érték minden.
>> KÖZÖNSÉG: OK.
ALLISON Buchholtz-AU: Ha csak tedd egy dolog van,
ez meg fog feltételezni, hogy te vagy beszél az érték, nem a legfontosabb.
Nagy kérdés.
Rendben van.
Cool.
Valójában, várj.
Lássuk, mit én.
Szóval mielőtt nekilátnánk a posta, és kap, én csak azt szeretném megmutatni nektek egy kicsit
arról, hogy ez a dinamikus gépelt, ami elég jó.
Én mindezeket.
Én, mint négy példa itt, és én küldök neked minden a kódot
óra után.
>> Tehát itt van néhány változó a.
Ez csak 1 plusz 1, igaz?
És megyünk, hogy nyomtassa ki, mi ez egyenlő, és akkor van néhány típus.
És bárki, bármilyen találgatások arról, hogy mi írja be lesz?
>> KÖZÖNSÉG: Egy int.
>> ALLISON Buchholtz-AU: Igen, ez egy int.
Tehát ez csak növeli őket.
Ez egy int.
Minden jó.
Szóval ez a következő, van amit néz húrok.
Amikor futtatásához, azt hiszi, oh.
Te tényleg próbál csak add a dolgokat.
Csak összezavarodott.
Szóval csak úgy, hogy rögzítse az Ön számára.
Te jelentett int.
Tudom, hogy azt jelenti, int.
>> Tehát ez az egyik módja lehet lásd a PHP a saját tudata.
Annak ellenére, hogy kifejezetten azt mondta, nézd, ezek azok, amelyek húrok.
Úgy értem, a húr egy.
De azt mondja, jaj, de akarsz, hogy adjunk nekik,
így kell jelenti azt, hogy egy egész szám.
Csak bízz bennem ezzel kapcsolatban.
Tehát azt mondja, hogy egy egész, és hozzáteszi, őket, mint a normál.
Tehát milyen jó, ha mész hogy lusta a dolgok,
vagy a felvenni kívánt valamit.
>> A nagy dolog az, hogy ha úgy gondolja, vissza a pset2,
valami, ami a felhasználó bevitt, igaz, hogy azt gondoljuk,
egy char vagy string először.
Most már nem kell külön azt mondják, ó, hogy ez egy int.
PHP is csak olyan, mint, oh yeah.
Tudom, hogy egy int jelentett.
Silly te.
Nem jelenti a húr.
>> Így abban az esetben, most hogy van ez, mi
Mit gondoltok, hogy fog itt csinálni?
Van egy sor, és egy int most.
>> KÖZÖNSÉG: Ez még mindig egy int.
>> ALLISON Buchholtz-AU: Ez még mindig egy int.
És az ok ez-- tenném több példa, de ez a móka.
Az ok, ez azért van, mert csinálja ez olyan, mint próbál felvenni a dolgokat.
Tehát, ha akarsz hozzáadni dolog, megyek, hogy vállalja,
ésszerűen, van valami Indokolt, hogy te is hozzá.
Én csak megy, hogy egy int, és mi csak lesz hozzá, mint általában.
És akkor ugyanúgy, én úgy gondolja, hogy a srácok az ötlet.
Mi is ez itt, ami csak elszenesíti, és ez nem ugyanaz a dolog.
Ez olyan, mint, te buta felhasználó.
tudja, hogy szeretne egy int.
>> KÖZÖNSÉG: Ha teszünk egy levél, majd csinál a [hallható] érték, vagy sem?
ALLISON Buchholtz-AU: Oh, ez egy jó kérdés.
Lássuk.
Nem, még mindig egy int.
Szóval ez egy kicsit őrült.
Ez csak ilyen, hogy mutassa meg a PHP néha viselkednek irrational-- Nem
teljesen irracionális, de lehet, hogy viselkedik olyan módon, hogy nem igazán számíthat.
Tehát, ha kétségei vannak, a fajta dolog.
Ez a funkció gettype lehet szuper hasznos.
>> Általában, ha csinálsz semmit plusses vagy matematikai operátorok,
ez lesz a vállal semmit ésszerű csak egy int.
Szóval, van char 1 vagy a karakterlánc 1, vagy a tényleges int 1,
ez meg fog feltételezni, hogy.
Ha szeretne typecast semmit, akkor teljesen lehet.
Lehet tenni valamit, mint dupla itt, azt hiszem.
És ebben az esetben, azt fogja mondani, oh.
Én, hogy ez egy kettős, mert Ön kifejezetten azt mondta, hogy ez a kettős.
Akkor mindig kifejezetten hogy a PHP csinál valamit, de.
>> KÖZÖNSÉG: Várj, miért A plusz 1 van?
>> ALLISON Buchholtz-AU: Oh.
Ott.
Ez csak egy visszhang.
Ez az én hibám volt.
Szóval, akkor kifejezetten mondani, hogy valamit egy bizonyos típusú,
de az idő nagy részében, ez fog dinamikusan úgy, hogy futás közben.
Szóval ez fog tartani megy keresztül és ez lesz, mint, OK.
Mi teszi a legtöbb értelme, hogy ez?
Amennyiben valóban a húr?
Legyen szó egy int?
Legyen az úszó?
Amennyiben egy dupla?
És akkor úgy dönt, hogy az Ön számára.
>> Akkor kényszeríteni, hogy ezt amit akarsz, de--
>> KÖZÖNSÉG: Ez azt teszi lassabb?
ALLISON Buchholtz-AU: Nos, Úgy értem, C nagyon hatékony.
Azt hiszem, ez határozottan lassabb, mert azt, hogy a folyamat megy.
C, majdnem biztos vagyok benne gyorsabb.
De nyilván van egy Sok jó dolog van itt
hogy nem kell aggódnia.
Tehát, ha keres a tömb, mi
Nem kell ténylegesen létre néhány keresési át a tömböt.
Mi is csak kérni a kulcs és PHP vigyázni fog rá.
>> Cool.
Félelmetes.
Úgy néz ki, a végén az én példa.
Ti soha nem fog elfelejteni, hogy most.
Te lesz, mint, oh, csak a PHP mint, hogy anyuka, aki olyan, mint nem, nem, nem.
Tudom, mit jelent.
Tudom, hogy mit akarsz.
OK.
Szóval ez remélhetőleg hasznos a PSET, legalábbis a kezdet kezdetén,
azért, mert mind az újságírókkal A formák és a dolgok a felhasználó.
>> Tehát van két módon, hogy megkerüli info a PHP és HTML
amikor mi halad e két dolgot.
Tehát $ _GET, amelyet át URL-en keresztül, és mi van a $ _POST,
amely vezetünk az üzenet test, és ezért úgy vélik, hogy a rejtett.
De egy dolog, hogy megértsük, hogy a ezek egyike sem tekintjük biztonságos.
>> Ha van valaki, aki lehallgatja az üzeneteket megy
oda-vissza közted és a szerver, akkor is kap az adatokat.
Csak meg kell nézni egy kicsit nehezebb.
Ez nem igazán hogy-- ez csak rejtve az URL-t.
Még mindig az üzenetben, bár, így ha férhet hozzá, hogy a
ez tényleg csak like--
>> Ez olyan, mint a különbség között valami
van írva a külső egy borítékot és valami lény
írt egy darab papírt belül.
Ez nem olyan nehéz, hogy nyissa ki a borítékot és kap a darab papír belsejében.
Nyújtott, ez lenne sokkal könnyebb csak olvasd el a külső.
De hogy hogyan tudsz fajta gondolni ezeket.
Sem ezek közül valóban biztonságosnak tekinthető.
OK?
>> Igaz, nem igazán számít a PSET
mert nem foglalkozik A kereskedelmi titkok,
de ez általában egy dolog, hogy valóban
szeretném hangsúlyozni, mert az emberek gondolom, ó, nos, ez a rejtett.
Meg kell, hogy legyen szuper biztonságos.
Nem.
Ez nem biztonságos.
Ez csak kis mértékben kevésbé bizonytalan, azt hiszem.
Vagy nem biztonságos.
>> Tehát tulajdonképpen egy példát.
Mint tudod, én szeretem tanítani még példákkal.
Úgy érzem, ez segít jobban.
Szóval, van néhány egyszerű formában itt ami valójában, ha a srácok valaha
zavaros a PHP-ről, ez nagyon kicsi,
de valójában php.net nagyon jó dokumentáció.
Én nagyon szeretem ezt.
Én használja, hogy felkészüljön erre rész, így tudok vet neked.
>> Ez egy példa tőlük hogyan $ _POST és $ _GET munkát.
Az egyetlen különbség között a két ilyen,
mellett, ahol az információ látható, hogy ez az URL-ben
vagy a szervezetben, az is mi a módszer.
Így a formában HTML-- Ez egy nagyon egyszerű HTML űrlap.
Tud valaki mondja meg, mit csinál?
KÖZÖNSÉG: Kérje nevét és életkorát.
ALLISON Buchholtz-AU: Pontosan.
Tehát valamilyen formában intézkedéseket.
Ez lehetővé teszi számunkra, tudom, hogy valamilyen formában cselekmény.
És mi fog történni az, amikor elérünk Küldés,
ez meg fog hívni action.php, ami mi ez,
és ez meg fog nevezni a módszer a $ _POST.
Így ebben az esetben a információ van elrejtve.
és ez csak a neve, néhány bemenet típusa hívott nevét, néhány életkor,
input type = "text", hogy mi is nevezzük kor.
És akkor, ha megüt Küldés, Küldje hívja action.php.
>> Így, amikor nekiütközött Küldés, mi gondoljatok arra, hogy írt, önmagában,
és mi valóban látni ezt a állítja be, hogy a probléma remélhetőleg fogunk
kap a séta egy kicsit.
És azt csinál itt POST néhány szuperglobális változó
hogy beszélgettünk közben előadás.
És hogyan lehet gondolni $ _POST is hogy ez csak egy asszociatív tömb.
OK?
Szóval ez a néhány kulcsfontosságú, ez néhány kulcsfontosságú, és bármi
a felhasználói válik értéke minden egyes ilyen.
OK?
>> Tehát, ha kellett írni, mi ez a tömb tényleg olyan volt, mint a jobb, miután
benyújtotta a forma, mi lenne van, ez a mi $ _POST,
és néhány tömb, ahol van egy kis neve.
Mondjuk mi nem a nevem, és akkor mi van némi kor, 21.
Woo.
Szóval ez az egész $ _POST van. $ _POST csak egy asszociatív tömb, OK?
>> Csak azt mondja, OK.
Mik azok a dolgok, mi már kérte a felhasználó?
Melyek a változók hogy mi elhaladó körül
hogy amit kért ebben a formában?
És akkor mi a értékek, hogy?
Tehát ebben az esetben, ha én benyújtotta a neve a szövetséges és egy 21 éves
ez az, amit a $ _POST néz ki.
OK?
És ez az, amit ez a PHP fájl van hozzáférése.
Minden rendben?
>> Így ebben az esetben, ez olyan, mint hogy bármilyen más dolog a mi tömb.
Ahelyett, hogy az index a tömb, van néhány kulcsfontosságú.
Tehát ez megy, hogy nekem az érték gomb nevét.
Tehát ez lesz Ally, és ez itt fog adni nekem
az érték a $ _POST, ahol a kulcs kor, ami lesz 21.
Te lesz ezt egy kicsit.
Igen, amelyből részben?
>> KÖZÖNSÉG: Mikor voltál mutatva az alsó rész.
ALLISON Buchholtz-AU: Ez az alsó rész?
OK.
Szóval, érted, ez a HTML alkotnak, és van néhány módszer $ _POST,
ami számít.
Ez is lehet $ _GET, de erre a célra,
mi csak úgy mondani, hogy az $ _POST.
Amikor ezt az űrlapot, ez része egy PHP fájl neve.
Tehát ez a PHP fájl most fog végrehajtani tekintettel az információt a HTML
formában.
>> Szóval, mit csinál az, amikor Küldje hit a mi HTML űrlap,
ez megy neked szuperglobális, ami csak egy asszociatív tömb.
Csak ez.
Olyan, mint halad, hogy a fájl.
És mit mond, OK, itt van $ _POST.
Ez az Ön asszociatív tömb.
Csinálsz vele, amit akarsz.
És azt mondjuk, OK.
Add ide az érték nevét, és add nekem az érték évesen.
>> Szóval ezek csak kulcsok és ez a mi tömb.
Van ennek értelme?
>> KÖZÖNSÉG: Mhmm.
ALLISON Buchholtz-AU: félelmetes.
KÖZÖNSÉG: Ha van arra, hogy újra a forma nem is csak felülírni az adatokat?
ALLISON Buchholtz-AU: Igen.
Mhmm?
>> KÖZÖNSÉG: Miért van pontosítani, hogy ez egy int?
>> ALLISON Buchholtz-AU: Ebben az esetben, a felhasználó csak arra kényszerítve, hogy egy int.
>> KÖZÖNSÉG: OK.
ALLISON Buchholtz-AU: Nem tudom , ha valóban szükség van arra,
hanem saját céljaikra, úgy döntöttek, hogy azt akarta, hogy egy int.
Ők csak azt Typecasting.
Talán a 'használ, mint valami mást később.
Ez csak egy részlet.
Igen?
>> KÖZÖNSÉG: Mi van, ha gépelt 12, a T-W-E-L-V-E, életkor?
ALLISON Buchholtz-AU: Ha próbálta írja, hogy, mint egy int?
KÖZÖNSÉG: Igen.
ALLISON Buchholtz-AU: I felejtsük el, hogy mit csinál.
Azt hiszem, talán próbálja meg átalakítani Az első karakter egy int,
vagy hogy az érték és átalakítani , de elfelejtettem, hogy pontosan mit is.
Legyen egy jó dolog, hogy írni egy programot, és próbálja meg.
Van egy pár sort.
OK, így ez az egyik fő dolog, hogy fogsz csinálni.
Megyek remélhetőleg járni egy pár fájlok
A PSET veletek.
Úgy néz ki, megyünk van ideje, így meg tudjuk csinálni.
>> De te lesz csinál egy csomó dolgot
mint ez, ahol te halad dolgok egy HTML form
ebbe a PHP formában lesz majd végre néhány szóló utasításokat
az adatok adták.
Ez szó szerint a lényege a PSET.
Igen.
>> KÖZÖNSÉG: A type = "submit", hogy tesz egy gombot a HTML űrlap.
Van mód, hogy hívja hogy valami gomb?
Így azt, mint name = "submit"?
Vagy az, hogy a gombot csak lesz üres most, mert csak
adta, hogy egy típus, nem a neve.
>> ALLISON Buchholtz-AU: Azt hiszem, ez csak lesz üres most.
Mi is feltétlenül nézd a PSET, mert biztosan
nézi a Regisztráció dolog.
De igen, akkor feltétlenül adja meg A kívánt szöveget a gombra.
OK, így az SQL.
>> Amikor a vételi és eladási készletek, meg kell nyomon követni e.
Tehát az út fogunk tenni, ami SQL, ami csak egy adatbázisban.
Gondolj rá úgy, mint egy asztal, ahol te tartja az összes információ
az Ön különböző felhasználók számára.
És ti valóban Készítünk egy ilyen.
Ez elég jó.
>> És már csak négy dolgot hogy meg kell tudni, hogy ezt PSET,
és azok frissítése, így alapvetően frissíti az adatokat.
Ez azt feltételezi, hogy ez már ott van.
Ha nem ott, ez lesz eltalált egy hiba,
így talán szeretné ellenőrizni.
És akkor frissíti on-- I kell actually- időm,
Írok egy pár ilyen.
Én valóban ad nektek egy pár minta, teljes SQL parancsokat,
mert ezek csak a legfontosabb is, de őket össze.
Szóval fogom tenni, és küldök hogy ki Ön ezeket a megjegyzéseket.
>> Tehát, ha szeretné frissíteni valamit, kell mondani, hogy mit frissítése
és hová frissítésére.
Tehát egy tipikus SQL parancs lesz frissítés ID ahol valami egyenlő valami.
Vagy, mint a frissítés cím ahol az ID értéke 3,
és ez frissíti a cím mező a felhasználó, aki egy azonosítót a három.
OK?
>> Tehát, ha megy az SQL és W3Schools, ezek félelmetes példa.
Sőt, lehet, hogy húzza néhány fel egy kicsit.
Majd helyezze be, te csak behelyezése bizonyos értékeket is.
Tehát, ha akarsz, hogy egyfajta új bejegyzést, így te létre egy új felhasználót,
meg tudná csinálni a betét függetlenül az adatbázis neve,
és akkor kellett volna ezeket az értékeket.
>> Ezután meg kell válasszuk, válasszon értékeket, hogy megtekinthesse.
Tehát, ha akarsz, hogy ellenőrizze, hogy hogy ha egy felhasználó létezik, vagy te vagy
próbálják megragadni konkrét információkat gyűjt a felhasználó
fogsz használni a gombot.
Majd törölje, azt hiszem, nagyon egyszerű ott.
Te csak törlése valamit az asztalra.
És valóban, hadd valójában húzza fel néhány példát a srácok.
Ó, nézd, ez az én 61. oldal.
>> Tehát, ha megyünk W3Schools, remélhetőleg ez újra.
Igen, szeretik.
Megyünk SQL.
Szóval, ez itt valami.
Szóval, ez egy nagyon egyszerű SELECT.
Ember, én szeretem ezt a funkciót.
Szóval, lehet SELECT Néhány területen az ügyfelek.
Ebben az esetben, az ügyfelek utal, hogy a Online adatbázist használ,
így bármi is a tábla neve, és csillag csak azt jelenti, válassza ki mindent.
Adj mindenki.
>> Szóval, én csak azt szeretném, hogy nektek egy pár példát, ahol ez.
Tehát SELECT, UPDATE.
Tehát itt a fajta az általános szintaxis.
Szóval UPDATE, bármi legyen is tábla neve, majd a SET
ahol te valóban megy hogy milyen adatokat te változik.
Szóval ez be-- Let nekem, hogy egy példát itt.
Tehát ez fog be--
>> OK.
Szóval egy kis adatbázist hozott létre számunkra.
Mi lesz, hogy bizonyos ID, Néhány év, és néhány nevét.
Tehát egy ID lesz év '15, és mi csak úgy, hogy ez nekem.
Ki akar lenni a második személy asztalunkra?
Bárki.
Én csak fog választani Emma mert a nevem gyors.
Emma, ​​milyen év van?
>> KÖZÖNSÉG: Melyik évben?
>> ALLISON Buchholtz-AU: Igen.
>> KÖZÖNSÉG: '16.
ALLISON Buchholtz-AU: '16.
Te csak lesz a tengerimalac a mai napra.
OK, így már ez a két ember.
Igazából, hadd tegye ezt.
Tegyük fel, hogy rosszul hallottam, és én valójában azt mondta, ő egy évvel fiatalabb.
Ő '17.
Mit akarunk itt csinálni, ha akarta frissíteni Emma év
hogy helyes használata, hogy mi lenne tennie, azt mondanám, hogy UPDATE adatok itt.
>> És ez mind-mind egy sorban, de mert én tömörített hely itt,
Fogok írni ide.
És szeretnénk beállítani.
Szóval, ez a táblázat is frissít.
SET lesz mit oszlop vagy milyen adatokat valójában változik.
Amit mi változik az év, így fogunk mondani SET év = 16,
és akkor azt mondja, hogy melyik felhasználó vagy amit sorban vagyunk valójában frissítésével.
>> Szóval, hol?
Van két lehetőség van.
Mi a kettő?
Ezek az egyedi, nem igaz?
Így a nevek egyediek és az azonosító egyedi,
igen, mik a két lehetőség hol tudnánk ezt?
Adok egy.
Megtehetjük WHERE ID = 2 vagy tudtuk csinálni, amit
ha megyünk ki ezt a paradigma itt.
>> KÖZÖNSÉG: [hallható].
ALLISON Buchholtz-AU: Pontosan.
Így is megtehetik name = Emma.
És ezekkel a működne.
És futott ez úgy lenne, mint, OK.
Majd megváltoztatni.
Te tényleg 16, így most megint igazad van.
OK, így ez lenne a szuper hasznos az Ön PSET
ahol talán valaki úgy döntött, vásárolni 100 részvény az Apple,
és akkor mondták, csak vicceltem.
Én csak azt akarom, 90 felett.
És így eladni 10 közülük, így frissítenie kell az összeget a készletek
hogy van.
Szóval, frissítése készletek, asztal frissítése.
>> OK.
Szóval ez egy példa van.
Ez a frissítés szintaxis.
DELETE.
Oh.
Helyezze a mi másik.
Így, ez az egyik itt nagyon hasonlóak.
Azt is csak azt mondom, hogy ez a esetben adjunk valaki.
Mi adhat Ben ebben az időben.
Mi INSERT INTO, és mi szeretné, hogy a neve a tábla.
Ebben az esetben ez az adat.
>> És akkor mi csak szeretnénk, fogsz mondjuk ÉRTÉKEK, és mit fogsz csinálni
van, hogy tényleg kell győződnie arról, hogy van valami, soronként
amit akar.
Csak tedd a sorrendben.
Tehát ebben az esetben, azt mondanánk, 3.
Te 18, jobbra Ben?
>> KÖZÖNSÉG: 19.
ALLISON Buchholtz-AU: 19?
KÖZÖNSÉG: 19.
ALLISON Buchholtz-AU: Az idei '19?
Te diplomás '18, ugye?
KÖZÖNSÉG: Oh.
ALLISON Buchholtz-AU: Graduation év.
KÖZÖNSÉG: OK.
ALLISON Buchholtz-AU: Én, mint te
tervezik, hogy hogy legalább egy évet itt?
Szóval, '18, van Ben.
Így ebben az esetben, akkor megy át, ez egy új bejegyzést itt.
Cool.
Nem rossz, ugye?
Sok ez fog legyen szintaxis srácok.
Fogalmak jöjjön, remélhetőleg, viszonylag könnyen.
A szintaxis az egyetlen dolog, hogy lehet egy kicsit trükkös.
>> És akkor az utolsó egy DELETE, és azt veszi észre,
Én nagyon ajánlom ezt a honlapot.
Nagyon jó.
Van egy csomó dolgot.
Így, ugyanúgy, hogy mi volt néhány UPDATE, DELETE nagyon hasonló.
Ehelyett mi Delete Data.
Így ebben az esetben, az utolsó Egy írok le ide.
Tegyük fel akart törölni nekem.
Nem tudok írni ma.
DELETE származó bármilyen táblázat vagyunk, adatokat.
És vannak valójában háromféleképpen tudtuk törli nekem.
>> Meg tudja mondani, mi fiúk a három módokon, hogyan lehet törölni engem?
ID = 1, ahol az ID értéke 1.
Megtehetjük, ahol évente egyenlő 15, vagy ha a neve egyenlő Allison.
persze, már csak három különböző módon,
mert ezek mind egyedi.
Jellemzően az asztalnál, és különösen a PSET,
fogsz beállítani egy ezek az oszlopok egyedinek kell lennie.
>> Ez valószínűleg lesz néhány egyedi azonosító szám, mert ha tényleg have--,
akkor talán valóban vele van kettő.
Nem emlékszem, ha megmondom van két azonos dolog.
>> KÖZÖNSÉG: Akkor lenne megváltoztassák viselkedésüket.
>> ALLISON Buchholtz-AU: ez lenne.
Ez lesz okoznak viselkedés, ami váratlan, hogy nem igazán lehet megjósolni.
Szóval biztosan van egy oszlop az adatbázisban, hogy egyedi lesz,
és ez általában be lehet állítani úgy, hogy ez olyan, mint egy egyedi azonosító,
és ez csak frissíteni minden alkalommal helyez az asztalra.
Minden alkalommal, amikor egy új sor, akkor automatikusan
növedék és adja meg néhány egyedi azonosítót.
Tehát tipp a PSET.
OK.
Annak érdekében, hogy az SQL-t.
>> Tehát most fogunk beszélni Az utolsó dolog, amely egyszerre illeszkedik
valóban elég jól a PSET, ha ez megy tovább.
Szóval MVC, modell nézet vezérlő.
Ez tényleg csak egy módja dolgokat szervezett.
Ugyanígy C kérünk titeket létrehozása funkciók és külön dolog
ki, ez csak egy módja annak, hogy külön ki kódot, amikor csinálsz webfejlesztés.
>> Így teszi a dolgokat sokkal elegánsabb és egyszerűbb,
és ez valójában az út hogy a PSET valójában
létre, így akár tetszik, vagy nem, fogsz tanulni,
akkor is, ha nem hiszem, tanulunk meg.
És egy dolog, azt is lehetővé teszi, hogy ennél sokkal több, mint egy felhasználói együttműködés.
>> Tehát amikor vettem CS50, csináltam egy weboldal az én utolsó projekt
és én, mint, én kezeli az adatbázis dolgokat.
Megteszem hátsó dolgokat, és én szobatársa, aki én voltam a vele
nagyon artsy.
Ő nem díszlet, és ő akartam, hogy ez elég.
Szóval olyan vagyok, mint, OK.
Akkor vigyázni a front end cucc.
>> És az a helyzet, mint látni fogjuk, nagyon hamar,
a modell nézet-vezérlő lehetővé teszi teljesen elválasztani a kódot, így
hogy én is dolgozni végrehajtási oldalaink,
és manipulálni információ adatbázisainkban,
és ő is csak a dolgok szép, és mindketten nagyon boldogok,
mert mi van, hogy amit mindketten akart, és mi
Nem kell foglalkozni a másik.
>> Szóval lógtunk együtt.
Szeretjük lógni.
Csak nem akar foglalkozni a CSS és HTML dolgokat.
Én, mint te, hogy ez elég.
Majd én elintézem az adatbázisban.
Tehát ez tényleg jó, jó kis asztal.
Szeretem táblákat.
És alapvetően, a modell akkor gondolj csak az adatbázis.
>> Én voltam a modell személy az én projekt.
Ez mind a tárolására információs és szervező az adatokat.
Szóval, ez az, amit mi szeretnénk felhívni back end.
Szóval srácok foglalkozni Az SQL adatbázis és az adatfájlok.
Ez a modell.
>> Az Ön véleménye szerint, mivel lehet, hogy gondolom, egyfajta értelme,
az, amit a felhasználó lát.
Ez a felhasználói felület.
Ez az a lapjával alkatrész.
Szóval, ez az, ami a szobatársam kapott munkát az egész idő alatt.
Szuper volt boldog.
Szóval ez mind a HTML, és nagyon kevés a PHP.
>> Ha csak beszélünk mi jelenik meg a felhasználó számára,
beszélünk hypertext.
Beszélünk arról, hogy hogyan néz ki.
Mi nem beszélünk a logikát, vagy körülmények, vagy miegymás.
Mindez kerül kezelt A vezérlő, OK?
Ahhoz, hogy kezeli a felhasználó kéri és megkapja az információt.
>> Tehát az egyik dolog, amit tudni kell A PSET az, hogy a véleményét,
minden, ami valójában információ megjelenítése
Soha nem szabad, hogy felhívja a modell.
Mindez kezelnek a vezérlő.
A vezérlő egy közvetít a két.
Megkérdezi a modell bizonyos információkat.
Ez végighaladni, hogy a információ, kitalálni
amire valójában szükséged van azt, hogy mit kell csinálni vele,
és akkor át csak az információkat
kell a nézet, hogy nyomtassa ki , vagy megjeleníti azt a felhasználó, OK?
>> Mert látjuk a nézetet amit néz a felhasználó,
így sokkal könnyebb lesz számukra, hogy kitaláljuk,
ó, ha még van egyesek a modell
és kérsz az összes felhasználó számára aki betűvel kezdődik A,
és mit csinálsz, hogy az Ön véleménye szerint, bárki, aki látja a weboldal
potenciálisan elérheti azt.
>> Nem feltétlenül akarjuk.
Nem akarnak az emberek látni még az adatbázisba, mint mi
kell őket látni.
Csak a speciális beállításokat.
Így a vezérlő kezeli az összes e.
Így az összes .php fájlokat fogjuk látni akkor úgy a vezérlő fájlokat.
És ez az, ahol te vagy Tényleg lesz
kér dolgokat az adatbázist, és ismételve vagy manipulálása
azt, mielõtt átadva azt kell tekinteni.
>> Ez egy nagyon jó PSET, véleményem szerint.
Azt hiszem, ez egy kicsit mint az azonnali kielégülés,
mert végre egy Sok kis apró dolgok,
és minden dolog kell dolgoznia a saját.
Nem tetszik, tegyen meg mindent és aztán majd meglátjuk, hogy működik.
Mint szoftver ahol te, mint én vagyok,
nagyon reméli, ez jobb, mert ha nem,
van egy csomó helyezi lehet, hogy tévedek.
>> Rendben van.
Csak ügyelve arra, hogy azt mondtam mindent, amit kellett mondani MVC.
Igen.
Cool.
>> Így CS50 Finance, van a modell, ahogy az elõbb mondtam itt.
Ez lesz a MySQL és phpMyAdmin.
Tudom biztosan húzni azokat fel olyan srácok kap egy esélyt, hogy nézd meg.
Mint már mondtam, hogy az SQL adatbázis működik a modell,
és küldhet nevezzük lekérdezések, ami csak efféle dolgok.
Ezeket nevezzük a lekérdezés.
Ez egy olyan kérdés, ahol te csak kéri az adatbázis valamit,
vagy te módosítja a adatbázis valamilyen módon.
Ez minden.
És te, hogy a függvények adtam itt.
>> Azt is manipulálni őket kézzel via phpMyAdmin,
amit határozottan vessen egy pillantást.
Majd hozzon létre egy minta adatbázis srácok.
OK.
Szóval, vezérlő.
Így ebben az esetben, ha észre, ez az egész a PHP.
Figyeljük meg, hogy a fajta a legfontosabb dolog a vezérlő
az, hogy meg kell leginkább PHP.
Ha a HTML a vezérlő, Nem igazán tudom, mi folyik ott.
Ugyanúgy, mint már mondtam, ha sikerül [hallható] HTML,
Vagyok igazi érdekel.
>> Szóval, mi van itt is van néhány kérdés.
Lekérdezés egy olyan funkció, amely építettünk a srácok.
Olyan, mint egy wrapper, hogy a lekérdezések az adatbázis egy kicsit könnyebb.
Ha nem volt, hogy a szintaxis valójában beszél az SQL adatbázisba
más lenne, ezért csak a kínálat, hogy a srácok.
Szeretnénk, hogy az élet könnyű.
>> Tehát ebben az esetben is, srácok mondja meg, mi ezt a vonalat csinál?
SELECT * néhány asztal.
KÖZÖNSÉG: Válasszon mindent ez a táblázat.
ALLISON Buchholtz-AU: Pontosan.
Így mondja, ad nekem mindent ez a táblázat.
És ez tárolja azt néhány változó eredményt.
És ez azt mondja, ha az eredmény nem egyenlő hamis, akkor mi minden ezt.
Tehát, ha nincs itt semmi, ha a tábla üres, vagy csak nem létezik,
ez meg fog vissza hamis.
Tehát ebben az esetben, mi csak így biztos, hogy valami tényleg
vissza hozzánk.
>> És akkor itt van mi nagy foreach hurok
hogy mi iterációjával át a eredmény, és mi nevezni sora,
és azt mondjuk, teszi ezt a sablont ahol az adatok ezt az eredményt.
OK?
Szóval ez csak feldolgozás sorában az eredmény.
Ellenkező esetben kiabál.
Így, ez egy példa a vezérlő.
Amint látod, ez a Csak place-- Ja, bocs?
>> KÖZÖNSÉG: Miért van egy jelet, mielőtt sor?
>> ALLISON Buchholtz-AU: Egy jelet előtt sor.
Mi csak ismételve.
Ez is egy cím of--
>> KÖZÖNSÉG: Tehát ez olyan, mint a C hivatkozás.
>> ALLISON Buchholtz-AU: ez ügyelve arra, hogy te valóban
módosítása az eredeti, és nem egy másolat.
Ez ugyanúgy C ahol mi elhaladó hivatkozással ide, csak
hogy megbizonyosodjon arról.
>> KÖZÖNSÉG: Hát nem == helyett nem = PHP-ben?
>> ALLISON Buchholtz-AU: Ez nem a ==.
>> KÖZÖNSÉG: Mivel egyenlő a C hogy--
>> ALLISON Buchholtz-AU: Ez egyszerűen nem =.
Ja, nem.
Ez nem ==.
Mivel == PHP ellenőrzi, egyenlőség átkapcsolás, megadott,
de extra minőség.
Szóval, ez nem == PHP-ben.
Ez az egyik a kis szintaxis különbségeket.
Igen.
Szóval csak iterációjával keresztül minden sorban,
és teszi, ha a srácok olvassa el a spec,
csak más funkció, amely valóban lesz feldolgozni a HTML
és megjeleníteni a böngésző az Ön számára.
>> OK.
Szóval, szeretjük azt hinni, a vezérlők mint amit kezeli az üzleti logika.
Amint látod itt, ez az, ahol vagyunk figyelembe az adatokat a tábla,
feldolgozzuk, hogy valamilyen módon, és akkor mi vezetjük le.
Amikor mi teszi néhány sablon, néhány sablon a véleményünk,
és mi csak halad az adatokat, hogy azt kéne.
Nem az összes adatot.
Csak az adatokat, hogy azt akarjuk, hogy kap.
OK?
Alapvetően az adatokat a feldolgozás után.
>> Szóval ez a nézet, ez az összeg sablon, hogy van,
és mindez csinál, akkor Van egy kis PHP a nézetben.
Ez nem olyan, mint a nem PHP céljából.
Akkor most, hogy nagyon minimális PHP tekintettel,
és soha ne legyen lekérdezése a nézetben.
Te soha nem beszél hogy az adatbázis a nézetben.
Ez a nagy különbség.
>> Szóval, mi folyik itt, mi PHP, ami iterációjával a sor.
Így ebben az esetben, mivel voltunk iterációjával keresztül minden sorban
és teszi valami, ez volt talán, mint egy két dimenziós tömb
ahol van néhány sor, hogy a , önmagában, egy tömbben,
mert mi iterációjával át újra.
És mi csak kinyomtatni a sor nevét, majd a végén azt.
>> Önnek nem kell ezt a foreach.
Még soha nem láttam, hogy mielőtt valóban.
Én csak azt foreach.
OK, így ez a nézet.
Lássuk, ha tudjuk séta Egy kicsit a PSET.
Jelenleg 15 percig, úgyhogy biztos vagyok benne, srácok azt szeretné, hogy több, mint
véget a korai.
Lássuk, tudom, hogy ezt fel.
>> Szóval nem tudom, hogy sokan közületek srácok letöltött, és miegymás még,
de van itt felhasználónév, és van néhány jelszót.
És sajnos, a jobb most az adatbázis üres,
így valóban szükség van egy adatbázis létrehozása.
Hát, ez furcsa.
Nem számítottam rá.
Technikai hiba.
Technikai nehézségek.
Van néhány pset7.
Cool.
>> Szóval, az egyik dolog, amit tehetünk, az, az a query-- fogok létrehozni egy táblázatot.
Tehát ez lesz users-- milyen meg tudod csinálni itt van, ha van some--
Tényleg most?
OK.
Nyilván nem én csinálom olyan forró.
Oh.
Én tudom, hogy miért.
Mert én soha nem csináltam Az aktuális táblázatokat.
Tehát, ha először kezdeni adatbázis, akkor nyilván
kell eldönteni, hogy milyen a dolog, amit kell, hogy itt?
>> Tehát, ha csak megy le az adattábla itt,
volt néhány azonosító, amely akkor csak maradjon egy int.
És ha megnézzük, itt, ott egy klassz dolog hogy-- Szóval index.
Ha ezt az elsődleges, meg fog tenni, hogy a dolog, hogy a tábla által szervezett,
és azt is, hogy az egyedi.
Tehát ebben az esetben, mi teszi az elsődleges, és megyek, hogy ezt a nevet,
aztán majd csak, hogy ez egy varchar hasonló 26 betűjét, mert miért ne?
>> És akkor megy a Mentés, majd ha látod, van itt néhány felhasználó.
Tehát, ha azt akartuk, hogy nem egy helyezze, tudnánk csinálni
Ily módon, vagy ha akarta gyakorlat Ön queries-- Oh boy.
Én nem használtam ezt örökké.
Én ezt vissza.
>> Bármikor módosíthatja ezt a saját vagy Csak kézzel behelyezi információ
valami hasonló, akkor megváltoztathatja bármelyik
ha akart make-- Ha azt szeretnénk, hirtelen megszabadulni a név, akkor csökken,
meg tudod csinálni ezeket a dolgokat.
Ha kell valaha kézi módosításához az asztalnál,
Azt javaslom, csinálja phpMyAdmin versus próbál
hogy kitaláljuk a SQL lekérdezések általában.
Amikor először indítja el a PSET, fogsz kell dolgozni itt,
így szokni ezt.
És akkor, ha tényleg akar hogy helyezze be a dolgok table--
Tényleg csoda, hol van, mert there's-- Itt van.
Ez az, amit én akartam.
Tehát, ha megy az SQL, tudnál valóban látni, mint látjuk itt,
van SQL lekérdezések.
>> Tehát, ha azt akarta, hogy ki valamit vagy ha akarnánk beszúrni valamit,
tehetünk betétet a felhasználók számára, igaz?
Azt hiszem, kell a backslash.
Egy dolog tudni, hogy Ön valaha ezzel,
kell használni ezeket vissza aposztróf, amelyek jellemzően,
ha egy Mac, jobbra fent fülre.
Tehát egy jó dolog tudni.
>> Azt be lehet építeni a felhasználók számára, és mi értékeinket, ugye?
Tehát értékek, és értékeink ebben az esetben ez csak,
már csak egy azonosítót ezért tehetne egyet, ha akarnánk.
Ez furcsa.
OK.
Szóval ez olyan, mint egy rövid kis dolog SQL,
de lehet, hogy hasznosabb, hogy valóban nézd meg néhány, a fájlok itt.
>> Így megy Letöltések.
Ó, nem, letöltések.
Szóval, csak egy gyors áttekintése mi van minden ilyen mappa.
Ez magában foglalja, csak a dolgok hogy konfigurálja a böngésző,
van ezek állandók, és mi ezeket a funkciókat.
Ha érdekel ezek közül bármelyik, Azt javaslom néztem funkciókat.
Az egyik, hogy a szuper hasznos, valójában ez itt, dump.
>> Tehát, ha ezt, ez lesz valójában csak
nyomtassa ki bármilyen változó hogy tetszik az.
Tehát, ha sikerül kitalálni hogy mi ez a tömb néz ki,
vagy mi ez az adat valójában, hogyan is formázva,
ez egy nagy dolog használni.
Különösen, ha van egy felhasználó több állomány,
ez lesz valami jó használni.
Mert lehet, hogy formatted--
>> Tudom, legalábbis számomra, ha nem ez PSET azt formázott módon
hogy nem egészen számíthat.
Szóval próbáltam végighaladni , és megpróbálja manipulálni,
de én nem igazán megérteni, hogy mit csinálok.
Tehát, ha csak lerakó, ez lesz nyomtassa ki a böngésző,
és láthatja, hogy pontosan hogyan is formázni.
Ez lesz általában nyomtassa ki, mint egy tömböt a kulcsokat és értékeket.
Így segíthet ott.
Ez is hozzájárul ahhoz, hogy arról, hogy te tényleg
megragadta az adatok hitted.
Tehát, ha voltak, mint az asztali feltétlenül azt mondja, van egy felhasználó az azonosító,
de ha megy a kiírása változó, nem ott,
Ön nyilván tudja, hogy ez ha egy hiba lesz.
Ez az egyik legjobb eszközök A hibakeresés, véleményem szerint.
És akkor ott van a pár más dolog van,
de a legtöbb, ez a egyik szeretném felhívni a figyelmet,
mert nagyon hasznos.
>> Nyilvános, mi van itt van, ez mind a mi CSS dolog.
Szóval CSS, fontok, a képek, miegymás.
Ez az egész dolog, hogy a nem kell módosítani.
Tud gondol srácok, ha ez olyan dolgok, mint például a CSS, a betűtípusok,
lenne ez a modell, vagy céljából, vagy a vezérlő?
KÖZÖNSÉG: [hallható]
ALLISON Buchholtz-AU: ez lenne inkább az a nézet, ugye?
Ez a kezelés minden dolog, hogy a dolgok.
Tehát, ha megnyitjuk ezt itt, azt látjuk, hogy minden, ami itt történik
A mi teszi valamit.
OK?
Tehát ez lenne nagyon sok minősül a nézetet ezt.
Szóval ez csak néhány vesz, ez hív néhány portfolio.php
hogy mi van, és ez múló címben és portfólió.
És ez csak azt teszi.
Igazából, hogy ezt vissza.
Ez egy vezérlő, mert render, ne feledje, teszi a nézet.
Tehát ebben portfolio.php esetben az lenne a véleménye.
Bocs, srácok.
Portfolio.php lesz a véleménye, és ez csak
legyen az, hogy a vezérlő.
Ha veszünk egy pillantást a utolsó itt, sablonok,
sablonok mind a véleményét itt.
Tehát, ha megnézzük, nyilvánvalóan látunk egy csomó HTML ide.
>> Tehát ez az egyik csak megmutatja, milyen A bejelentkezés oldalon kell kinéznie.
Azt veszi észre, van néhány forma csoportokból benyújtania.
Itt van, hogyan dönti el, mi jelenik meg ott.
Van néhány gomb type = "submit" és akkor, amit szeretnél
megjeleníteni a gombot.
Szóval, hogyan tenné mutatnak fel, mint amit szeretne.
>> És azt látjuk, itt van néhány felhasználónév, jelszó néhány,
és amikor nekiütközött Küldés, ez lesz, hogy néhány poszt,
és ez meg fog tölteni, mi?
Mi az a vezérlő ezt a nézetet?
Amikor elérünk Küldés, mi lesz, hogy hívják?
Tudjuk?
Ez itt, így login.php.
Valami, amit a srácok végre fog hajtani.
>> Így mindig mondani mi lesz
kiáltott utána bejön Küldés az első sorban van.
Mi a form action is.
Ha ebben a formában benyújtják, milyen lépéseket veszünk?
Hívjuk login.php, és mi hívják ezzel a módszerrel
utáni, amely a rejtett információkat.
OK?
Szóval ez a nézet, és akkor nyilván ha mentünk login.php-- Do nálunk van
még?
Igen.
>> Szóval mint látjuk itt, ez sokkal több logika.
Ez mind a mi PHP itt.
Megpróbáljuk, hogy ha ez volt a $ _GET, ha ez a $ _POST, érvényesítése dolgok,
lekérdezés, ez az egész.
Szóval ezek csak a három különböző dolog itt.
nem kell megváltoztatni a dolgokat.
Nem lesz létrehozása dolgok A sablon, esetleg,
de amennyire a HTML vagy a stílusa bármely ez megy,
akkor hagyja a sima vagy bonyolult, mint szeretné.
>> Vannak, akik igazán bele, és hogy néhány elég félelmetes weboldalak.
Nem kell csinálni.
Ha van ideje, akkor egy nagyon jó dolog.
Akkor rendetlenség körül CSS és HTML és kap egy sokkal jobban érzi magát érte,
de nem érzem a nyomást.
Rengeteg az, hogy nem a back end végrehajtásában, jelentkezzen be,
és nyilvántartás, és az összes ezeket a dolgokat.
>> Így remélhetőleg, amely segít egy kicsit.
srácok bármilyen kérdése van bármiről mentünk át,
más források?
Én biztosan elküldi az összes én például PHP kód srácok,
és akkor nyugodtan vegye képek vagy miegymás e.
Szintén ez az interneten.
Mindig csak nézni újra.
Tehát, ha ez az, mindenki jó?
Igen.
>> KÖZÖNSÉG: Csak azt akarom megerősíteni, mikor vagyunk
Ennek válasszuk az SQL, a csillag: minden, igaz?
ALLISON Buchholtz-AU: Igen.
KÖZÖNSÉG: És ha Ön nem rendelkezik a csillag,
ha azt akarjuk, hogy egy adott sor, akkor csak fel a nevét of--
ALLISON Buchholtz-AU: A név a sor
és mit akarsz akarsz értékét.
>> KÖZÖNSÉG: És akkor a dátum.
ALLISON Buchholtz-AU: Bármi keres, igen.
Ugyanígy, ha nem DELETE * -tól néhány asztal, akkor az töröl mindent.
Szóval, * csak egy vad kártya mindent.
>> KÖZÖNSÉG: OK.
>> ALLISON Buchholtz-AU: Cool.
Félelmetes.
Nos, van egy nagy hétfő, srácok.
Találkozunk a jövő héten.
Sok szerencsét a PSET.