1 00:00:00,000 --> 00:00:03,000 [Powered by Google Translate] [PHP entènèt Devlopman] 2 00:00:03,000 --> 00:00:05,000 [Tommy MacWilliam] 3 00:00:05,000 --> 00:00:07,000 [Sa a se CS50.] [CS50.TV] 4 00:00:07,000 --> 00:00:11,000 >> Nan videyo sa a, nou pral aprann sou lè l sèvi avèk PHP pou devlopman entènèt. 5 00:00:11,000 --> 00:00:14,000 PHP se yon lang scripting ki kapab itilize aplike 6 00:00:14,000 --> 00:00:17,000 sou sit entènèt sou yon sèvè entènèt. 7 00:00:17,000 --> 00:00:21,000 Yon sèvè wèb se esansyèlman yon machin angaje nan founi kontni 8 00:00:21,000 --> 00:00:24,000 ki ka jwenn aksè sou Entènèt la. 9 00:00:24,000 --> 00:00:30,000 Lè ou navige nan yon paj entènèt tankou Facebook.com / home.php 10 00:00:30,000 --> 00:00:35,000 kòd la nan dosye rele home.php a ki ap viv sou yon sèvè sit entènèt Facebook yon kote 11 00:00:35,000 --> 00:00:38,000 yo pral egzekite sou sa sèvè. 12 00:00:38,000 --> 00:00:41,000 Kòd sa a ap gen chans pou jenere kèk pwodiksyon 13 00:00:41,000 --> 00:00:43,000 ki pral nan vire ap voye soti nan sèvè a 14 00:00:43,000 --> 00:00:45,000 navigatè entènèt ou. 15 00:00:45,000 --> 00:00:49,000 Nou pral lè l sèvi avèk aparèy la CS50 kòm yon sèvè entènèt. 16 00:00:49,000 --> 00:00:51,000 Machin ou pwobableman pa pwal prèske kòm pwisan kòm machin yo 17 00:00:51,000 --> 00:00:57,000 nan yon Facebook done sant, men ou pral pa gen okenn pwoblèm lè l sèvi avèk li pou devlopman entènèt. 18 00:00:57,000 --> 00:01:05,000 >> Lè nou navige nan yon URL tankou http://localhost/hello.php 19 00:01:05,000 --> 00:01:10,000 nou configured aparèy la atravè yon aplikasyon rele sèvè a Apache HTTP 20 00:01:10,000 --> 00:01:19,000 yo gade pou yon dosye rele hello.php andedan nan kay / jharvard / vost / localhosts / html pa default. 21 00:01:19,000 --> 00:01:23,000 Si sa dosye ki egziste Lè sa a, Apache pral sèvi ak entèprèt la PHP 22 00:01:23,000 --> 00:01:27,000 al touye kòd la PHP nan hello.php. 23 00:01:27,000 --> 00:01:31,000 Si sa dosye pa egziste Lè sa a, Apache pral voye yon erè pa jwenn 24 00:01:31,000 --> 00:01:36,000 oswa yon erè 404, ki ou te pwobableman wè pandan y ap Navigasyon entènèt la. 25 00:01:36,000 --> 00:01:40,000 >> Se pou nou pran yon gade nan hello.php. 26 00:01:40,000 --> 00:01:45,000 Nou ka wè isit la ke hello.php jenere yon liy siyal nan pwodiksyon. 27 00:01:45,000 --> 00:01:51,000 Lè nou kouri hello.php nan liy lan lòd via php hello.php 28 00:01:51,000 --> 00:01:54,000 ke randman te enprime nan tèminal la. 29 00:01:54,000 --> 00:01:58,000 Koulye a, lè nou gen aksè sa a ranpli atravè yon URL nan navigatè wèb la 30 00:01:58,000 --> 00:02:01,000 pral pwodiksyon li dwe voye l bay navigatè a entènèt, 31 00:02:01,000 --> 00:02:09,000 Se konsa, tit nan URL la, http://localhost/hello.php, 32 00:02:09,000 --> 00:02:12,000 nou ka wè pwodiksyon an nan navigatè entènèt nou an. 33 00:02:12,000 --> 00:02:17,000 >> Ann eseye ajoute yon lòt printf nan pwogram mond alo nou an. 34 00:02:17,000 --> 00:02:23,000 Oke, kite la tèt tounen nan navigatè wèb la ak wè sa ki nou genyen. 35 00:02:23,000 --> 00:02:25,000 Enteresan. 36 00:02:25,000 --> 00:02:28,000 Olye ke enprime yon lòt liy sou liy pwòp li yo, jan ou ta gen pou wè 37 00:02:28,000 --> 00:02:32,000 nan tèminal la, li sanble tankou li te smushed sou liy la menm 38 00:02:32,000 --> 00:02:36,000 ak lòt printf a, liy sa petèt nouvo pa travay nan PHP. 39 00:02:36,000 --> 00:02:38,000 Pa byen. 40 00:02:38,000 --> 00:02:41,000 Sonje ke HTML se tipikman itilize yo kreye paj wèb 41 00:02:41,000 --> 00:02:44,000 ki ka parèt pa navigatè entènèt. 42 00:02:44,000 --> 00:02:49,000 Se pa sèlman se fisèl la bonjou soti nan php pa valab HTML, 43 00:02:49,000 --> 00:02:53,000 Men, sonje ke nou pa ka sèvi ak karaktè a \ n nan HTML 44 00:02:53,000 --> 00:02:55,000 yo kreye yon ti repo liy. 45 00:02:55,000 --> 00:03:01,000 Olye pou yo tou senpleman sorti pwodiksyon ki valid HTML yon Se pou fisèl la. 46 00:03:01,000 --> 00:03:04,000 Lè l sèvi avèk paragraf Tags chak nan apèl printf nou 47 00:03:04,000 --> 00:03:07,000 yo pral parèt sou liy pwòp li yo, 48 00:03:07,000 --> 00:03:11,000 Se konsa, kounye a lè nou ale nan pwente nan URL valid.php 49 00:03:11,000 --> 00:03:17,000 http://localhost/valid.php 50 00:03:17,000 --> 00:03:19,000 nou wè pwodiksyon an ke nou ap chèche pou. 51 00:03:19,000 --> 00:03:22,000 >> Koulye a, si nou wè sous la nan paj sa a 52 00:03:22,000 --> 00:03:25,000 nou ka wè ke nou ap kounye a kap nan HTML ki valab, 53 00:03:25,000 --> 00:03:28,000 ki nou kreye nan PHP. 54 00:03:28,000 --> 00:03:31,000 Mete tout HTML nou an andedan apèl printf 55 00:03:31,000 --> 00:03:34,000 se nan kou pral jwenn vrèman anmèdan. 56 00:03:34,000 --> 00:03:38,000 Chans pou nou ka byen fasil melanje HTML ak PHP 57 00:03:38,000 --> 00:03:41,000 nan menm dosye a php.. 58 00:03:41,000 --> 00:03:47,000 Sonje byen, tout nan kòd PHP nou yo dwe fèmen nan 00:03:49,000 ak?>. 60 00:03:49,000 --> 00:03:52,000 Nenpòt bagay ki pa fèmen nan separateur sa yo 61 00:03:52,000 --> 00:03:55,000 pwal tou senpleman ap voye kòm randman nan navigatè a 62 00:03:55,000 --> 00:03:57,000 olye pou yo egzekite. 63 00:03:57,000 --> 00:04:01,000 Sa vle di nou ka fè yon bagay tankou sa a. 64 00:04:01,000 --> 00:04:05,000 Nou ka tou senpleman ekri HTML andedan nan dosye php nou an. 65 00:04:05,000 --> 00:04:11,000 ak Lè sa a, insert PHP blòk tout kote nou ta renmen gen kèk kòd php yo dwe egzekite. 66 00:04:11,000 --> 00:04:15,000 Isit la nou defini yon varyab kèk nan tèt la nan dosye a, 67 00:04:15,000 --> 00:04:19,000 epi pita nou ekri ak lèt ​​detache yo soti andedan nan HTML nou an. 68 00:04:19,000 --> 00:04:27,000 Koulye a, si nou vizite URL sa a, http://localhost/mixed.php 69 00:04:27,000 --> 00:04:33,000 nou ka wè PHP evalye nou andedan nan HTML nou an. 70 00:04:33,000 --> 00:04:36,000 >> Koulye a, kite a pran yon gade nan ki jan nou ka pase done 71 00:04:36,000 --> 00:04:39,000 nan mitan divès kalite paj PHP nou yo. 72 00:04:39,000 --> 00:04:51,000 Olye ke li di 73 00:04:51,000 --> 00:04:58,000 nou ka tou senpleman di 00:05:01,000 ak?>. 75 00:05:01,000 --> 00:05:03,000 Se pou nou kounye a pran yon gade nan ki jan nou ka pase done 76 00:05:03,000 --> 00:05:06,000 nan mitan divès kalite paj PHP nou yo. 77 00:05:06,000 --> 00:05:11,000 Youn nan fason nou kapab fè se sa ki programme enfòmasyon nan URL la nan yon paj. 78 00:05:11,000 --> 00:05:14,000 Lè Navigasyon entènèt la, ou ka gen remake ke kèk URL 79 00:05:14,000 --> 00:05:20,000 genyen yon? ki te swiv pa yon kòd ki gen ampersands ak siy egal-ego. 80 00:05:20,000 --> 00:05:23,000 Se pati sa a nan URL la li te ye tankou fisèl la rechèch, 81 00:05:23,000 --> 00:05:29,000 ak sa a pèmèt ou efektivman pase agiman script PHP ou. 82 00:05:29,000 --> 00:05:34,000 Fisèl la rechèch konsiste de valè kle pè, jis tankou yon tab hash. 83 00:05:34,000 --> 00:05:38,000 Yon egal siy separe yon kle ak valè korespondan li yo 84 00:05:38,000 --> 00:05:41,000 pandan y ap ampersands separe pè. 85 00:05:41,000 --> 00:06:05,000 Yon URL ki sanble ak http://localhost/get.php?foo=bar&baz=qux 86 00:06:05,000 --> 00:06:09,000 gen 2 kle valè pè nan fisèl la rechèch. 87 00:06:09,000 --> 00:06:12,000 Foo kle a kat nan bar la valè, 88 00:06:12,000 --> 00:06:16,000 ak Baz la kle kat qux nan valè. 89 00:06:16,000 --> 00:06:23,000 Nou ka byen fasil jwenn aksè nan sa yo valè kle pè lè l sèvi avèk yon varyab espesyal nan PHP, 90 00:06:23,000 --> 00:06:29,000 $ _GET. 91 00:06:29,000 --> 00:06:32,000 $ _GET Se yon etalaj asosyatif 92 00:06:32,000 --> 00:06:36,000 ki se otomatikman peple ak done rechèch fisèl. 93 00:06:36,000 --> 00:06:46,000 Sa vle di ke yo bay sa a URL $ _GET ["foo"] 94 00:06:46,000 --> 00:06:49,000 yo pral egal a ba la fisèl. 95 00:06:49,000 --> 00:06:56,000 >> Se pou nou pran yon gade nan get.php yo wè $ _GET an aksyon. 96 00:06:56,000 --> 00:07:00,000 Isit la nou ap itilize yon fonksyon rele var_dump, 97 00:07:00,000 --> 00:07:03,000 ki lè yo resevwa yon etalaj oswa lòt varyab 98 00:07:03,000 --> 00:07:05,000 pral enprime li soti pou nou. 99 00:07:05,000 --> 00:07:12,000 Koulye a, si nou tou senpleman jwenn aksè nan http://localhost/get.php 100 00:07:12,000 --> 00:07:17,000 Lè sa a, nou pral wè yon etalaj vid paske nou pa te bay yon fil rechèch. 101 00:07:17,000 --> 00:07:29,000 Si nou fè sa bay yon fisèl rechèch atravè http://localhost/get.php?foo=bar&baz=qux 102 00:07:29,000 --> 00:07:34,000 Lè sa a, nou ka wè ke varyab la $ _GET a pral gen 103 00:07:34,000 --> 00:07:37,000 valè kle pè fisèl la rechèch la. 104 00:07:37,000 --> 00:07:42,000 Men, sa ki si nou pa vle mete done nou an andedan URL la nan yon paj? 105 00:07:42,000 --> 00:07:46,000 Pou yon gwo kantite done, sa a kapab lakòz nan kèk URL trè lèd 106 00:07:46,000 --> 00:07:49,000 ke yo pwal fè klere nou gade sit entènèt moun k'ap bwete. 107 00:07:49,000 --> 00:07:52,000 Nou ka olye pou mete fisèl la rechèch nan kò a 108 00:07:52,000 --> 00:07:57,000 nan demann yo HTTP olye ke URL demann lan. 109 00:07:57,000 --> 00:08:02,000 Lè sa a, nou kapab itilize $ _POST varyab PHP a 110 00:08:02,000 --> 00:08:05,000 jwenn aksè nan valè kle pè yo. 111 00:08:05,000 --> 00:08:10,000 Youn nan fason yo fè sa a se via yon fòm HTML. 112 00:08:10,000 --> 00:08:13,000 Isit la nou gen yon fòm HTML senp. 113 00:08:13,000 --> 00:08:17,000 Avi isit la ke metòd atribi a nan fòm sa a se post. 114 00:08:17,000 --> 00:08:21,000 Sa a di navigatè a yo mete valè kle pè fòm lan nan 115 00:08:21,000 --> 00:08:25,000 nan kò a nan demann lan olye ke URL la. 116 00:08:25,000 --> 00:08:28,000 >> Si nou te sèvi ak valè a jwenn pou atribi sa a 117 00:08:28,000 --> 00:08:32,000 Lè sa a, valè kle pè fòm nan a ta olye pou ale nan fisèl la rechèch, 118 00:08:32,000 --> 00:08:36,000 Se konsa, nou te ka gen aksè yo atravè $ _GET ankò. 119 00:08:36,000 --> 00:08:42,000 Atribi nan aksyon nan fòm la di navigatè a kote yo voye done yo. 120 00:08:42,000 --> 00:08:46,000 Isit la eleman 2 D 'nou yo gen atribi Non. 121 00:08:46,000 --> 00:08:51,000 Valè a nan atribi ki Non pral sèvi kòm kle nan done nou an, 122 00:08:51,000 --> 00:08:56,000 ak valè yo nan entrain yo tèks yo ap vin valè nan kle sa yo. 123 00:08:56,000 --> 00:08:59,000 Koulye a, kite a pran yon gade nan post.php, 124 00:08:59,000 --> 00:09:03,000 dosye a ke fòm sa a se soumèt bay. 125 00:09:03,000 --> 00:09:10,000 Jis tankou nou te fè sa anvan, n ap tou senpleman montre sa ki nan varyab la $ _POST. 126 00:09:10,000 --> 00:09:18,000 >> Se pou yo navige nan fòm nan ak http://localhost/form.php. 127 00:09:18,000 --> 00:09:23,000 Koulye a, lè nou soumèt fòm lan nou ka wè ke done ki nan form.php 128 00:09:23,000 --> 00:09:30,000 se te pase nan post.php san yo pa ajou yon fil rechèch URL la. 129 00:09:30,000 --> 00:09:35,000 Koulye a, nou te wè 2 diferan fason pou pase done ant paj PHP, 130 00:09:35,000 --> 00:09:37,000 jwenn ak apre. 131 00:09:37,000 --> 00:09:41,000 Nan egzanp nou an, nou itilize 2 diferan kalite demann HTTP. 132 00:09:41,000 --> 00:09:45,000 Kòm ou ta ka atann, te yon demann jwenn itilize lè nou peple 133 00:09:45,000 --> 00:09:51,000 Te $ _GET soti nan URL la, ak yon demann pòs itilize 134 00:09:51,000 --> 00:09:55,000 lè nou peple $ _POST. 135 00:09:55,000 --> 00:09:59,000 Nan desine apps entènèt ou li nan yon règ bon nan gwo pous yo sèvi ak demann Pran 136 00:09:59,000 --> 00:10:03,000 lè app ou ap ap sèlman li done, ak demann pòs 137 00:10:03,000 --> 00:10:05,000 lè app ou a ap ekri done. 138 00:10:05,000 --> 00:10:09,000 Pou egzanp, yon rechèch rechèch ap li done ki sòti nan app ou a, 139 00:10:09,000 --> 00:10:12,000 Se konsa, yon demann Pran fè sans. 140 00:10:12,000 --> 00:10:17,000 Nan lòt men an, app ou a ap ekri done atravè yon bagay tankou yon fòm enskripsyon yo, 141 00:10:17,000 --> 00:10:22,000 Se konsa, yon demann pòs ta fè plis sans, e ke sa a yon BECA de kèk nan teknik yo 142 00:10:22,000 --> 00:10:26,000 nou pral dwe lè l sèvi avèk nan CS50 yo kreye sit entènèt lè l sèvi avèk PHP. 143 00:10:26,000 --> 00:10:30,000 >> Non mwen se Tommy, e sa se CS50. 144 00:10:30,000 --> 00:10:36,000 [CS50.TV]