>> [Musiikki soi]
>> ROB BOWDEN: Hei.
Olen Rob, ja toivon, olet valmis luoda kalakantojen tässä ratkaisussa.
Ensimmäinen, nyt katsomaan rekisteriin.
Niin muista, että täällä me tarkastamme onko lomake oli
ilmoitetaan tällä sivulla.
>> Joten ensimmäinen asia aiomme tehdä, on mennä muualle.
Ja me aiomme tehdä rekisteriin muodossa.
Joten rekisteri lomake on menossa lähettää viestejä register.PHP.
Ja mitä se aikoo lähettää?
Se tulee lähettää käyttäjätunnuksen, joka käyttäjä on menossa täyttää, salasana,
ja vahvistus -
salasanan kirjoitettu uudelleen.
>> Joten nyt kun tämä lomake on lähetetty register.PHP me suorita tämä jos.
Tarkasteltaessa tätä, jos olemme ensin menossa vahvistaa tulo.
Haluamme varmistaa, että käyttäjätunnus ja salasana eivät olleet tyhjiä ja että
vahvistus tosiasiallisesti vastaa salasanan.
Kun olemme tarkistaneet, että voimme itse rekisteröityä käyttäjää.
>> Mitä se tarkoittaa?
No, haluamme lisätä Käyttäjä meidän tietokantaan.
Ja näin teemme sen.
Joten aiomme lisätä osaksi käyttäjien taulukon kentät käyttäjätunnus,
hash, ja käteistä.
>> Oletusarvo käteistä tulee olemaan 10000.
Ja me aiomme kulkea käyttäjätunnuksena, Käyttäjänimi, kautta POST Super
maailmanlaajuinen jätetyn lomakkeesta.
Ja aiomme salata salasanan.
>> Joten jos se onnistui, niin lopputulos on ei-vääriä.
Jos se ei ole, niin me haluavat pyytää anteeksi.
Jokin meni pieleen.
Ja mikä voisi mennä vikaan?
>> No, on oltava yksilöllisen käyttäjätunnuksen.
Ja niin kysely olisi voinut epäonnistuneet Mikäli tunnus on jo
olemassa olevassa taulukossa.
Joten jos se oli ainutlaatuinen käyttäjätunnus, Sitten aiomme kyselyn napata
ID kyseisen käyttäjän.
Muista, että tunnus on auto-kasvavalla.
>> Ja niin jos se sattuu epäonnistuu jostain syystä, silloin me haluamme pyytää anteeksi
että emme voineet napata tunnus.
Mutta olettaen, että se ei ole jättänyt, niin nappaame ID mitä kyselyn
palautettavan tallentaa että meidän istunto - joten haluamme kirjautua tämän käyttäjän osallistumistaan
tallentamiseen tunnus istuntoon Super maailmanlaajuinen, ja lopuksi
ohjata meidän salkun.
Ja se on siinä rekisterissä.
>> Nyt aiomme siirtyä lainaus.
Joten lainaus tulee olemaan todella samanlainen perustaa.
Näemme tässä, että tämä on koodi, joka aiomme toteuttaa, kun lomake on
ilmoitetaan tällä sivulla.
Mutta ensin meidän on todellakin tekevän tämän lomakkeen.
Joten vilkaisemalla tarjouspyyntö, Millä aloilla on olemassa?
>> Näemme, että kaikki lainaus on on yksi tekstikenttään nimi symboli.
Ja niin kun tarjouspyyntö on lähetetty to quote.PHP olemme nyt menossa
suorittaa tämän koodin.
Ja ainoa muuttuja meidän POST Super maailmanlaajuinen tulee olemaan symboli.
>> Vahvistamme, että varmista, että ne todella lähetetty symboli.
Ja jos he eivät, sanomme sinulle on annettava symboli.
Olettaen, että ne tarjosivat symboli, me etsiä että symboli.
>> Nyt muistaa, että look up voi olla epäonnistui vuodesta, no, ehkä se ei ollut
voimassa symboli aluksi.
Joten jos tämä etsiä return false, Haluamme pyytää anteeksi, että
symboli ei löytynyt.
Kun olemme löytäneet symboli, nyt voi tehdä quote.PHP malli.
>> Mitä se näyttää?
Joka on juuri menossa painoon, että osake riippumatta varastot nimi oli
kannattaa riippumatta osakekurssi on.
Nyt miksi käytämme tätä htmlspecialchars toimiakseen?
Tämä johtuu osakkeen nimen ja symbolin saattaisi olla erityistä
merkkejä, joita ei pitäisi tulkita HTML.
>> Kunnossa, niin se on siinä lainaus.
Nyt haluamme tarkastella index.php ja portfolio.
Mutta ensin meidän oikeastaan ​​tarvitse rakentaa salkut pöytä.
Näin aiomme tehdä sen.
>> Joten katsotaanpa katsomaan rakennetta.
Ja me näemme, että salkkujen taulukossa joutuu ID.
Niin, että tulee olemaan käyttäjän Tunnus, joka on asettanut osakkeita.
Meillä on symboli, joka tulee olemaan symboli yritys, joka olemme
lisäämällä osakkeita.
Ja sitten osakkeiden määrä osakkeita, joka on asetettu.
>> Niin muista, että per PSET spec, me täsmentää, että tunnus ja symboli -
voimme tarkistaa indeksit, tunnus ja symboli on perusavain.
Joten käyttäjätunnus ja symboli pariksi tulisi näkyä vain yksi
aikaa tässä taulukossa.
Nyt katsokaamme koodi.
>> Joten nyt index.php aikoo napata kaikki meidän salkun tietoa ja
näyttää sen käyttäjälle.
Ensin aiomme napata käteistä että käyttäjä on tällä hetkellä alkaen
käteispöydässä.
Muista, että kysely on aina menossa palata joukko paneelit.
Vaikka siis vain valitut käteisellä alkaen yksi rivi, tarvitsemme vielä
napata että käteistä indeksoimisen zeroth indeksi rivien ja tarttumalla
käteisellä indeksi.
>> Joten nyt haluamme valita kaikki tietoa salkkujen taulukko
joka on merkitystä tällä hetkellä kirjautuneen käyttäjän.
Me tietenkin täytyy vahvistaa, että joka todella onnistunut, jota
pitäisi aina tehdä aina kun kysely.
Kun meillä on kaikki nämä tiedot, PSET spec ilmoittaa meille, että me
Tämä olisi tehtävä, jotta hienosti tallentaa kaikki tiedot tässä
kantoja array.
>> Joten olemme silmukoiden hoitaakseen kaikki portfolio tietoja, etsii
Varastossa liittyy kunkin rivin portfolio tiedot ja
tallentaminen asennossa array nimi, hinta, osakkeet ja symboli kaikille
jotka liittyvät kyseiseen varastossa.
Ja lopuksi, me aiomme tehdä portfolio.PHP, ohimennen määrä
käteistä meillä on tällä hetkellä, kannat array että me vain
rakennettu, ja otsikko tämän sivulta, joka on salkun.
>> Katsotaanpa katsomaan portfolio.PHP.
Ja me näemme, että suuret mielenkiintoinen osa on tämän silmukan.
Joten olemme silmukoiden yli kantoja array, luoda
taulukko, jossa kyseisen taulukon -
olemme asuttavat Jokaisen kerroksen tietoa, että me laittaa sisälle
kantoja array.
>> Jälleen meidän täytyy käyttää htmlspecialchars jos tämä symboli tai nimi
sisältävät HTML merkkiä.
Ja tässä me kertomalla hinta ja osakkeiden määrä, että meillä on
saadakseen kuinka paljon se tällä hetkellä arvoltaan käyttäjälle.
Ja se on siinä salkun.
>> Nyt me katsomaan myydä.
Joten myydä aikoo palata muoto, joka meillä oli register.PHP.
Näemme, että lomake on menossa postitettavaksi tälle sivulle.
Mutta ensin, kun me ladata sivua, aiomme tehdä tämän.
>> Joten mitä tämä tekee?
No, voisimme vain myydä sivulle on yksi tekstikenttään, että käyttäjä
siirtyy tähän symboli, joka haluamme myydä.
Mutta aiomme olla hieman viisaampi ja aiomme olla pudota
alas, jonka avulla käyttäjä voi valita Varsinainen symboleja, jotka heillä jo on.
>> Joten olemme pääsemässä käyttäjän salkun.
Aiomme valita salkkuja kaikilla symboleilla, että käyttäjä
tällä hetkellä, tällä hetkellä kirjautuneen käyttäjän.
Varmista, että onnistui.
Ja nyt me aiomme lenkki palasi tietoa, vain tarttumalla
kukin symboli, ja varastointia Tässä symboleja array.
>> Ja nyt me aiomme renderöinti myydä muodossa.
Joten myydä lomake on menossa juuri olla pudotusvalikosta, valitse.
Ja jokainen vaihtoehto myydä muodossa on menossa vain tulostaa symboli
että me tarttui salkkuja pöytä.
>> Joten myydä lomake on menossa toimittaa takaisin sell.PHP.
Tarkasteltaessa sell.PHP, tämä on koodi että menee suoritetaan, kun jätämme
tälle sivulle.
Haluamme vahvistaa, että käyttäjä oikeastaan ​​tuli symboli.
>> Nyt olettaen, että he tekivät -
joten nyt haluamme selvittää, kuinka monta yhtyy käyttäjä on todella myyvät
ja kuinka paljon rahaa käyttäjän pitäisi saada myynti että monet osakkeet.
Joten me napata määrä osakkeita, jotka käyttäjällä on tämä merkki.
Etsimme ylös salkkuja varten Yksittäisen käyttäjän ja annetaan symboli.
>> Nyt varmista, että tosiasiallisesti palasi peräkkäin.
Koska jos se ei ole, käyttäjä ei oikeasti on, että symboli myydä.
Olettaen, että ne eivät ole, että symboli, haluamme napata määrä
Osakkeiden että heillä on.
Ja nyt haluamme etsiä miten paljon kukin osake kannattaa.
>> Joten käytimme etsiä toimintoa.
Etsimme ylös arvo tunnuksesta.
Olettaen, että näyttää jopa onnistunut, nyt aiomme todella päivittää kaikki
tiedot.
Joten haluamme poistaa salkkuja Osakkeiden että myymme.
Haluamme päivittää käyttäjän määrä rahaa.
>> Ja päivitämme sen osakkeita kertaa osakekurssi -
niin se on, kuinka paljon rahaa Käyttäjä juuri tehty.
Ja nyt haluamme päivittää historiamme.
Joten emme ole ottaneet ilmeen historiaa pöytä vielä.
Niin me palaamme tähän.
>> Nyt vihdoin aiomme suunnata takaisin salkun.
Nyt katsomaan ostaa.
Joten, ostaa pitäisi olla aika samanlainen myydä.
>> Näemme, että olemme jälleen menossa tarkistaa, jos olemme
Lähettämällä tälle sivulle.
Olettaen, että emme, olemme menossa ladata ostaa muodossa.
Joten mitä ostaa lomake näyttää?
>> Näemme tässä, se on vain tavallinen muodostavat että menee
toimittaa takaisin buy.PHP.
Ja se tulee olla symboli, joka käyttäjä on siirtymässä, määrä
osakkeita, jotka käyttäjä haluaa ostaa mainitun tunnuksen, ja se on siinä.
Joten kun esitämme takaisin buy.PHP, olemme nyt menossa suorittamaan tätä koodia.
>> Me taas haluamme vahvistaa, että käyttäjä kirjoittaa jotain voimassa.
Joten tässä me varmista ne oikeastaan ​​tuli symboli.
Täällä me varmista, että ne oikeastaan ​​tuli osaketta.
Ja tässä me varmista, että ne Annettu kokonaisluku osakkeita, joten
he eivät yrittää ostaa ABC osakkeita.
>> Nyt haluamme etsiä hintaa symboli, jotta tiedämme, kuinka paljon rahaa me
on vähennettävä käyttäjältä.
Nyt me valita, kuinka paljon rahaa käyttäjä todella on ja varmista, että
että onnistui.
Täällä me tarttumalla käteisellä.
Ja nyt täällä, me varmista että käyttäjällä on tarpeeksi rahaa.
>> Joten jos osakkeiden lukumäärä käyttäjä haluaa ostaa kertaa hinta kunkin
kyseisten osakkeiden on suurempi kuin määrä rahaa, että meillä on sitten
Käyttäjä ei ole varaa siihen.
Olettaen, että käyttäjä on tarpeeksi rahaa, nyt haluamme lisätä osaksi
käyttäjän salkun.
No, me työnnä käyttäjän portfolio, jos tämä sattuu olemaan
Ensimmäistä kertaa käyttäjä on ostamassa että tietty symboli.
>> Mutta entä jos he jo tapahtua olla joitakin Apple varastossa?
No, nyt olemme hyödyntämällä on päällekkäinen avain päivitys julkilausuman.
Joten siksi aikaisemmin me täsmentää, että ID ja symboli pitäisi olla yhteinen
perusavain, niin että jos yritämme aseta tunnus ja symboli, joka on
jo olemassa, me vain päivittää osakkeet kuuluvat uusien osakkeiden
käyttäjä on ostamassa.
>> Nyt haluamme määrän päivittämiseksi rahaa, että käyttäjä on, sillä ne
juuri viettänyt jonkin verran rahaa kyseiset osakkeet.
Ja lopuksi, me päivittää historiatauluun uudelleen.
Joka taas tutustumme klo toisessa.
Ja lopuksi me ohjata takaisin portfolio.PHP.
>> Joten katsotaanpa katsomaan historiatauluun.
Nyt muistaa, että historia taulukko on tarkoitus seurata kaikkia ostaa ja
myy, että kaikki käyttäjät tekevät, ei vain nykyinen määrä osakkeita, jotka
käyttäjillä on, joka on mitä portfolio on.
Olemme siis pitää kirjaa käyttäjän että ostaa tai myy, onko
Tässä nimenomaisessa Kauppa oli ostaa tai myydä, symboli, joka on
ostanut tai myynyt, osakkeiden lukumäärä että me ostaa tai myydä,
hinta yhden osakkeen, joka on ostetaan tai myydään, ja lopuksi aika
että tämä ostaa tai myydä tapahtuu.
>> Ja se on kaikki historiaa tietoja, joita tarvitaan
seurata.
Joten kun me katsoimme myydä, näimme, että olimme lisäämällä historiaan myydä,
koska siitä me ostaa tai myydä, kellonaika leima, ja
nykyinen käyttäjä, symboli, joka on myydään, osakkeiden lukumäärä, jotka ovat
myydään ja hinta Varastossa tällä hetkellä.
Samoin ostaa, se tulee näyttävät lähes sama.
Ainoa ero on sen sijaan Myynnin, ostamme.
>> Joten myydä ja ostaa, olemme laitat ne historiat taulukon kaikki
ostaa ja myy, joita tapahtuu.
Joten kaikki history.PHP tarvitsee tehdä, on napata tietoa historiasta
pöytä, varmista, että se onnistui, ja tehdä näitä tietoja.
Joten etsit history.PHP malli, mielenkiintoista tietoa
on täällä.
>> Olemme kiehkura hoitaakseen kaikki liiketoimet, tulostus, onko tämä
oli ostaa tai myydä, muotoilu päivämäärä aika että teimme tämän tapahtuman.
Muista meidän täytyy käyttää htmlspecialchars on
symboli, kaiken varalta.
Ja lopuksi, muotoilu määrä osakkeita, jotka ostettiin ja hinta
yhden osakkeen tuolloin.
>> Ja joka näyttää kaikki historian tietoja, joita me tarvitsemme.
Ja siinä se tästä PSET.
Nimeni on Rob, ja tämä oli CS50 Finance.