[Powered by Google Translate] [PHP Web Development] [Tommy MacWilliam] [Ito ay CS50.] [CS50.TV] Sa video na ito, makikita malaman natin ang tungkol gamit ang PHP para sa web development. PHP ay isang scripting wika na maaaring magamit upang ipatupad mga website sa isang web server. Ang isang web server ay mahalagang isang machine nakatuon sa pagbibigay ng nilalaman na maaaring ma-access sa pamamagitan ng internet. Kapag nag-navigate ka sa isang web page tulad ng Facebook.com / home.php ang code sa file na tinatawag na home.php na nakatira sa isang web server Facebook sa isang lugar ay pinaandar sa server na iyon. Ang code na ito ay malamang na bumuo ng ilang mga output ay na kung saan ay siya namang ipinadala mula sa server sa iyong web browser. Susubukan naming ginagamit ang CS50 appliance bilang isang web server. Ang iyong machine marahil ay hindi halos bilang malakas na bilang ng mga makina sa isang data center ng Facebook, ngunit magkakaroon ka ng walang problema na gamitin ito para sa web development. Kapag mag-navigate kami sa isang URL tulad ng http://localhost/hello.php i-configure namin ang appliance sa pamamagitan ng isang application na tinatawag na ang Apache HTTP server upang tumingin para sa isang file na tinatawag na hello.php sa loob ng bahay / jharvard / vhosts / localhosts / html sa pamamagitan ng default. Kung umiiral ang file na pagkatapos Apache ay gagamit ng interpreter PHP upang isakatuparan ang code na PHP sa hello.php. Kung file na hindi umiiral pagkatapos ay Apache ay magtapon ng isang Hindi natagpuan ang error o ng isang 404 error, na marahil iyong nakita mo habang nagba-browse sa Web. Hayaan ang kumuha ng isang pagtingin sa hello.php. Maaari naming makita dito na bumubuo hello.php isang line signal ng output. Kapag nagpatakbo hello.php namin sa command line sa pamamagitan ng php hello.php na output ay naka-print sa terminal. Ngayon, kapag ina-access namin ang file na ito sa pamamagitan ng isang URL sa web browser output nito ay ipapadala sa mga web browser, kaya heading sa URL, http://localhost/hello.php, maaari naming makita ang output sa aming web browser. Subukan ang pagdaragdag ng isa pang printf sa aming kumusta programa mundo Hayaan. Okay, ni magtungo ang pabalik sa web browser at makita kung ano ang mayroon kaming ipaalam. Kawili-wili. Kaysa sa pag-print ng isa pang linya sa sarili nitong linya, tulad ng kung paano mo nakita sa terminal, mukhang ito Nakakuha smushed papunta sa parehong linya tulad sa iba printf, kaya siguro mga bagong linya ay hindi gumagana sa PHP. Hindi masyadong. Tandaan na HTML ay karaniwang ginagamit upang lumikha ng mga pahina ng web na maaaring maipakita ng mga web browser. Hindi lamang ay ang string halo mula sa php hindi wastong HTML, ngunit isipin na hindi namin maaaring gamitin ang \ n character sa HTML upang lumikha ng isang line break. Sa halip na lamang outputting output wastong HTML isang string let ni. Sa pamamagitan ng paggamit ng talata na mga tag sa bawat isa sa aming mga printf tawag Ipapakita sa sarili nitong linya, kaya ngayon kapag binisita namin ang URL pagturo sa valid.php http://localhost/valid.php makikita natin ang output na kaming naghahanap ng para sa. Ngayon, kung makita namin ang pinagmulan ng pahinang ito maaari naming makita na ngayon kaming naghahanap sa wastong HTML, na aming nilikha mula sa PHP. Ilagay ang lahat ng aming HTML sa loob printf tawag ay siyempre pagpunta upang makakuha ng talagang nakakainis. Sa kabutihang-palad madali namin paghaluin ang HTML at PHP sa parehong php file.. Tandaan, ang lahat ng aming mga code na PHP ay dapat na nakapaloob sa loob ng . Anumang bagay na ay hindi nakapaloob sa loob ng mga delimiter ay simpleng ipapadala bilang output sa browser sa halip na pinaandar. Iyon ay nangangahulugang maaari naming gawin ang isang bagay na katulad nito. Maaari lang namin isulat ang HTML sa loob ng aming php file. at pagkatapos ay ipasok ang mga bloke ng PHP kung saan man nais naming ilang php code upang ipatupad. Narito tinutukoy namin ang ilang variable sa tuktok ng file, at mas bago i-print namin ang mga ito out sa loob ng aming HTML. Ngayon kung bisitahin namin ang URL na ito, http://localhost/mixed.php maaari naming tingnan ang aming nasuri PHP sa loob ng aming HTML. Ngayon tumagal ng isang pagtingin sa kung paano namin maaaring pumasa data ipaalam kasama ng aming iba't ibang mga pahina ng PHP. Sa halip na sinasabi maaari naming lamang sabihin . Sabihin ngayon bistahan kung paano namin maaaring pumasa data kasama ng aming iba't ibang mga pahina ng PHP. Ang isang paraan na maaari naming gawin iyon ay upang i-encode na impormasyon sa URL ng isang pahina. Kapag nagba-browse sa Web, maaari kang napansin na ang ilang mga URL naglalaman ng isang? sinusundan ng isang string na naglalaman ng mga ampersand at pantay-pantay ang mga karatula. Ang bahagi ng URL ay kilala bilang ang query string, at ito ay nagpapahintulot sa iyo epektibo upang pumasa sa mga argumento sa iyong script PHP. Ang string ng query ay binubuo ng mga pangunahing halaga ng mga pareho, tulad ng isang hash table. Ang isang pantay na pag-sign naghihiwalay sa isang susi at ang mga katumbas na halaga habang ampersand paghiwalayin ang mga pares. Ang isang URL na kamukha http://localhost/get.php?foo=bar&baz=qux May 2 pangunahing mga pares ng halaga sa query string. Ang pangunahing foo maps sa halaga bar, at ang mga key baz maps sa halaga qux. Maaari naming i-access nang madali ang mga pangunahing mga pares ng halaga gamit ang isang espesyal na variable sa PHP, $ _GET. $ _GET Ay isang nag-uugnay array na awtomatikong populated na may mga data sa query string. Iyon ay nangangahulugan na ang naibigay na ang URL na ito $ _GET ["foo"] ay magiging katumbas ng string bar. Hayaan ang kumuha ng isang pagtingin sa get.php upang makita ang $ _GET sa pagkilos. Narito na aming ginagamit ng isang function na tinatawag na var_dump, kung saan kapag ibinigay na isang array o iba pang mga variable ay i-print ito para sa amin. Ngayon kung ma-access namin lamang http://localhost/get.php pagkatapos ay gagamitin namin makita ang isang walang laman na array dahil hindi pa namin na ibinigay ng isang query string. Kung gagawin namin magbigay ng isang string ng query sa pamamagitan ng http://localhost/get.php?foo=bar&baz=qux pagkatapos ay maaari naming makita na ang $ _GET variable ay naglalaman ng key halaga ng mga pareho ang string ng query. Ngunit paano kung hindi namin nais na ilagay ang aming data sa loob ng URL ng isang pahina? Para sa malalaking halaga ng data, ito ay maaaring magresulta sa ilang mga medyo pangit URL na pagpunta sa gumawa ng aming mga makintab hitsura website pilay. Sa halip namin maaaring ilagay sa query string sa katawan ng mga kahilingan ng HTTP sa halip na URL ang kahilingan ni. Pagkatapos ay maaari naming gamitin $ _POST variable na PHP ni upang ma-access ang key na mga pares ng halaga. Ang isang paraan upang gawin ito ay sa pamamagitan ng isang HTML form. Narito mayroon kaming isang simpleng form ng HTML. Pansinin dito na ang mga pamamaraan na katangian ng ang form na ito ay post. Sinasabihan nito ang browser upang ilagay ang key ng mga pares ng halaga sa form ng sa nilalaman ng mga kahilingan sa halip na sa URL. Kung kami ay upang gamitin ang halagang iyong nakukuha para sa katangiang ito pagkatapos key pares halaga ang form ng gusto pumunta sa query string sa halip, kaya maaari kaming access ang mga ito sa pamamagitan ng $ _GET muli. Ang aksyon na katangian ng ang form na nagsasabi ng browser kung saan upang ipadala ang data. Narito ang aming 2-input na mga elemento ay may mga katangian ng pangalan. Ang halaga ng mga katangian pangalan ay maglingkod bilang mga pindutan sa aming mga data, at ang mga halaga ng input ng teksto ay magiging halaga ng mga pindutang iyon. Ngayon ipaalam sa tumagal ng isang pagtingin sa post.php, ang file na ang form na ito ay pagsusumite sa. Tulad ng ginawa namin bago, i-namin ay nagpapalabas ang mga nilalaman ng $ _POST variable. Ni mag-navigate sa form na may http://localhost/form.php Hayaan. Ngayon kapag isinumite namin ang form na maaari naming makita na ang data mula sa form.php Lumipas na post.php walang appending isang string ng query sa URL. Ngayon nakakita kami ng 2 iba't-ibang paraan ng pagpasa ng data sa pagitan ng mga pahina ng PHP, makakuha ng at i-post. Sa aming halimbawa, ginamit namin 2 iba't ibang mga uri ng mga kahilingan ng HTTP. Tulad ng maaaring mong asahan, isang kahilingan get ay ginagamit kapag kami populated $ _GET Mula sa URL, at isang kahilingan sa post na ito ay ginamit kapag populated na kami ng $ _POST. Sa pagdidisenyo ng iyong web apps ito, isang magandang pamantayan upang gamitin ang mga kahilingan get kapag ang iyong app ay read-only na data, at mga kahilingan sa post na ito kapag ang iyong app ay isulat ang data. Halimbawa, ang isang query sa paghahanap ay basahin ang data mula sa iyong app, kaya saysay ang isang kahilingan get. Sa kabilang banda, ang iyong app ay isulat ang data sa pamamagitan ng isang bagay tulad ng isang registration form, kaya isang kahilingan sa post na gagawing higit pakiramdam, at iyon ang isang pangkalahatang-ideya ng ilan sa mga diskarte Makikita ginagamit namin sa CS50 upang lumikha ng mga website gamit ang PHP. Ang pangalan ko ay Tommy, at ito ay CS50. [CS50.TV]