[Powered by Google Translate] [Walkthrough Problema Itakda 7] [Zamyla Chan] [Harvard University] [Ito ay CS50] [CS50.TV] Kamusta lahat, at maligayang pagdating sa walkthrough 7, CS50 Finance. Ngayon opisyal na namin ay tapos na sa lahat ng psets sa CS50, at kami ay kaliwa na may isa pang na kung saan ay pagpunta sa maging isang masaya pagpapatupad ng isang website na kung saan ang mga gumagamit ay maaaring mag-log in sa CS50 Finance at bumili at magbenta ng mga stock. Ngayon, kami ay pagpunta upang magkaroon ng ilang mga tool sa aming pagtatapon. Kami ay pagpunta sa pakikipag-usap tungkol sa mga pahintulot. Tuwing mayroon kang isang web folder, ka pagpunta sa nais na payagan ang mga gumagamit upang maisagawa ang ilang mga file ngunit din lamang basahin ang mga iba pang mga, kaya titingnan namin sa mga pahintulot at kung paano maaari mong itakda ang mga. Pagkatapos kami ay pagpunta sa tumingin sa PHP, HTML, at SQL code. Una, pahintulot. Kapag handa ka sa terminal sa isang tiyak na direktoryo, pagkatapos kung ano ang gusto mong gawin ay gusto mong patakbuhin ang chmod utos. Na sinusundan ng alinman sa mga titik o numero naaayon sa kung ano ang gusto mo talaga mundo upang makita, mo ang iyong sarili upang makita, atbp. Halimbawa, kapag mayroon kang isang folder, gusto mong folder na executable ng lahat na nakikita ito, kaya kung ano ang nais mong gawin ay maaari mong patakbuhin ang utos chmod isang + x at pagkatapos ay ang pangalan ng iyong folder. Kapag mayroon ka ng isang file tulad ng mga CSS file o mga file na larawan - tulad ng mga JPEG at bitmaps, mga bagay tulad na, o anumang code ng JavaScript - gusto mo na nababasa ng lahat, kaya pagkatapos ay kung ano ang ginagawa mo ay maaari mong gamitin ang wildcard - na ng asterisk - sa isa lamang na ipahiwatig sa CSS folder - lahat sa folder na iyon -  Ako sabihin na na nababasa ng lahat. Sa mga pahintulot, kapag ginagamit namin ang mga titik, Maaari rin naming gamitin ang numero sa halip. Kaya, makikita mo na ganap na kapag gusto ka ng isang bagay na executable - na kinakatawan ng numero 1 - isang bagay na nababasa ang bilang 4 at pagkatapos - writable bilang 2 - at kaya mahalagang kapag nais mong ng isang kumbinasyon ng mga, pagkatapos mong idagdag ang mga ito. Kung gusto ka ng isang bagay na nababasa, writable, at executable, nais mong magdagdag ng hanggang 4, 2, at 1 at na ay magbibigay sa iyo 7, pagkatapos ay kapag mayroon kang isang folder nais mong executable ng lahat - pati na rin nababasa at writable - gumawa ka na 7, 1, 1. Na 7 para sa iyo, pagkatapos 1 para sa iba pang mga tao. Kapag mayroon kang ang spec, ito ay aktwal na tukuyin kung aling mga folder at kung aling mga file kailangang chmod-ed partikular. Halimbawa, kapag mayroon kang folder - mga ay 7-1-1 - kapag mayroon kang mga imahe, o HTML, CSS, JavaScript, pagkatapos mga 6, 0, 4 - o 6, 4, 4 - at pagkatapos PHP file 6, 0, 0. Ang ideya sa likod na ay na ang mga gumagamit ay hindi dapat aktwal na makita ang iyong PHP code, ngunit lamang upang makita ang output. Magaling! Paglipat sa PHP. Nang simple, kahit kailan mo gusto ang isang PHP file, ang file suffix. Php. Maaari mo ring paghaluin ang HTML sa PHP code. Kung mayroon ka ng isang file na HTML, halimbawa, pagkatapos ay maaari mong ilakip ang mga ito gamit ang kaliwang anggulo, tandang pananong, php - ilagay ang iyong code sa php - at pagkatapos ay malapit na sa isa pang tandang pananong at kanang anggulo. Variable sa PHP ng maraming madaling humarap sa kaysa sa mga variable sa C. Variable anumang nagsisimula sa isang dollar sign sa unahan nito, at mahina ang kanilang nai-type. Iyon ay nangangahulugan na hindi mo kailangang mag-alala tungkol sa pagse-set ng isang bagay katumbas sa isang string o isang integer. Maaari mo lamang lamang sabihin, ito ay ang aking pangalan ng variable at pagkatapos na ito ay ang halaga nito, kaya upang mas madaling humarap sa may. Bagay isa pang ay na PHP ay nagbibigay-daan sa iyo upang gamitin ang mga nag-uugnay array. Maaari mo lamang tukuyin ang isang array tulad ng gagawin mo sa C sa pamamagitan ng sinasabi, dollar sign ang pangalan ng iyong array-katumbas, at pagkatapos ay sa square bracket may isa lamang lamang sa listahan ng mga halaga ng lahat ng mga elemento sa array. Ngunit, sa PHP kung ano ang maaari mo ring gawin ay tukuyin talaga ang - ito ay uri ng tulad ng isang hash. Maaari mong tukuyin ang index - kung ano ang iyong pagpunta sa tumawag ito - at pagkatapos na tumutugon sa isang halaga. Kung iyong aktwal na pumasa sa isang = 1, b = 2, c = 3, ang iyong array sa index ng ay magbibigay sa iyo 1. Ay magpainit mo ng pset up na may ilang PHP sa isang seksyon ng mga katanungan, at pagkatapos namin sumisid sa CS50 Finance. Mayroon kaming ilang - mayroon kaming ilang mga pag-andar, talaga, ipatupad sa website na ito. Gusto naming upang payagan ang mga gumagamit upang magrehistro sa aming website na may user name at password. Gusto naming upang payagan ang mga ito upang tumingin ng quote, at pagkatapos ay namin i-print ang pangalan ng na quote pati na rin ang kasalukuyang presyo na ito sa. Gusto naming upang payagan ang mga ito upang makita ang isang portfolio ng lahat ng pagbabahagi na sila ay binili sa gayon ngayon. Gusto din namin upang payagan ang mga ito upang bumili ng mga stock pati na rin ibenta ang mga ito. At pagkatapos ay sa wakas, nais naming upang payagan ang mga ito upang makita ang kasaysayan ng lahat ng mga transaksyon na ginawa nila. Pagkatapos, sa wakas, pagkatapos mong naipatupad ang lahat ng iyon, pagkatapos maaari ka nang ipatupad ang isang dagdag na tampok. Susubukan naming pumunta sa mga. Yaong ay maaaring maging alinman sa nagpapahintulot sa mga gumagamit upang makakuha ng dagdag na cash sa pamamagitan ng pagdeposito ng dagdag na cash, o maaari mong payagan ang mga ito upang baguhin ang kanilang mga password, o isang bagay tulad na, email sa kanila ng resibo kapag sila ay bumili o magbenta ng stock. May isang limitadong listahan ng mga tampok na maaaring ipatupad mo ang iyong sarili, sa gayon na ang huling isa sa doon. Dahil ito ay isang website, ikaw guys ay mayroon ding ng maraming kalayaan upang i-customize ito. Naming magbigay ng ilang CSS code, ngunit ikaw ay tiyak na libre sa tweak, gumawa tumingin ito nicer, ngunit pinagbabatayan ito ay isang pangunahing pag-andar kaya palaging sumangguni sa spec tungkol sa kung ano ang iyong aktwal na kailangan upang isama doon. Ng pagsunod sa mga spec, kami ay pagpunta sa gamit ang appliance bilang ding isang server. Ito ay pagpunta sa nagho-host ng aming website para sa amin, sa local server nito. Kung mong sundin ang mga tagubiling ito at unzip ang pset 7 pamamahagi ng code sa iyong virtual host / lokal na host ng folder,  maaari mong bisitahin lamang ang http://localhost/ sa Google Chrome sa appliance, at pagkatapos ay nais mong maabot ang code kung saan mo ang nakasulat pset 7. Pset 7 ay may isang grupo ng pamamahagi code, at sana we've - sa pamamagitan ng lahat ng ang mga psets bago ito - sanay sa amin sa pagbabasa sa pamamagitan ng pamamahagi ng code, pag-unawa kung ano ang function ay ibinigay, at kung paano namin magagawang gamitin mga at ang iba pang mga function na kami ay na pagpapatupad. Sa kasong ito, mayroon kaming 3 folder. Mayroon kaming isang HTML folder, kasama ang isang folder, at mga template folder. Ano kami ay pagpunta sa ginagawa sa ito pset uri ng naghihiwalay sa pag-iisip - ang pag-iisip ng programming - ng PHP code sa mga aktwal na visual na aspeto. Magkakaroon kami ng isang PHP file na ginagawa sa lahat ng pag-iisip, bumabasa sa database, print out ng mga bagay, ay may kung ang mga pahayag - mga bagay tulad na - at pagkatapos na makikita pumasa data sa aming mga template file - o template.php file. Ano na gawin ay basahin ang data at ito ay i-print ito. Maaari naming ituring ang mga template ng "pipi" sa na hindi namin talagang gusto ang mga ito na ginagawa ng maraming trabaho sa pagkalkula ng mga bagay. Gusto naming ang aming mga controllers upang gawin iyon. Isang kaunti sa na - sabihin tumagal ng isang pagtingin sa ilan ng ang code ng pamamahagi. Narito mayroon namin ang aming index.html file, at medyo walang laman. Mahalaga kung ano ang ginagawa nito - sinasabi nito, well, ako pagpunta sa nangangailangan ng configuration.php file. Hindi namin makita na doon, ngunit isa lamang ito sa pagtawag sa configuration.php file, at execute na. Pagkatapos ginagawa ito na, ito ay pagpunta sa render ang portfolio. -Render ay isang function, kaya kapag hindi namin sa isang controller, kami tatawag sa render, makikita namin bigyan ito ang file at pagkatapos ang data na namin ang pagpasa sa, kaya na tumawag sa portfolio.php uri ng pass sa data na iyon upang portfolio na maaaring humarap sa na. At ngayon, narito, aming login.php anyo.  Ito ang controller na talaga tumatagal ng pag-aalaga ng pag-log in. Dito, ay sumusuri kung ang isang form na ay isinumite sa ang file na ito at deal sa pagpapatunay sa mga pagsusumite. Titingnan namin sa humihingi ng paumanhin ang function na ito. Kapag gusto naming upang i-print ang isang mensahe ng error, gamitin humihingi kami ng paumanhin at na-redirect ang mga gumagamit sa isang tiyak na pahina na i-print ang partikular na mensahe ng error na nagsasaad namin. Patuloy sa, ito query sa database - we'll makakuha sa higit pa sa na mamaya. Pagkatapos mong makita na pababa dito kung ang isang form na ay hindi isinumite, pagkatapos ito nagpapagana ng isang form. Iyon ay nangangahulugan na napupunta sa login_form.php, kaya tingnan natin sa na. Login.php ay aktwal na kung saan nakita namin ang HTML pagharap sa ang aktwal na visual na aspeto. Narito mayroon namin ang isang input tag para sa mga pangalan ng user, ang isang input para sa password, pati na rin ang pindutan ng isumite. Na ang aktwal na kung saan ang visual na aspeto at ang HTML form na pagpunta sa gaganapin. Dito, sinasabi nito na ito ang nangyayari na isinumite ng isang tiyak na pamamaraan, na tinatawag post. Susubukan naming makakuha ng sa mga pagkakaiba sa pagitan ng mga pamamaraan - -post kumpara makakuha ng, mayroon ding isang bagay na tinatawag ilagay - namin sa mga pamamaraan sa ibang pagkakataon, ngunit para sa interes ng pset ito, Gusto ko lubos na hinihikayat ka upang magamit ang post. Alam namin na talaga sabay-sabay Ang form na ito ay nagsumite - mula sa login_form.php-- pagkatapos ay pumunta sa pagkilos - login.php-- talaga pumasa sa lahat ng mga parameter mula sa mga form sa login.php. Ang mga resulta mula sa mga form na iyon ay nilalaman sa loob ang post na ito na nag-uugnay array. Ang mga ini-index ng iba't ibang mga elemento sa array post ay kung ano mismo ang tinukoy mo dito. Sabihin mo na ang pangalan ng input na ito ay username. Ang pangalan ng isang ito ay password. Katulad nito, makikita mo ang username bilang index ng nag-uugnay array doon. Kung pumunta kami sa kabilang ang folder, mayroon kaming file na ito function na lubhang kapaki-pakinabang. Ang lahat ng mga function ay ipinatupad para sa iyo. Hindi mo na kailangang ipatupad ang alinman sa mga ito sa iyong sarili, ngunit ang kanilang pagpunta sa lubos na kapaki-pakinabang. Kami ay humihingi ng paumanhin, kung saan bilang ko sinabi bago, ay isa lamang i-print ang isang mensahe ng error para sa iyo sa isang tukoy na pahina - apology.php. Pagkatapos kami ay may dump, kaya kung tumawag ka lamang dump at pagkatapos ay pumasa sa variable, pagkatapos ito ay magdadala sa iyo sa isang pahina na ipapakita na variable para sa iyo. Pagkatapos namin na mag-logout, na talaga magtapos ang session ng isang tiyak na user. Lookup ay maging kapaki-pakinabang. Dahil kami ay pagharap sa mga quotes at mga stock, kami ay magagawang - at mahalagang real time. Kailangan naming malaman kung ano ang mga halaga ng stock ay, kaya kami ay may sa lookup function na na deal sa Yahoo dokumentasyon ng mga stock. Sandaling tumingin ka ng ilang mga simbolo ng stock, ito ay bumalik sa iyo ticker symbol pati na rin ang pangalan at ang kasalukuyang presyo ng stock na. Iyon ang lookup function na. Pagkatapos kami ay pagharap sa MySQL, kaya kami ay pagpunta sa ay kinakapos upang maisagawa ang ilang mga query sa aming SQL database. Mayroon kaming query upang harapin - sa uri ng abstract ilan sa na out. Kami ay pagpunta sa pagpasa sa buong string ng aming SQL query - at ang lahat ng mga variable na pumunta sa loob nito - at kung ano ang ginagawa ay aktwal na execute na para sa amin. Sa halip ng pagkakaroon upang isulat ang lahat ng ito out sa bawat oras na nais mong i-query - sa pamamagitan ng pagkuha ng lahat ng mga resulta mula sa query na iyon - maaari mo lamang tawagan ang query function na, at ito ay bumalik sa iyo - depende sa kung ano ang ginagamit mo para sa iyong query - marahil isang hilera ng lahat ng ang mga resulta na tumutugma sa query o katulad na. Higit pa sa na mamaya bagaman. Panghuli, mayroon kaming pag-redirect na, pati na ang pangalan ay nagmumungkahi, nagre-redirect ka sa ibang pahina. At pagkatapos ay mayroon kaming render, kung saan kami ay pagpunta sa pagtawag ng dalawang beses. Kapag handa ka sa isang controller, tawagan ka render sa pahina ng template at pagkatapos ay pumasa sa halaga na template ay humarap sa. Mga halagang iyon ay marahil pagpunta sa pagharap sa ang uri ng output na gusto mo ipinapakita sa iyong pahina ng template. Okay. Iyon ang mga pag-andar, at ng maraming higit pa sa ang code na ito sa pamamahagi. Hinihikayat ko sa iyo upang pumunta sa pamamagitan ng ito at tuklasin ang mga ito sa iyong sarili. Gayundin, ang spec ay marahil ituturo sa iyo sa pamamagitan ng ilang mga iba pang mga elemento ng pamamahagi ng code. Narito ang isang buod ng mga pag-andar na natagpuan sa functions.php. Okay. Ang unang gawain ay upang payagan ang mga gumagamit upang magrehistro sa website. Sa ngayon, may login form sa website, at ikaw ay ibinigay na may ilang mga gumagamit na may password. Maaari mong gamitin ang mga username na iyon at mag-log in, ngunit nais mong payagan ang mga tao na gumawa ng kanilang sariling mga username at idagdag ang kanilang mga sarili sa website. Ang layout para sa pagpaparehistro ay medyo katulad sa ang form sa pag-login, maliban username ay hindi pre-umiiral na, at ang user ay kailangang magbigay ng isang bagong password, at pagkatapos ay karaniwang mayroon kaming isang password sa pagkumpirma. Sa sandaling ang mga input ng user ang lahat ng impormasyon na iyon, gusto naming idagdag ang mga ito sa aming database ng mga user. Kami ay pagpunta sa magkaroon ng isang database - isang SQL database - na kami ay pagpunta upang isangguni. Sa database na iyon, magpapadala kami ng isang talahanayan na may lahat ng mga gumagamit naglalaman ang kanilang username, ang kanilang mga password, at din kung magkano ang cash mayroon silang. Sa rehistro, gusto naming upang payagan ang mga ito upang ipasok ang impormasyon na iyon. Gusto naming ipakita ang form na iyon. Gusto naming gawing sigurado na password ang kanilang - na ipinasok nila ng isa, at pagkatapos na ang mga password na tumutugma sa kapag ipinasok nila ito nang dalawang beses. Pagkatapos ng lahat ng na tapos na - ipagpalagay na mga error ay naka-check - gusto naming upang magdagdag ng mga gumagamit na iyon sa aming database. Sa wakas, sa sandaling mo na nakarehistro, ito ay medyo maginhawa kung hindi mo na kailangang mag-log in muli sa sandaling nakapag-nakarehistro, kaya kami ay upang mag-log ang mga ito sa sa website kung nakarehistro sa matagumpay. Ang unang gawain ay upang ipakita ang form, at ito ay aktwal na maging - ang buong proseso ng pagpaparehistro pagpunta na imo-modelo medyo malapit na pagkatapos ng pag-login maliban sa halip ng login.php na maaaring mayroon ka ng mga register.php. Sa halip ng login_form.php--kung saan ay ang template - makikita mo magparehistro form. Makikita mo nais na magdagdag ng isa pang field - field ng password sa pagkumpirma - sa halip ng isang username at isang password. Susunod, gusto namin upang suriin kung ang mga password tumugma o blangko. Mayroon kaming ang controller - register.php--na-aalaga ng paggawa ng mga tseke. Kapag ang isang form na ay isinumite sa pamamagitan ng paraan ng post, pagkatapos ang lahat ng mga variable ay nilalaman sa loob ng array post. Nais mong tiyakin na ang halaga array post sa index password tumutugma sa elemento ng pagkumpirma. Nais mong tiyakin na ang mga ito ay hindi blangko, at nais mong tiyakin na ito ay ang parehong. Isang maginhawang bagay tungkol sa PHP na hindi namin kailangang gamitin ang string ihambing ito. Maaari naming gamitin ang katumbas-katumbas ng operator  upang suriin kung ang mga string ay katumbas sa isa't isa. Para sa error handling, makikita mo nais na humihingi ng paumanhin. Upang humihingi ng paumanhin, mo lang tawagan ang function na  at pagkatapos ay tukuyin ang isang uri ng mensahe na gusto mong output. Pagkatapos mong nais upang idagdag ang user sa database. Hanggang ngayon, ang lahat ng namin ang paggawa ay lamang pakikitungo lokal gamit ang mga resulta ng form. Ngayon, hindi namin aktwal na nais upang idagdag ang mga ito sa aming database. Para sa, gusto muna namin upang matiyak na ang username na iyon ay hindi blangko. Maunawaan na sa isang website, hindi ka maaaring magkaroon ng maramihang mga gumagamit na may parehong username, kaya makikita mo gusto upang matiyak na kapag mong ipasok ng isang bagay sa iyong database - magsingit ng isang bagong user - hindi mo makakuha ng isang banggaan sa pagitan ng isang pre-umiiral na username at ang username na ang isang user ay sinusubukan upang isumite. Para sa, sa sandaling magsagawa ng isang query - pagpasok ng ilang mga gumagamit sa kanilang mga password at ng paunang halaga ng cash - sabay-sabay tumawag ka sa query na iyon, pagkatapos MySQL ang talagang bumalik maling kung ito nabigo. Ang istraktura ng mga gumagamit ay tulad ang username na iyon ay isang natatanging halaga, kaya hindi ka maaaring magkaroon ng higit sa isang. Kapag mong subukan at magpasok ng isang bagong hilera na may username na Umiiral na, na bumalik maling - tulad ng isang Boolean halaga maling. Isang nakakalito bagay dito na gugustuhin mong i-check kung ang resulta ay ang mga resulta ng iyong query. Kung nabigo, makikita mo nais na suriin na ang triple-katumbas operator. Na ang aktwal na pagpunta upang suriin kung may isang pagkabigo o hindi, kung saan, sa isang simpleng lamang ay katumbas-katumbas, ito ay totoo kung ang hilera ay walang laman. Ang resulta ng isang pagkabigo kung may isang banggaan sa pagitan ng mga username ay ang aktwal na halaga ng maling. Narito ay kung paano nais mong ipasok sa isang database. Narito ang query na nais mong magpatakbo ng mahigpit sa SQL. Isang bagay na maaari mong aktwal na pumunta sa website na namamahala sa iyong SQL database at i-play sa paligid doon sa pamamagitan ng pagpasok nang manu-mano ang alinman sa mga halaga o mga hilera. Ito ay output kung ano ang SQL output. Maaari mo ring patakbuhin ang SQL utos sa loob ng iyong database  at pagkatapos ay makita kung ano ang syntax maaaring, at pagkatapos isalin ang na sa sa query function na mayroon kami sa pset 7, na na halos kapareho sa mga query na iyong aktwal na patakbuhin. Kung gusto ko upang magsingit ng isang bagong hilera sa aking mga gumagamit ng talahanayan, Gusto ko tukuyin insert sa mga gumagamit, na kung saan ay ang pangalan ng aking mga talahanayan. Pagkatapos Gusto ko tukuyin ang mga pangalan ng haligi. Pagkatapos Gusto ko ibigay ang halaga kasama ang aking password. Password sa talahanayan ng aming mga gumagamit ay hindi naka-imbak bilang ng string lamang. Ito ay naka-imbak bilang naka-encrypt na bersyon, kaya makikita mo nais na patakbuhin ang function na silid sa ilalim ng lupa sa aktwal na password, at na ay magbibigay sa iyo ang tamang uri ng imbakan para sa array ng mga gumagamit. Nagpapatakbo ng magsingit ng isang bagong hanay sa iyong talahanayan ng mga gumagamit. Humarap sa query function na, bago sa C ginamit namin ang porsiyento mag-sign bilang isang placeholder. Katulad nito, ang parehong konsepto ng isang placeholder nalalapat dito. Sa query, tukuyin ang buong query, maliban sa tuwing ikaw ay pagharap sa mga variable bilang iyong input sa query, pagkatapos ay sa halip ng aktwal na paglalagay ng mga ito sa loob - bang kapag kami ay may printf pahayag sa C. Gusto namin ilagay ang string at pagkatapos ay isang placeholder doon, at pagkatapos ay pagkatapos ng bawat kuwit, tukuyin kung aling mga variable na namin ay may. Dito, kami ay upang gamitin ang tanong sign markahan bilang aming placeholder at pagkatapos ay pumasa sa bawat variable, ayon sa pagkakasunud-sunod upang, para sa mga placeholder - kung saan ang mga variable ay dapat pumunta. Kaya dito, ang unang tandang pananong ay papalitan sa pamamagitan ng aktwal na username pagkatapos ang pangalawang tandang pananong ng password. Pagkatapos wakas, sa sandaling mo na nakarehistro sa kanila at idinagdag ito sa database, nais mong upang mag-log ang mga ito sa website. Namin ang uri ng isang napakabilis na global variable na tinatawag na session. Session ay tumatagal ng ilang mga id, at ang id na tumutugma sa user na kasalukuyang naka-log in. Ano ang gusto mong gawin ay mahanap kung ano ang kanilang user id at pagkatapos ay itakda na session id bilang id na partikular na user. Ang isang function na gusto mong gamitin dito ay isang SQL utos na makuha ang huling ipinasok na numero ng id mula sa iyong talahanayan. Pagkatapos hilera ay tumawag - it'll tumawag sa id - it'll magtalaga ng pangalan sa ang bilang na ito ay nagbabalik. Tumawag na id. Na namin ngayon ang tapos magparehistro, at maaari naming ilipat sa quote. Quote nagbibigay-daan sa isang gumagamit ay input ang pangalan ng isang tiyak na stock, at pagkatapos ay ibalik ang mga katangian ng stock na. Ano ang gugustuhin mong gawin dito ay magkaroon ng controller at ilang mga template. Sa kasong ito, kami ay pagpunta sa magkaroon ng controller na kung saan ay pagpunta sa gawin ang lahat ng pag-iisip para sa atin. Ito ay upang tumingin simbolo at pagkatapos ay pumasa sa mga halaga sa mga template na i-print. Kami ay pagpunta sa may 2 template dito. Kami ay pagpunta sa may 1 template na nagbibigay ng form na kung saan ang mga gumagamit ay pagpunta sa input ang pangalan ng stock - ang pangalan ng ibahagi. Pagkatapos din namin ay pagpunta sa gusto ng isa pang template na nagpapakita ng mga halagang iyon. Maaari mong tingnan sa pag-login para sa isang halimbawa ng kung paano ka magkaroon ng isang form na tumatanggap ng input, maliban dito, nais lamang namin ng 1 field. Hindi namin gusto ang isang username at password field. Gusto lang namin 1 field ng teksto na nagpapahintulot sa gumagamit na i-input ang pangalan ng isang tiyak na stock. Pagkatapos na gusto mong ipadala ang data na iyon - sa sandaling Tiningnan mo ang stock na - sa quote_form.php. Lookup ay bumalik sa simbolo ng stock, pangalan, at ng isang presyo. Yaong ay nilalaman sa loob ng isang nag-uugnay array. Hanapin ang lookup function sa loob ng functions.php para sa karagdagang impormasyon sa mga uri ng pagbalik ng mga. Magaling! Kaya pagkatapos ay sa wakas, makikita mo nais na ipakita ang impormasyon ng stock. Gugustuhin mong marahil ipakita - you'll nais upang ma-access ang mga variable. Sa sandaling mayroon ka ng mga presyo sa isang variable - pati na rin ang pangalan at simbolo - makikita mo nais na ipakita ang mga sa iyong pahina ng template. Na pahina ng template ay maaaring tinatawag na show_quote.php o isang bagay. Ang iyong pahina ng quote.php ay render palabas quote at pagkatapos ay pumasa sa lahat ng mga halaga. Pagkatapos sa iyong php pahina, aktwal mong i-print ang mga halaga sa HTML aspeto ng pahina. Mo lamang gamitin ang function na naka-print at pumasa sa presyo. Mayroong 2 mga paraan - maaari mong pagdugtungin ang mga ito na may tuldok ang operator, o gumamit ng isang placeholder. Ang mga gumagamit ay malaon pagpunta sa pagbili at pagbenta ng mga stock. Gusto naming upang payagan ang mga ito ng ilang mga paraan na makita ang lahat ng mga stock na kasalukuyang. Kami ay pagpunta sa tumawag na ang kanilang portfolio. Portfolio ay, baka para sa bawat gumagamit, naglalaman ng isang bungkos ng mga hilera naglilista ng mga uri ng magbahagi na mayroon sila at pagkatapos ay kung gaano karaming ng mga mayroon silang. Aming umiiral na talahanayan - ngayon mayroon kaming gumagamit ng table sa aming database. Na naglalaman ng username ng gumagamit pati na rin ang kanilang mga password at kung magkano ang cash mayroon silang. Walang tunay na paraan ng pag-iimbak ng lahat ng kanilang mga stock sa loob ng. Ito ay hindi tulad ng maaari naming ipasok ang bagong haligi para sa bawat stock. Iyon ay isang napaka, napaka-mahabang hilera dahil mayroon kaming isang walang-katapusang dami ng mga uri ng mga stock na sila ay maaaring magkaroon ng. Kaya, sa halip kung ano ang gagawin namin ay sa loob ng parehong database, makikita naming magkaroon ng isang talahanayan ng mga gumagamit, ngunit pagkatapos ay gagamitin din namin magkaroon ng isang portfolio table. Ang talahanayan ng portfolio ay tiyak na naka-link sa talahanayan ng mga gumagamit, ngunit sa halip ang istraktura ng talahanayan ng portfolio ay magkakaroon ng stock ng impormasyon, kung gaano karaming pagbabahagi ng na stock user ay, pati na rin ang partikular na id bilang isang gumagamit. Mayroon kang ang mga gumagamit ng talahanayan na may isang id pati na rin ang username, ang hash - na ang password, ang naka-encrypt na password - at pagkatapos ay ang halaga ng cash na mayroon silang. Ang numero ng id ay naka-link sa numero ng id mula sa portfolio. Portfolio ay lamang ang simbolo ng stock pati na rin ang pagbabahagi - ang bilang ng mga pagbabahagi ng na stock na ang user ay may. Sa portfolio na talahanayan ay mayroon kang isa lamang may nagmamay ari ang lahat ng pagbabahagi ng lahat ng mga gumagamit sa iyong site. Sa paglaon, upang tukuyin lamang pagbabahagi sa isang tiyak na user - lamang portfolio kanilang - nais mong makuha ang mga halaga mula sa talahanayan ng iyong portfolio na ang numero ng id ay partikular na gumagamit. Kapag ipakita ang portfolio, makikita mo gusto upang i-ulat ang bawat isa ng stock sa portfolio ng isang user. Gugustuhin mong i-ulat ang bilang ng mga pagbabahagi at ang kasalukuyang halaga ng mga pagbabahagi. Na ang kasalukuyang halaga ng mga pagbabahagi ay hindi naka-imbak sa table ng portfolio dahil na na nag-a-update - sa minimum - araw-araw sa pamamagitan ng Yahoo. Upang makakuha ng impormasyon na iyon, hindi mo maaaring sumangguni mula sa iyong SQL query. Ano ang function na nagbibigay na sa amin? Ano ang function ay makuha ang presyo? Iyon ay lookup, ito gamit lookup sa isang partikular na simbolo ay magbibigay sa iyo ng maraming impormasyon. Ito ay magbibigay sa iyo ng 3 piraso ng impormasyon - ang pangalan, simbolo, pati na rin ang presyo. Sandaling iyong paghahanap sa isang tiyak na simbolo, pagkatapos ay maaari mong makuha ang presyo, at pagkatapos ay maaari mong gamitin ang presyo na ipinapakita sa iyong portfolio. Portfolio ay dapat ipakita ang kasalukuyang balanse ng cash ng user. Patlang na naka-imbak sa loob ng talahanayan ng iyong mga user. Kaya pagkatapos alala kung paano talaga namin ay kinakailangang - nagkakaroon kami ng iba't ibang mga uri ng PHP file. Kami ay pagpunta sa magkaroon ng controller na talaga ang lahat ng mga pag-iisip para sa iyo. At pagkatapos ay mayroon kaming isang template kung saan ang template ang deal sa outputting data. Mayroon kang mag-isip ng kung ano ang variable controller ay kailangang gumawa ng. Kung kami ay pagharap sa isang portfolio na output ng bawat pangalan, simbolo, at magbahagi ng number, pati na rin ang kasalukuyang presyo ng stock, makikita mo nais na mahanap ang ilang mga paraan ng isa lamang pagpasa sa - maaari mong pumasa sa isang hanay ng mga halaga na tugma sa. Natin pumunta sa isang halimbawa ng kung paano mo maaaring makuha ang lahat ng stock na pag-aari sa pamamagitan ng isang partikular na gumagamit. Ito ay hindi pagharap - pa - sa mga presyo ng stock. Ano ito ay gawin ay magpatakbo ng isang query. Makuha ang simbolo pati na rin ang pagbabahagi mula sa - Ako pagtawag ng table na ito, ngunit sa kasong ito kung ano ang magiging? Ano ang pangalan ng table na kami ay pagharap sa na may simbolo at pagbabahagi para sa isang partikular na user? Ang alinman sa mga gumagamit o portfolio. Portfolio. Ano ito ay gawin query portfolio para sa mga simbolo at pagbabahagi para sa isang partikular na gumagamit. Dito, sinasabi ko, (piliin ang simbolo, pagbabahagi FROM tbl - ngunit sa halip ng talahanayan, ka upang palitan ang na may portfolio. 'Saan' ay isa lamang ang aking kondisyon. Ako sinasabi gusto ko lang upang makakuha ng mga nag-uugnay array na tumutugma  sa sumusunod na kondisyon na ito - katumbas ng id.  Ako Pagkatapos ng paglalagay ng placeholder at session id. Ano ito ay gawin ay sabihin para sa bawat hilera sa hilera. Ito ay isang kapong baka na paraan sa halip na aktwal na kinakailangang mag-set up ng isang para sa loop na iterates sa lahat ng ini-index, pagkatapos ay sa PHP, maaari kang magkaroon ng para sa-bawat loop. Kung mayroon kang isang naibigay na array, pagkatapos ay maaari mong sabihin ako pagpunta upang tawagan ang bawat sunud-sunod na elemento - Ako pagpunta sa tumawag sa bawat elemento ang pangalang ito. Kaya, para sa bawat isa sa mga sangkap na ito, ako na tumawag sa kanila na ito, ang maaari kong gawin ito. Sa ito para sa bawat isa, mayroon ka ng mga hilera bilang iyong aktwal na array, at bawat hilera ka pagpunta sa tumawag ng hilera. Sa tuwing ito executes katawan, ito ay pumunta at ito ay i-update ang hilera sa susunod na sangkap sa mga hilera. Ngayon, sa mga tuntunin ng pagbili ng mga stock, kung ano ang gusto naming gawin ay makakuha ng stock na ang gumagamit ay nais na bumili at ang halaga ng pagbabahagi na ang gumagamit ay nais upang bumili, at pagkatapos - kung gusto nila - magdagdag ng na stock sa kanilang mga portfolio. Malinaw naman, kung sila ay pagbili ng isang bagay, at pagkatapos na upang bawasan ang ang halaga ng pera na mayroon silang, kaya na pagpunta upang bawasan ang kanilang cash. Kami ay pagpunta sa pagharap sa mga pag-update ng portfolio at pati na rin ng table ang mga gumagamit, na naglalaman ng cash. Ngunit una, kailangan mo upang makuha ang aktwal na stock at halaga ng pagbabahagi na gumagamit ang nais. Para sa, kakailanganin mo ng isang HTML form na humingi para sa simbolo ng stock na gusto mong bumili pati na rin ang bilang ng mga pagbabahagi. Pagkatapos ay makikita mo gusto mong idagdag. Gugustuhin mong pumili ng ilang mga halaga. Namin ang nawala sa pamamagitan ng ito nang kaunti na, ngunit kapag ikaw ay sinusubukan upang makakuha ng ilang mga hilera - mabawi ang ilang mga hilera mula sa talahanayan sa SQL, ito ay ang sumusunod na syntax. Mo na piliin, at pagkatapos ay kung tinukoy mo ang isang bituin, na makikita talaga ibalik ang buong, buong hilera para sa iyo. Pagkatapos muli, mayroon ka ng mga kundisyon kung saan, at pagkatapos ay tinukoy mo - Gusto ko lang username na katumbas mail-in, kaya ito lamang mabawi ang mga hilera sa mga gumagamit na tumutugma sa mail-in. Kapag ang isang gumagamit ay nais na magdagdag ng isang ibahagi sa isang portfolio, Kailangan mong suriin para sa isang ilang mga error. Nais mong tiyakin na ang gumagamit ay maaaring aktwal na bayaran ng stock, kaya makikita mo nais na suriin ang kanilang mga cash. Bago, ginamit namin bituin upang makuha ang isang buong hilera mula sa isang table SQL. Ngunit dito, maaari naming aktwal lamang tukuyin na gusto ko lang 1 halaga - Gusto ko lang cash. Kaya dito, ibalik ang cash para sa mga gumagamit na may id number 1. Kung ang isang gumagamit ay bumili ng isang tiyak na stock ngunit pagkatapos ay bumili ng higit pa na stock, pagkatapos ay sa iyong portfolio - hindi mo gusto isang hiwalay na linya, isa pang hilera na naglalaman na ang mga bagong transaksyon. Aktwal mong nais na i-update ang halaga. Ang lahat na ang pagbabago talaga ay ang halaga ng mga pagbabahagi na user na nagmamay-ari. Kung gagamitin mo ang insert sa query - kaya lang ito isingit sa iyong portfolio ang lahat ng mga halagang ito - numero ng id ng user pati na rin ang simbolo ng stock na sila ay pagbili at pagbabahagi, pagkatapos makikita mo din gusto upang tukuyin, well, kung nagpatakbo ako sa isang duplicate na key - sa kasong ito, ang mga dobleng key ay hindi lamang id ng user ngunit rin ang simbolo ng stock - dahil maaari ka lamang magkaroon ng - ang aming premise ay na maaari ka lamang magkaroon ng 1 hilera  na tumutugma sa 1 tukoy na simbolo. Kaya, sa mga duplicate na key - kung nagpapatakbo ka sa isang banggaan doon - ka upang i-update ang pagbabahagi sa bagong halaga nito. Pagbabahagi katumbas ng anumang nagkaroon kami bago kasama ang bilang ng mga pagbabahagi na ang gumagamit ay pagbili. Ngayon na aming na-update ang talahanayan sa portfolio, Susubukan naming gusto upang i-update ang cash ng user. Na sa talahanayan ng mga gumagamit, kaya kami ay pagpunta sa pagbabawas ng ilang mga halaga mula sa cash. Siguro, ito na cash ay katumbas ng minus cash - at pagkatapos ay sa isang tiyak na halaga. Upang i-update ang cash, gagawin mo - kung Nais kong gumawa ng layo ng pera mula sa mail-in, pagkatapos Gusto ko patakbuhin ang query - 'I-update ang mga gumagamit' at pagkatapos ay itakda ang haligi ng cash sa cash - Gusto ko alisin ang mga 9999 dolyar lamang kung ang username ay katumbas mail-in. Subalit, sa kasong ito, hindi namin nais ibawas 9999 partikular. Gusto naming upang tukuyin, well, gusto naming ibawas ang kasalukuyang presyo ng stock multiply sa pamamagitan ng bilang ng mga pagbabahagi na sila ay pagbili. Ngayon pinayagan namin ang mga ito upang makita ang lahat ng stock na mayroon sila, pati na rin bumili ng higit pang mga stock. Din kami dati pinapayagan ang mga ito upang tingnan ang kasalukuyang presyo ng stock. Narito nais naming upang payagan ang mga ito upang ibenta ang mga ito. Una gusto naming ipakita talaga - gusto naming upang payagan ang mga ito upang makita ang lahat ng stock na mayroon sila, kaya dito gusto namin upang ipakita ang lahat ng mga hilera mula sa portfolio. Kung pinili nila upang magbenta ng ilang mga stock, pagkatapos kami ay pagpunta sa ipagpalagay na gusto nila upang magbenta ng lahat ng ito. Sila ay hindi lamang upang magbenta ng 50% ng kanilang mga pagbabahagi, sila ay pagpunta sa ibenta ang 100% ng. Maaari lang namin tanggalin ang buong hilera mula sa portfolio. Maaari naming tanggalin ang pagbabahagi ng ibinigay na gumagamit ng ilang mga simbolo. Ang syntax para sa. Pagkatapos gusto naming i-update ang cash. Kami ay pagpunta sa ay pagdaragdag ng sa cash katumbas sa ang halaga ng pagbabahagi na ito ay nagbebenta multiply ng kasalukuyang presyo ng stock - hindi ang presyo kung saan sila bumili ito, ngunit sa halip ang presyo kung saan ang mga ito ay - kasalukuyang presyo kapag sila ay nagbebenta ng mga ito. Upang isangguni ang kasalukuyang presyo ng stock, ay gusto mong gamitin ang lookup, kung saan ay magbibigay sa iyo ang presyo ng stock sa kasalukuyang oras. Na namin ngayon ang natitira na may kasaysayan, kung saan nais mong payagan ang isang gumagamit upang subaybayan ng lahat ng kanilang mga transaksyon - nais upang makita kailanman ibinebenta nila ang isang bagay, kapag sila ay bumili ng isang stock. Gusto naming tukuyin ang oras na kung saan ang kanilang ginawa na pati na rin ang kung gaano karaming sila bumili at kung ano ang stock na ito ay. Kami ng anumang kasalukuyang, umiiral na istraktura na tumutukoy na? Well, mayroon kaming portfolio na nagpapakita ng bilang stock na ang isang user ay may para sa isang naibigay na. Ngunit kami ay pagbuo portfolio sa paraan na ito ina-update kapag bumili namin ang maramihang mga, kung saan ang kasaysayan ay dapat - kung bumili ka ng Apple, 10 pagbabahagi nito, at pagkatapos ay mamaya sa magbenta ng 5, gusto mo upang makita ang mga hiwalay bilang hiwalay na mga pagkilos, hiwalay na hilera. Sapagkat ang aksyon na-visualize na sa aming mga talahanayan ng portfolio ay lamang ng isang update sa partikular na hilera,  kaya marahil namin ay pagpunta sa gusto ng isa pang talahanayan. Sa aming database, mayroon kaming talahanayan ng aming mga gumagamit, mayroon kaming aming portfolio talahanayan, at ngayon makikita namin marahil nais kasaysayan table. Na kasaysayan talahanayan ay maaaring subaybayan ng kasalukuyang petsa, pati na rin ang partikular na simbolo ng stock, pati na rin ang kung gaano karaming pagbabahagi, at pagkatapos ay kung ano ang pagkilos na ito ay - kung ikaw ay pagbili ng mga pagbabahagi o kung ikaw ay nagbebenta ng mga ito. Humarap sa petsa, may ilang mga paraan na maaari mong gawin ito. PHP ay isang paraan ng pinapanatili ang track ng petsa, kung saan maaari mong tingnan ang iyong sarili. Sa SQL maaari mo ring gamitin ang alinman sa ngayon o kasalukuyang timestamp. Iyon ay hanggang sa iyo. Tiyakin lamang na sa tuwing ang isang gumagamit ay bumibili o nagbebenta, makikita mo ina-update ang kanilang mga cash sa talahanayan ng mga gumagamit, ikaw ay nag-a-update ang mga hilera sa talahanayan ng mga portfolio, pagkatapos ay makikita mo rin ina-update ang kasaysayan, kaya pagpunta sa 3 magkakahiwalay na SQL query na makikita mo ang pagtawag doon. Mayroon kaming isang bungkos ng pag-andar ngayon. Lamang ng ilang mga paalala na sa iyong index file, makikita mo gustong i-link sa hindi bababa sa iyong - ngunit makikita mo gusto upang payagan ang isang gumagamit sa link sa buy.php pahina. Na pagpunta upang payagan ang isang user - buy.php ang controller, kaya na pagpunta sa alinman sa magpadala sa iyo sa - na na magpadala sa iyo sa form na nagbibigay-daan sa iyo upang tingnan ang mga bagay-bagay sa. Mayroon kaming kasaysayan. Namin ang pag-log out, pagkuha ng quote at pagkatapos ay nagbebenta. Iyon ang sa minimum kung ano ang gusto mong ipakita sa. Sa mga tuntunin ng portfolio, portfolio ay aktwal na ipinapakita sa pahina ng index. Kung pumunta kami sa index, dito namin makita na ito nagpapagana portfolio.php at pass sa nag-uugnay array - talaga ang pamagat ay katumbas ng portfolio. Kaya, ito ay ang controller. Kung pumunta kami sa template ng portfolio.php, pagkatapos ang lahat ng ito ay may - ay nagpapakita ng isa lamang ng isang larawan na nagsasabing, naku, ang site na ito ay kasalukuyang ginagawa. Sa paglaon, sa sandaling pumasa sa - you'll pagpasa sa talaga mas tiyak na impormasyon. Sa halip na ang pamagat lamang, makikita mo marahil ay pagpasa sa higit pang mga bagay. Sa sandaling mayroon ka ng mga halaga, pagkatapos portfolio.php maaaring humarap sa mga halagang iyon at pag-print out ang mga ito sa anumang uri ng pagkakasunod-sunod. Sandaling naipatupad ang lahat ng mga, kailangan mo ring ipatupad ang 1 pang tampok. Ito ay maaaring nagpapahintulot ng user na baguhin ang kanilang password, upang i-reset ang kanilang mga password kung nakalimutan mo ito - ito para sa pag-reset ng password, pagkatapos malamang din gusto upang i-edit magparehistro upang ito ay nagbibigay-daan sa kanila upang tukuyin ang isang email, kaya kung sila kalimutan ang kanilang password, pagkatapos ay maaari nilang makakuha na. Marahil maaari silang ipasok ang kanilang username, at pagkatapos ay isang email ang ipapadala sa kanila na may isang link upang i-reset ang kanilang mga password. Maaari kang magkaroon ng isang bagay na nagbibigay-daan sa mga gumagamit upang makakuha ng resibo sa tuwing sila ay bumili o magbenta ng isang bagay, at pagkatapos ay sa wakas, payagan ang mga ito upang magdagdag ng cash sa kanilang website. Lamang upang bumalik sa konsepto ng mga controllers at ang mga template ng kaunti. Magkakaroon ka ng isang bagay tulad ng isang - kaya magkakaroon ka ng controller dito. Sa ngayon, naghahanap kami sa login.php halimbawa. Kapag mayroon kami ng controller, isa lamang ito ay pagpunta sa tumagal ng 2 kaso. Kapag mayroon kami controllers, hindi namin sa piraso na ito na hindi namin uri rin ng pagharap sa kapag mayroon kaming mga form pati na rin. Controller ay isa lamang magkaroon ng hiwalay na mga pagkilos - kung ang isang form na Naisumite na ang, at pagkatapos ay dalawang kung ang user ay nanggagaling sa pahinang iyon sa unang pagkakataon at kailangang pa rin sa input ang form na iyon. Ako pagpunta sa tumalon sa kasong iyon unang bago pagpunta hanggang sa unang kaso ng pagkakaroon ng form. Dito sinasabi namin, kung ang form ay isinumite sa mga post ng paraan ng - huwag mag-alala tungkol na isang bit. Huwag mag-alala tungkol sa masyadong maraming ngunit maunawaan na talaga function na ito deal na may kung ang isang form na ay naisumite o hindi. Ang kundisyong ito ay totoo kung ang isang gumagamit ay nagsumite ng form. Kung hindi, pagkatapos kami ay pagpunta sa nais upang call na login_form.php ng ​​render, at pagkatapos ay pumasa sa pamagat. Pamagat na ito ay isa lamang na lumitaw sa header. Kung ano ang ginagawa ay isa lamang nagsasabing, okay - na rin, kung ang isang gumagamit ay napupunta sa login.php at hindi talagang naka-log in, pagkatapos Gusto kong ipadala ang mga ito sa mga pahina na may form na iyon na nagbibigay-daan sa kanila upang input ang username at ang password. Pagkatapos ko pumunta sa login_form, at pagkatapos na ay ang aktwal na form. Pagkatapos, sa sandaling na isinusumite ng user form na iyon, sila ay pagpunta sa isumite ito sa login.php may post ang paraan. Pagkatapos tunay ako pagpunta sa ipasok ang seksyon na ito ng aking kung pang tao loop. Pagkatapos ito ay in dito na harapin namin kasama ang mga halaga na ipinasok sa form. Ito ay dito na harapin namin sa mga. Pagkatapos sabay-sabay ka makitungo sa mga halagang iyon - kung ikaw ay pagharap sa - sabihin kami ay pagharap sa ang quote.php pahina kung saan ang isang tao ay maaari input ng stock na gusto nila upang tumingin up, at pagkatapos ay makita na display - na uri ng katulad dito. Narito mayroon kaming isang login form - you'd malamang na magkaroon ng isang quote form - ngunit pagkatapos ay sa sandaling ang gumagamit ay aktwal na nagsumite ng impormasyon na iyon, gugustuhin mong controller upang pumasa sa isa pang template na ipakita sa kanila na aktwal na impormasyon. Kaya pagkatapos karapatan sa paligid dito, pagkatapos bibigyan ka marahil - sa paligid ng dulo ng iyong kundisyon dito - ang kung ang pamamaraan ay katumbas ng post - pagkatapos ay marahil ay gusto mo upang mag-render ng isa pang pahina - ang palabas quote - na nagpapadala ka sa pahinang iyon - show_quote.php-- at pagkatapos ay sa file na iyon ay sumangguni sa mga halagang iyon. Ba na magkaroon ng kahulugan? Mayroon kaming isang controller na talaga deal na may 2 kaso - kung ipinasok mo na ang isang form sa o hindi. Kung hindi mo ipinasok ang form, pagkatapos ay pag-redirect ito sa form na iyon, na pagkatapos ay ilagay ka pabalik sa pahinang iyon. Pagkatapos, sa sandaling mayroon kang impormasyon sa controller, ang katawan na ay humarap sa na impormasyon kung kinakailangan - alinman hinahanap halaga ng stock, at pagkatapos ay sa sandaling ito ay tumingala sa mga halaga iyon at may mga ito sa isang mahusay na-format na array, pagkatapos makapasa na array sa pahina ng template  na ang mga deal may outputting na impormasyon. Muli, dahil ito ay web, ito ay magiging masaya. Humihingi kami ng labas ng C kaya hindi namin ay limitado sa ASCII at ang output sa terminal, kaya magsaya na ito. Maaari mong gawin ito bilang visual hangga't gusto mo. Maaari mong payagan ang mga gumagamit sa input ang mga milyon-milyong dolyar sa isang pagkakataon, o limitahan ang mga ito at talagang ibig sabihin at payagan ang mga ito lamang magpasok ng 1 matipid sa isang pagkakataon o isang bagay tulad na. Talagang bang magsaya sa mga ito. PHP code ng kaunti simple na ito ng kaunti mas madali upang i-map ang iyong pseudocode sa aktwal na pagpapatupad. Kaya, tiyak na magkaroon ng kasiyahan na ito dahil ito ay talagang aming huling piraso sa CS50. Na iyon, ito ay walkthrough 7. Sa sandaling tapos ka na nanonood ng walkthrough at tapos iyong pset, ang mga ito ay din psets, at ngayon ay namin sa ang panghuling produkto - pagkatapos makuha namin sa pamamagitan ng pagsusulit 1. Pagkatapos sana ay maaari mong gamitin ang mga tool na iyong natutunan mula sa psets - hindi lamang ang syntax, ngunit higit pa sa abstract paniwala kung paano kumuha ng ilang - gusto, gusto kong gawin ito at pagkatapos ay aktwal na pagpapatupad na. Learning kung paano pagpakasakitan sa pamamagitan ng code sa syntax at pamamahagi. Pagbabasa ng code ng ibang tao, at pagkatapos ay pagbibigay-kahulugan na ang paggamit ng mga pre-umiiral na function. Kaya, good luck sa huling pset. Ng kasiyahan sa humantong ang mga walkthroughs. Umaasa ako na sila ay kapaki-pakinabang para sa iyo. Mga ito ay Walkthroughs, at Maraming salamat. [CS50.TV]