[Powered by Google Translate] [PHP Web Development] [Tommy MacWilliam] [Tas ir CS50.] [CS50.TV] Šajā video, mēs uzzinātu par izmantojot PHP interneta attīstību. PHP ir skriptu valodas, ko var izmantot, lai īstenotu tīmekļa vietnes par web serveri. Web serveris ir būtībā mašīna paredzēta, lai sniegtu saturu kas var piekļūt, izmantojot internetu. Kad jūs virzītos uz mājas lapā, piemēram, Facebook.com / home.php kods failu sauc home.php kas dzīvo uz Facebook tīmekļa serveri kaut kur tiks izpildīts šajā serverī. Šis kods būs iespējams radīt kādu produkciju kas, savukārt, ir jānosūta no servera uz jūsu interneta pārlūku. Mēs būsim, izmantojot CS50 ierīci kā web serveri. Jūsu mašīna, iespējams, nebūs gandrīz tikpat spēcīgs kā mašīnas ar Facebook datu centrā, bet jums nav nekādu problēmu, izmantojot to par interneta attīstību. Kad mēs virzītos uz URL, piemēram http://localhost/hello.php mēs konfigurēt ierīci, izmantojot pieteikumu sauc Apache HTTP serveri meklēt failu sauc hello.php iekšpusē home / jharvard / vhosts / localhosts / html pēc noklusējuma. Ja šis fails eksistē, tad Apache izmantos PHP tulks izpildīt PHP kodu hello.php. Ja šis fails neeksistē, tad Apache būs mest nav atrasta kļūda vai 404 kļūdas, kas jūs esat, iespējams, redzējuši, pārlūkojot tīmekli. Pieņemsim apskatīt hello.php. Mēs redzam šeit, ka hello.php rada signāla līnijas produkciju. Kad mums bija hello.php pie komandrindas, izmantojot php hello.php ka produkcija bija iespiests uz terminālu. Tagad, kad mēs piekļūt šo failu, izmantojot URL interneta pārlūku tā produkcija tiks nosūtīta uz interneta pārlūku, tāpēc dodas uz URL, http://localhost/hello.php, mēs varam redzēt rezultātu mūsu interneta pārlūku. Mēģināsim pievienojot vēl printf mūsu Hello pasaulē programmā. Labi, pieņemsim, dodies atpakaļ uz interneta pārlūku, un redzēt, kas mums ir. Interesanti. Nevis drukas vēl vienu rindiņu savā rindā, kā jūs būtu redzējuši terminālā, izskatās, ka tas ieguva smushed uz vienas līnijas kā otra printf, tāpēc varbūt jaunu līniju nedarbojas PHP. Ne gluži. Atcerieties, ka HTML parasti izmanto, lai izveidotu interneta lapas , kas var parādīt, interneta pārlūkprogrammas. Ne tikai string sveiki no php nav derīgs HTML, bet atgādināt, ka mēs nevaram izmantot \ n rakstzīmi HTML izveidot rindiņas pārtraukumu. Tā vietā, lai vienkārši izvada string pieņemsim izejas derīga HTML. Izmantojot rindkopu atzīmes katrs mūsu printf zvaniem tiks parādīts savā rindā, tāpēc tagad, kad mēs apmeklēt URL, kas norāda uz valid.php http://localhost/valid.php mēs redzēt rezultātu, ka mēs meklējam. Tagad, ja mēs apskatīt avotu šīs lapas mēs varam redzēt, ka mēs šobrīd meklē derīgs HTML, kas mēs izveidojām no PHP. Liekot visiem mūsu HTML iekšā printf zvaniem ir, protams, notiek, lai iegūtu tiešām kaitinošas. Par laimi, mēs varam viegli samaisa HTML un PHP pats. php failu. Atcerieties, ka visi mūsu PHP kods ir ielikta . Jebkas, kas nav norobežota šajās atdalītājus vienkārši tiks nosūtīts kā izejas uz pārlūku nevis tiek izpildīts. Tas nozīmē, ka mēs varam darīt kaut kas līdzīgs šim. Mēs varam vienkārši rakstīt HTML iekšpusē mūsu. Php failu un pēc tam ievietot PHP blokus, kur mēs gribētu kādu php kodu, kas jāizpilda. Šeit mēs definējam daži mainīgie augšpusē failu, un vēlāk mēs izdrukāt tos iekšpusē mūsu HTML. Tagad, ja mēs apmeklēt šo URL, http://localhost/mixed.php mēs varam redzēt mūsu novērtēts PHP iekšpusē mūsu HTML. Tagad pieņemsim to apskatīt, kā mēs varam nodot datus starp mūsu dažādo PHP lapām. Nevis sakot mēs varam vienkārši pateikt . Pieņemsim tagad to apskatīt, kā mēs varam nodot datus starp mūsu dažādo PHP lapām. Viens veids, kā mēs varam darīt, ir, lai kodētu informāciju uz URL lapā. , Pārlūkojot Web, jums var būt ievērojuši, ka daži URL satur? kam seko virkni, kas satur ampersands un vienādas pazīmes. Tas ir daļa no URL ir pazīstams kā vaicājuma virknes, un tas ļauj efektīvi nodot argumentus savu PHP skriptu. Vaicājuma virknes veido galveno vērtību pārus, tāpat kā hash tabulā. Vienādības zīmi atdala atslēgu un atbilstošo vērtību bet ampersands atsevišķi pāriem. URL, kas izskatās http://localhost/get.php?foo=bar&baz=qux ir 2 galvenie vērtību pārus vaicājuma virknes. Galvenais foo kartes ar vērtību joslā, un galvenais, baz kartes ar vērtību qux. Mēs varam viegli piekļūt šiem atslēgas vērtību pārus, izmantojot speciālu mainīgais PHP, $ _GET. $ _GET Ir asociatīvā masīva kas tiek automātiski apdzīvots ar vaicājuma virknes datiem. Tas nozīmē, ka, ņemot vērā šo URL $ _GET ["foo"] būs vienāda ar virknes bar. Pieņemsim to apskatīt get.php redzēt $ _GET darbībā. Šeit mēs esam, izmantojot funkciju sauc var_dump, kas, ņemot vērā masīvs vai citu mainīgo drukāt to no mums. Tagad, ja mēs vienkārši piekļūt http://localhost/get.php Tad mēs redzēsim tukšu masīvu, jo mums nav sniegušas vaicājuma virknes. Ja mēs piedāvājam vaicājuma virknes, izmantojot http://localhost/get.php?foo=bar&baz=qux tad mēs varam redzēt, ka $ _GET mainīgais saturēs vaicājuma virknes galvenos vērtību pārus. Bet kas notiks, ja mēs negribam, lai mūsu datu iekšpusē URL lapas? Attiecībā uz lielu datu apjomu, tas var radīt dažas diezgan neglīts URL kas gatavojas, lai padarītu mūsu spīdīgu mājas lapā izskatās klibs. Mēs varam tā vietā likt vaicājuma virknes organismā no HTTP pieprasījumus, nevis pieprasījuma URL. Tad mēs varam izmantot PHP $ _POST mainīgo Lai piekļūtu atslēgas vērtību pārus. Viens veids, kā to izdarīt, ir caur HTML formu. Šeit mums ir vienkāršs HTML formu. Ievērojiet, šeit, ka metode atribūts šajā veidlapā, ir post. Šī stāsta pārlūku likt formā galvenos vērtību pārus uz ķermeņa pieprasījuma, nevis URL. Ja mēs būtu izmantot vērtību iegūt šo raksturlielumu Tad formā galvenās vērtību pārus tā vietā doties uz vaicājuma virknes, lai mēs varētu tiem piekļūt caur $ _GET vēlreiz. Darbība atribūts veidā stāsta pārlūku, kur sūtīt datus. Te mūsu 2 ieejas elementa nosaukumu atribūtus. Nosaukuma atribūtiem vērtība kalpos kā atslēgas mūsu datiem, un vērtības teksta ievades kļūs vērtības šiem taustiņiem. Tagad pieņemsim apskatīt post.php, fails, kas šo veidlapu iesniegšanai. Tāpat kā mēs to darījām agrāk, mēs vienkārši attēlot saturu $ _POST mainīgo. Pieņemsim virzītos formu ar http://localhost/form.php. Tagad, kad mēs iesniegt veidlapu, mēs varam redzēt, ka dati no form.php tiek nodota post.php bez pievienojot vaicājuma virknes URL. Tagad mēs esam redzējuši 2 dažādus veidus, kā iet datus starp PHP lapām, saņemt un pēc. Mūsu piemēri, mēs izmantojām 2 dažādu veidu HTTP pieprasījumus. Kā jūs varētu gaidīt, get pieprasījums tika izmantots, kad mēs apdzīvots Tika izmantots $ _GET no URL, un pēc pieprasījuma kad mēs apdzīvots $ _POST. Projektēšana jūsu tīmekļa lietojumprogrammas, tas ir labs noteikums īkšķis, lai izmantotu GET pieprasījumu kad jūsu app tikai nolasīt datus, un pēc pieprasījumi kad jūsu app būs rakstīt datus. Piemēram, meklēšanas vaicājums nolasīt datus no jūsu app, tāpēc get pieprasījumu jēga. No otras puses, jūsu app rakstīt datus, izmantojot kaut ko līdzīgu reģistrācijas veidlapu, tā pēc pieprasījuma būtu daudz lietderīgāk, un tas ir pārskats par dažiem paņēmieniem mēs būsim lietot CS50, lai izveidotu mājas lapas, izmantojot PHP. Mans vārds ir Tommy, un tas ir CS50. [CS50.TV]