[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 <? Php
ja?>.
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: <? Php print ($ a);?>
saame lihtsalt öelda <? = muutuja tahaksime printida, või,
ja?>.
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]