[Powered by Google Translate] [PHP Web Development] [Tommy MacWilliam] [See on CS50.] [CS50.TV] Selles videos, me õppida, kuidas kasutada PHP veebiarendust. PHP on skriptikeelt, mida saab kasutada, et rakendada veebilehed veebiserver. Web server on sisuliselt masin pühendunud sisu , mida saab interneti kaudu kättesaadav. Kui te navigeerida veebilehe nagu Facebook.com / home.php koodi faili nimega home.php mis elab Facebook web server kusagil viiakse ellu, et server. See kood on tõenäoliselt tekitada teatud väljund mis omakorda saadetakse serverist Teie veebibrauser. Me kasutame CS50 seade nagu web server. Teie masin ilmselt ei ole kaugeltki nii võimas kui masinad in Facebook andmekeskuse, kuid teil ei ole probleemi kasutades seda veebi arengut. Kui me navigeerida URL nagu http://localhost/hello.php me seadistada seadme kaudu rakendus nimega Apache HTTP server otsida faili nimega hello.php sees home / jharvard / vhosts / localhosts / html vaikimisi. Kui see fail on olemas, siis Apache kasutab PHP tõlk käivitada PHP koodi hello.php. Kui seda faili ei eksisteeri, siis Apache viskavad ei leitud viga või 404 viga, mis te olete ilmselt näinud sirvimisel Web. Võtame pilk hello.php. Me näeme siin, et hello.php tekitab signaali line väljundeid. Kui me jooksis hello.php mida käsurea kaudu php hello.php et toodang oli trükitud terminali. Nüüd, kui me kasutada seda faili URL-i kaudu veebibrauseri tema toodang saadetakse veebibrauseri nii pealkirja URL, http://localhost/hello.php, näeme väljund meie veebibrauser. Proovime lisades teise printf meie programmi Hello World. Olgu, mine tagasi veebibrauser ja vaata, mis meil on. Huvitav. Printimise asemel teine ​​rida on oma rida, nagu sa oleks näinud terminal, tundub, et see sai smushed peale sama rida kui muud printf, et äkki uus rida ei tööta PHP. Mitte päris. Pea meeles, et HTML on tavaliselt kasutatakse, et luua veebilehti mis saab kuvada brausereid. Mitte ainult string tere php ei kehti HTML, aga meelde tuletada, et me ei saa kasutada \ n märk HTML luua rida murda. Selle asemel, et lihtsalt kirjutamine string olgem väljund kehtiv HTML. Kasutades lõikes tags iga meie printf kõned kuvatakse eraldi real, Nüüd, kui me külastada URL osutades valid.php http://localhost/valid.php näeme väljund, et me otsime. Nüüd, kui me vaatame selle lehekülje lähteteksti näeme, et me nüüd vaadates kehtiv HTML, mis me loodud PHP. Haara kõik meie HTML sees printf kõned on muidugi hakka tõesti tüütu. Õnneks saab hõlpsasti segada HTML ja PHP aastal sama. php faili. Pea meeles, et kõik meie PHP kood tuleb ümbritsetud . Midagi, mis ei ole ümbritsetud neid piirajaid lihtsalt saadetakse väljundi brauserisse selle asemel, et täita. See tähendab, et me saame teha midagi sellist. Me võime lihtsalt kirjutada HTML sees meie. Php faili ja seejärel lisada PHP plokkide kus me tahaksime mõned php koodi, mis tuleb täita. Siin me defineerime mõned muutujad ülaosas faili ja hiljem me printida sees meie HTML. Nüüd, kui me külastada seda URL, http://localhost/mixed.php näeme meie hinnatud PHP sees meie HTML. Nüüd vaatleme, kuidas me saame edasi andmed hulgast meie erinevate PHP lehekülgi. Selle asemel, et öelda: saame lihtsalt öelda . Oletame nüüd, kui heita pilk kuidas me saame edasi andmed hulgast meie erinevate PHP lehekülgi. Üks viis, kuidas me saame teha, et on kodeerida teavet arvesse URL lehekülg. Kui veebi sirvimise, olete ehk märganud, et mõned URLid sisaldada? järgneb sisaldav string sümboliga ja võrdusmärki. See osa URL nimetatakse stringi, ning see võimaldab teil tõhusalt edasi argumendid oma PHP skripti. Stringi koosneb põhiväärtus paari, nagu hash tabel. Võrdusmärk eraldab võtme ja väärtusega kui sümboliga eraldi paari. URL, mis näeb http://localhost/get.php?foo=bar&baz=qux on 2 põhiväärtus paari stringi. Võti foo kaartide väärtus baar, ja võti baz kaartide väärtus qux. Meil on lihtne juurdepääs nende põhiväärtus paari kasutades spetsiaalset muutuja PHP, $ _GET. $ _GET On assotsiatiivne massiiv mis on automaatselt asustatud Päringustringi. See tähendab, et antud see URL $ _GET ["foo"] võrdub string bar. Võtame pilk get.php näha $ _GET in action. Siin me kasutame funktsiooni nimetatakse var_dump, mis siis, kui antud massiiv või muu muutuja trükib välja meile. Nüüd, kui me lihtsalt pääseda http://localhost/get.php siis me näeme tühja massiivi, sest me ei ole esitanud päringu string. Kui me seda pakkuda stringi kaudu http://localhost/get.php?foo=bar&baz=qux siis näeme, et $ _GET muutuja sisaldab stringi peamine väärtus paare. Aga mis siis, kui me ei taha panna oma andmed sees URL lehele? Suurte andmemahtude, võib see kaasa tuua päris kole Aadressid et ei kavatse teha meie läikiv veebilehte vaata lame. Me saame selle asemel panna stringi kehasse HTTP taotlusi, mitte taotluse URL. Siis saame kasutada PHP $ _POST muutuja pääseda põhiväärtus paari. Üks viis seda teha on läbi HTML vormi. Siin on meil lihtne HTML kujul. Pange tähele siin, et meetod atribuut see vorm on post. See ütleb, et brauser pane vormi põhiväärtus paarid kehasse taotluse asemel URL. Kui me kasutame raha saada selle omaduse siis vormi peamine väärtus paare oleks hoopis minna stringi, et me saaksime neile pääseb $ _GET uuesti. Tegevuse atribuut kujul ütleb brauser kus andmete saatmiseks. Siin meie 2 input elemente on nimi atribuudid. Väärtus nimi atribuudid toimib võtmed meie andmed, ja väärtused teksti sisendid muutuvad väärtused võtmeid. Nüüd võtame pilk post.php, fail, mis sellisel kujul on esitades. Just nagu me tegime enne, me lihtsalt väljapanek sisu $ _POST muutuja. Olgem navigeerida vormi http://localhost/form.php. Nüüd, kui me esitada kujul näeme, et andmeid vormis.PHP edastatakse post.php ilma kleebi päringu stringi URL. Nüüd oleme näinud 2 erinevalt läbimise andmete vahel PHP lehekülgi, saada ja saata. Meie näidetes kasutasime 2 erinevat tüüpi HTTP päringuid. Nagu te võite arvata, get kasutati taotluses kui me asustatud $ _GET Alates URL, ja post kasutati taotluses kui me asustatud $ _POST. Kavandamisel oma web apps see on hea rusikareegel kasutada GET nõudmised kui teie app on ainult andmete lugemiseks, ja pärast vaatamist kui teie app kirjutada andmeid. Näiteks päringuga loeb andmeid oma app, nii GET päringu mõtet. Teiselt poolt, teie app kirjutan kaudu andmete midagi registreerimisvorm, nii pärast taotluse oleks mõttekam, ja see on ülevaade mõned tehnikad saadame kasutades CS50 luua veebisaite kasutades PHP. Minu nimi on Tommy, ja see on CS50. [CS50.TV]