[Daqq tal-mużika] ROB BOWDEN: Hi. Jien Rob, u nispera li int lest jitqiegħdu istokk f'din is-soluzzjoni. Ewwelnett, ejja tagħti ħarsa lejn reġistru. Mela ftakar li hawnhekk aħna qed iċċekkjar biex tara jekk formola kienet stazzjonati din il-paġna. Allura l-ewwel ħaġa li aħna qed tmur tagħmel hu li tmur għall-ieħor. U aħna qed tmur biex tirrendi il-formola reġistru. Allura l-formola reġistru huwa għaddej li post biex register.PHP. U dak huwa se tibgħat? Huwa ser tibgħat username li l- utent se jimla, password, u konferma - il-password ittajpjat mill-ġdid. Allura issa meta dik il-formola huwa mibgħut biex register.PHP aħna ser tesegwixxi dan jekk. Ħarsa lejn dan jekk, aħna qed ewwel ser jivvalida l-input. Aħna tixtieq li tagħmel ċert li l-username u password ma kinux vojta u li il-konferma fil-fatt jaqbel mal-password. Ladarba aħna ħadthom ivverifikat li nistgħu attwalment jirreġistraw l-utent. X'ifisser dan? Well, irridu li daħħal il- utent fis-database tagħna. U dan huwa kif aħna ser tagħmel dan. Allura aħna qed tmur biex daħħal fis-utenti tabella l-oqsma isem l-utent, hash, u flus kontanti. Il-valur default ta 'flus kontanti se tkun 10,000. U aħna qed tmur biex jgħaddu bħala username, username, permezz tal-super POST globali thats sottomessa mill-formola. U aħna qed tmur għall-kriptaġġ l-password. Allura jekk dan irnexxielu, allura ir-riżultati mhux se jkun falz. Jekk hija naqset, allura aħna jridu ruhna. Xi ħaġa li marret ħażin. U dak li setgħet marret ħażin? Ukoll, jeħtieġ li jkun hemm username uniku. U għalhekk l-mistoqsija talli kellha jekk il-username diġà teżisti fit-tabella. Allura jekk wieħed jassumi li kien username uniku, allura aħna qed tmur għall-mistoqsija li grab l- ID ta 'dak l-utent. Ftakar li l-ID huwa auto-inkrementazzjoni. U għalhekk jekk dan jiġri li jonqsu għal xi raġuni, allura irridu ruhna li aħna ma setgħux grab-ID. Iżda jekk wieħed jassumi li ma ifallu, aħna grab-ID minn dak il-mistoqsija ritornati, jaħżnu dik f'sessjoni tagħna - hekk irridu log dan l-utent fil billi ħażna tal-ID fis-sessjoni super globali, u finalment idawwru għal portafoll tagħna. U li hu għal reġistru. Issa aħna qed tmur biex jimxu fuq kwotazzjoni. Allura kwotazzjoni se jkollha sett verament simili up. Naraw hawnhekk li din hija l-kodiċi li aħna qed tmur biex tesegwixxi meta formola hija stazzjonati din il-paġna. Iżda l-ewwel għandna attwalment ikollhom li tirrendi tali formola. Allura tieħu ħarsa lejn formola kwotazzjoni, liema oqsma hemm? Naraw li l-kwotazzjoni għandha tkun waħda kaxxa ta 'test bis-simbolu isem. U hekk meta l-formola kwotazzjoni huwa mibgħut li quote.PHP aħna issa qed tmur biex jesegwixxi dan il-kodiċi. U l-unika varjabbli POST super tagħna globali se tkun simbolu. Aħna jivvalidaw li tagħmel ċert li huma attwalment stazzjonati is-simbolu. U jekk dawn ma, aħna ngħidu li inti għandhom jipprovdu simbolu. Jekk wieħed jassumi dawn ma jipprovdu simbolu, aħna tfittex up dak is-simbolu. Issa ftakar li tfittex up jista 'jkollhom naqset peress li, ukoll, forsi ma kienx simbolu validu li tibda bil. Mela jekk din tfittex up ritorn foloz, irridu li ruhna li l- simbolu ma nstabx. Ladarba aħna ħadthom misjuba-simbolu, issa aħna tista 'tirrendi l-template quote.PHP. Xi jfisser li look like? Li jinsab biss morna għall-istampa li sehem ta 'kwalunkwe l-isem ħażniet kienet min ikun x'ikun l-prezz tat-titoli huwa. Issa għaliex nużaw dan htmlspecialchars jiffunzjonaw? Dak għax l-isem istokk u s-simbolu jista 'attwalment fihom speċjali karattri li m'għandhomx jiġi interpretat bħala HTML. Kull dritt, b'tali mod li huwa għall-kwotazzjoni. Issa rridu nħarsu lejn index.php u portafoll. Iżda l-ewwel għandna attwalment ħtieġa li jinbena il-mejda portafolli. Ara kif aħna qed tmur biex tagħmel dan. Mela ejja tagħti ħarsa lejn l-istruttura. U naraw li l-portafolli tabella se jkollu ID. Allura li għaddej biex tkun l-utent tal- ID thats ddaħħal l-ishma. Għandna simbolu, li se tkun is-simbolu tal-kumpanija li aħna qed jiddaħħlu l-ishma. U allura l-ishma huwa n-numru ta ' ishma li qed jiġi mdaħħal. Mela ftakar li kull l-spec pset, aħna jispeċifika li ID u s-simbolu - we check out indiċi, ID u simbolu huwa l-kodiċi primarju. Allura user ID u s-simbolu pairing għandu jidher wieħed biss time f'din it-tabella. Issa ejja nħarsu lejn il-kodiċi. Allura issa index.php se grab kollha ta 'informazzjoni portafoll tagħna u juru lill-utent. Allura l-ewwel, aħna qed tmur biex grab l-flus kontanti li l-utent bħalissa għandha mill- tabella flus kontanti. Ftakar, li query huwa dejjem se li jirritornaw firxa ta 'arrays. Allura anke jekk aħna biss magħżula flus minn ringiela waħda, għad għandna bżonn li grab li flus kontanti permezz ta 'indiċjar fil- indiċi 0 ta 'ringieli u ħtif indiċi flus kontanti. Allura issa rridu tagħżel kollha tal- informazzjoni mit-tabella portfolios dan huwa rilevanti għall-preżent illoggjat utent. Għandna bżonn ta 'kors biex jivvalidaw li li attwalment irnexxielu, li aħna għandhom dejjem jagħmlu kull meta aħna query. Ladarba aħna għandna kollha ta 'dik l-informazzjoni, l-spec pset tinforma magħna li aħna għandhom jagħmlu dan sabiex nicely taħżen l-informazzjoni kollha f'din il- pożizzjonijiet array. Allura aħna qed looping fuq kollha ta 'l- informazzjoni portfolio, tfittex l- istokk assoċjati ma 'kull ringiela fil- informazzjoni portfolio, u mbagħad ħażna fil-firxa pożizzjoni l-isem, prezzijiet, ishma u simbolu kollha assoċjati ma 'dak l-istokk. U fl-aħħarnett, aħna qed tmur biex tirrendi portfolio.PHP, li jgħaddi fl-ammont ta 'flus kontanti għandna attwalment, il- pożizzjonijiet array li aħna biss mibnija, u t-titolu ta 'dan paġna li se jkun portafoll. Ejja tagħti ħarsa lejn portfolio.PHP. U naraw li l interessanti maġġuri parti huwa dan loop. Allura aħna qed looping fuq il-pożizzjonijiet array, ħolqien ta ' mejda, fejn din it-tabella - aħna qed populating kull ringiela mal- informazzjoni li nitfgħu ġewwa l- pożizzjonijiet array. Għal darb'oħra, għandna bżonn li jużaw htmlspecialchars fil-każ li dan is-simbolu jew l-isem fihom karattri HTML. U hawn aħna qed multiplikazzjoni tal-prezz u l-ammont ta 'ishma li għandna sabiex jiksbu kemm hu bħalissa jiswew lill-utent. U li hu għall-portafoll. Issa aħna ser tagħti ħarsa lejn jbiegħu. Allura jbiegħu se jmorru lura għall- format li kellna fil register.PHP. Naraw li forma huwa għaddej li jiġu stazzjonati din il-paġna. Iżda l-ewwel, meta aħna tagħbija il-paġna, aħna qed tmur biex tagħmel dan. Allura dak li huwa dan isir? Well, nistgħu biss ikollhom il-paġna jbiegħu jkollhom kaxxa ta 'test wieħed li l-utent jidħol dan is-simbolu li irridu li jbiegħu. Iżda aħna qed tmur biex tkun daqsxejn aktar għaqlija u aħna qed tmur biex ikollhom qatra stabbilit li tippermetti lill-utent li jagħżel simboli attwali li huma diġà għandhom. Allura aħna qed jkollna portafoll tal-utent. Aħna ser jintgħażlu minn portafolli Is-simboli kollha li l-utent bħalissa għandha, l-preżent illoggjat utent. Kun żgur li dan irnexxielu. U issa aħna qed tmur biex loop madwar id- bagħtu lura tagħrif, just ħtif kull simbolu, u maħżuna f'dan array simboli. U issa aħna qed tmur biex jirrendi l-formola jbiegħu. Allura l-formola jbiegħu se biss jkun drop down menu, tagħżel. U kull għażla fil-forma jbiegħu huwa ser biss print out-simbolu li aħna qabad mill- portafolli tabella. Allura l-formola jbiegħu se tissottometti lura għall sell.PHP. Ħarsa lejn sell.PHP, dan huwa l-kodiċi li għaddej biex tesegwixxi meta aħna jissottomettu għal din il-paġna. Aħna rridu li jivvalidaw li l-utent attwalment daħlu simbolu. Issa jekk wieħed jassumi li huma għamlu - hekk issa irridu li jiddeterminaw kif ħafna jikkondividi l-utent huwa attwalment bejgħ u kemm flus l-utent għandhom jingħataw għall-bejgħ li ħafna ishma. Allura aħna grab-numru ta 'ishma li l-utent għandu għal dan is-simbolu. Aħna qed tfittex up fil-portafolli għall- minħabba utent u s-simbolu mogħti. Issa kun żgur li li attwalment lura filliera. Għaliex jekk ma, l-utent ma attwalment ikollhom dak is-simbolu li jbiegħu. Jekk wieħed jassumi dawn ma jkollhom dak is-simbolu, irridu li grab-numru ta ' ishma li huma għandhom. U issa rridu nħarsu up kif kemm kull sehem min. Allura aħna użat il-ħarsa up funzjoni. Aħna qed tfittex il-valur tas-simbolu. Jekk wieħed jassumi li l-ħarsa up irnexxielu, issa aħna qed tmur biex attwalment taġġorna kollha l-informazzjoni. Allura aħna tixtieq li tħassar mill-portafolli l-ishma li aħna qed bejgħ. Aħna rridu li taġġorna l-utent tal- ammont ta 'flus. U aħna qed aġġornament minn ishma darbiet il-prezz tat-titoli - b'tali mod li kemm flus l-utent biss magħmula. U issa rridu li taġġorna l-istorja tagħna. Allura aħna ma ħadu ħarsa fuq il-mejda istorja s'issa. Allura aħna ser terga 'lura għal dan. Issa finalment aħna qed tmur biex idawwru Lura għall-portafoll. Issa ejja tagħti ħarsa lejn jixtru. Allura, jixtru għandu jkun pretty simili li jbiegħu. Naraw li aħna qed darb'oħra tmur biex tikkontrolla biex tara jekk aħna qed tissottometti din il-paġna. Jekk wieħed jassumi li aħna mhux qed, aħna qed se tagħbija l-formola jixtru. Allura dak ma l-forma buy look like? Naraw hawnhekk huwa biss regolari forma li għaddej biex tissottometti lura għall buy.PHP. U li għaddej biex ikollhom simbolu li l-utent huwa li jidħlu, l-għadd ta ' ishma li l-utent irid jixtri ta 'dak is-simbolu, u thats it. Allura meta aħna jissottomettu lura għall buy.PHP, aħna qed issa ser tesegwixxi dan il-kodiċi. Aħna darb'oħra jridu jivvalidaw li l- utent daħal xi ħaġa valida. Allura hawnhekk aħna qed jagħmlu ċert li attwalment daħlu simbolu. Hawnhekk aħna qed jagħmlu ċert li huma ishma attwalment imdaħħla. U hawn aħna qed jagħmlu ċert li dawn daħal integer għal ishma, hekk dawn mhux qed jippruvaw jixtru ishma ABC. Issa rridu li tfittex l-prezz tal- simbolu hekk nafu kemm flus aħna għandhom inaqqsu mill-utent. Issa aħna ser tagħżel kemm flus l-utent attwalment għandha u kun żgur li li rnexxielha. Hawnhekk aħna qed ħtif l-flus kontanti. U issa hawn, aħna qed jagħmlu ċert li l-utent ikollu flus biżżejjed. Allura jekk in-numru ta 'ishma l-utent jixtieq jixtri darbiet il-prezz ta 'kull ta 'dawn l-ishma huwa akbar mill- ammont ta 'flus li għandna, allura l- utent ma tistax taffordja li. Jekk wieħed jassumi li l-utent ikollu flus biżżejjed, issa irridu li daħħal fil- portafoll utent. Well, aħna ser daħħal fil-l-utent portafoll jekk dan jiġri li jkun l- ewwel darba li l-utent huwa xiri dak is-simbolu partikolari. Imma x'jiġri jekk huma diġà jiġri li jkollhom xi istokk Apple? Well, issa aħna qed jagħmlu użu mill-fuq duplikat dikjarazzjoni aġġornament ċavetta. Allura dan huwa għaliex qabel we speċifikat li ID u s-simbolu għandu jkun konġunt kodiċi primarju, b'tali mod li jekk nippruvaw daħħal ID u simbolu li huma diġà hemm, aħna ser biss taġġorna l- ishma li jinkludu l-ishma l-ġodda li l-utent qed tixtri. Issa rridu li taġġorna l-ammont ta ' flus kontanti li l-utent ikollu, peress li biss jintefqu xi flus fuq dawk l-ishma. U fl-aħħarnett, aħna ser taġġorna il-mejda istorja mill-ġdid. Li, għal darb'oħra, aħna ser tħares fuq fit-tieni. U finalment aħna ser idawwru Lura għall portfolio.PHP. Mela ejja tagħti ħarsa lejn il-mejda istorja. Issa ftakar li t-tabella istorja hija suppost li jżommu rekord ta jixtri kollha u tbiegħ l-utenti kollha jagħmlu, mhux biss il- numru attwali ta 'ishma li l- utenti jkollhom, li huwa dak portafoll huwa għall. Allura aħna qed iżżomm rekord ta 'l-utent li qed tixtri jew bejgħ, kemm jekk din it-transazzjoni partikolari kien buy jew tbigħ, is-simbolu thats qed mixtrija jew mibjugħa, in-numru ta 'ishma li aħna qed jixtru jew bejgħ, il- prezz ta 'sehem wieħed thats qed mixtrija jew mibjugħa, u finalment, il-ħin li dan ix-xiri jew bejgħ qed isseħħ. U li kollox mill-istorja informazzjoni li għandna bżonn li jżommu rekord ta '. Allura meta ħarisna lejn jbiegħu, rajna li konna ddaħħal fis-istorja jbiegħu, kif jekk aħna qed jixtru jew bejgħ, it-timbru ħin kurrenti, u l- utent attwali, is-simbolu thats qed mibjugħa, in-numru ta 'ishma li huma qed jinbiegħ, u l-prezz ta ' l-istokk f'dan il-ħin. Bl-istess mod, fil jixtru, inneħħu tfittex kważi l-istess. L-unika differenza hija minflok ta 'bejgħ, aħna qed jixtru. Allura fil jbiegħu u jixtru, aħna qed ddaħħal fis -tabella istorja kollha tal- tixtri u tbiegħ li qed jiġri. Allura kull history.PHP teħtieġ li tagħmel huwa grab l-informazzjoni mill-istorja mejda, kun żgur hija rnexxielha, u jirrendi dik l-informazzjoni. Allura tħares lejn l-template history.PHP, l-informazzjoni interessanti huwa dritt hawn. Aħna looping fuq kollha ta 'l- transazzjonijiet, stampar jekk dan kienet tixtri jew tbiegħ, l-ifformattjar żmien id-data li għamilna din it-transazzjoni. Ftakar għandna bżonn li jużaw htmlspecialchars fuq il- simbolu, biss fil-każ. U fl-aħħarnett, l-ifformattjar-numru ta ' ishma li kienu mixtrija u l-prezz ta 'sehem wieħed dak iż-żmien. U li juri kollha ta 'l-istorja informazzjoni li għandna bżonn. U li hu għal dan pset. Jisimni Rob, u dan kien CS50 Finanzi.